Giter VIP home page Giter VIP logo

screen-translate's Introduction

Hello There ヾ( ̄ ▽  ̄)

welcome-gif

Github metrics

💬 About Me

  • Hi 👋🏻, my name is Dadangdut33 Fauzan
  • I'm a fresh graduate 🎓 with a degree in Informatics Engineering from UIN Jakarta
  • I like games, anime, and stuff but I also like to code 💻 on my free time
  • Feel free to checkout my projects and contribute if you want to ^^
  • Check 👉🏻this out to see what i'm currently working on (when i'm not busy with other stuff)


📡 Find Me On

Fauzan Farhan Antoro | LinkedIn Dadangdut33 | Ko-Fi

🔧 Tools / Language

Visual Studio Code Windows Prettier Firefox Google Chrome Python nodejs javascript TypeScript React Next JS expressjs django Tk/Tcl Electron.js Vercel mysql SQLite mongodb CSS3 C C++ Java php


📊 Github Stats

Dadangdut33's Most Used Language

Dadangdut33's GitHub stats

Wakatime


⚡ Recent GitHub Activity
  1. ⭐ Starred github/gitignore
  2. ⭐ Starred gitattributes/gitattributes
  3. ⭐ Starred TypeCellOS/BlockNote
  4. 🎉 Merged PR #1 in Dadangdut33/Personal-Web-Backend
  5. 💪 Opened PR #1 in Dadangdut33/Personal-Web-Backend
  6. ⭐ Starred prisma/prisma
  7. ⭐ Starred lucia-auth/lucia
  8. ⭐ Starred steven-tey/novel
  9. ⭐ Starred nicoalbanese/kirimase
  10. ⭐ Starred red-prig/fpPS4

screen-translate's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

screen-translate's Issues

[REQ] Many langauges are missing from MyMemory Translator language selection

Is your feature request related to a problem? Please describe.
Santali and many more languages are missing from the language selection bar.

Describe the solution you'd like
Add a list of languages from the below list which I have updated for Mymemory:
The updated list of languages supported by Mymemory is as follows:

MY_MEMORY_LANGUAGES = {
    "acehnese": "ace-ID",
    "afrikaans": "af-ZA",
    "akan": "ak-GH",
    "albanian": "sq-AL",
    "amharic": "am-ET",
    "antigua and barbuda creole english": "aig-AG",
    "arabic": "ar-SA",
    "arabic egyptian": "ar-EG",
    "aragonese": "an-ES",
    "armenian": "hy-AM",
    "assamese": "as-IN",
    "asturian": "ast-ES",
    "austrian german": "de-AT",
    "awadhi": "awa-IN",
    "ayacucho quechua": "quy-PE",
    "azerbaijani": "az-AZ",
    "bahamas creole english": "bah-BS",
    "bajan": "bjs-BB",
    "balinese": "ban-ID",
    "balkan gipsy": "rm-RO",
    "bambara": "bm-ML",
    "banjar": "bjn-ID",
    "bashkir": "ba-RU",
    "basque": "eu-ES",
    "belarusian": "be-BY",
    "belgian french": "fr-BE",
    "bemba": "bem-ZM",
    "bengali": "bn-IN",
    "bhojpuri": "bho-IN",
    "bihari": "bh-IN",
    "bislama": "bi-VU",
    "borana": "gax-KE",
    "bosnian": "bs-BA",
    "bosnian (cyrillic)": "bs-Cyrl-BA",
    "breton": "br-FR",
    "buginese": "bug-ID",
    "bulgarian": "bg-BG",
    "burmese": "my-MM",
    "catalan": "ca-ES",
    "catalan valencian": "cav-ES",
    "cebuano": "ceb-PH",
    "central atlas tamazight": "tzm-MA",
    "central aymara": "ayr-BO",
    "central kanuri (latin script)": "knc-NG",
    "chadian arabic": "shu-TD",
    "chamorro": "ch-GU",
    "cherokee": "chr-US",
    "chhattisgarhi": "hne-IN",
    "chinese simplified": "zh-CN",
    "chinese trad. (hong kong)": "zh-HK",
    "chinese traditional": "zh-TW",
    "chinese traditional macau": "zh-MO",
    "chittagonian": "ctg-BD",
    "chokwe": "cjk-AO",
    "classical greek": "grc-GR",
    "comorian ngazidja": "zdj-KM",
    "coptic": "cop-EG",
    "crimean tatar": "crh-RU",
    "crioulo upper guinea": "pov-GW",
    "croatian": "hr-HR",
    "czech": "cs-CZ",
    "danish": "da-DK",
    "dari": "prs-AF",
    "dimli": "diq-TR",
    "dutch": "nl-NL",
    "dyula": "dyu-CI",
    "dzongkha": "dz-BT",
    "eastern yiddish": "ydd-US",
    "emakhuwa": "vmw-MZ",
    "english": "en-GB",
    "english australia": "en-AU",
    "english canada": "en-CA",
    "english india": "en-IN",
    "english ireland": "en-IE",
    "english new zealand": "en-NZ",
    "english singapore": "en-SG",
    "english south africa": "en-ZA",
    "english us": "en-US",
    "esperanto": "eo-EU",
    "estonian": "et-EE",
    "ewe": "ee-GH",
    "fanagalo": "fn-FNG",
    "faroese": "fo-FO",
    "fijian": "fj-FJ",
    "filipino": "fil-PH",
    "finnish": "fi-FI",
    "flemish": "nl-BE",
    "fon": "fon-BJ",
    "french": "fr-FR",
    "french canada": "fr-CA",
    "french swiss": "fr-CH",
    "friulian": "fur-IT",
    "fula": "ff-FUL",
    "galician": "gl-ES",
    "gamargu": "mfi-NG",
    "garo": "grt-IN",
    "georgian": "ka-GE",
    "german": "de-DE",
    "gilbertese": "gil-KI",
    "glavda": "glw-NG",
    "greek": "el-GR",
    "grenadian creole english": "gcl-GD",
    "guarani": "gn-PY",
    "gujarati": "gu-IN",
    "guyanese creole english": "gyn-GY",
    "haitian creole french": "ht-HT",
    "halh mongolian": "khk-MN",
    "hausa": "ha-NE",
    "hawaiian": "haw-US",
    "hebrew": "he-IL",
    "higi": "hig-NG",
    "hiligaynon": "hil-PH",
    "hill mari": "mrj-RU",
    "hindi": "hi-IN",
    "hmong": "hmn-CN",
    "hungarian": "hu-HU",
    "icelandic": "is-IS",
    "igbo ibo": "ibo-NG",
    "igbo ig": "ig-NG",
    "ilocano": "ilo-PH",
    "indonesian": "id-ID",
    "inuktitut greenlandic": "kl-GL",
    "irish gaelic": "ga-IE",
    "italian": "it-IT",
    "italian swiss": "it-CH",
    "jamaican creole english": "jam-JM",
    "japanese": "ja-JP",
    "javanese": "jv-ID",
    "jingpho": "kac-MM",
    "k'iche'": "quc-GT",
    "kabiyè": "kbp-TG",
    "kabuverdianu": "kea-CV",
    "kabylian": "kab-DZ",
    "kalenjin": "kln-KE",
    "kamba": "kam-KE",
    "kannada": "kn-IN",
    "kanuri": "kr-KAU",
    "karen": "kar-MM",
    "kashmiri (devanagari script)": "ks-IN",
    "kashmiri (arabic script)": "kas-IN",
    "kazakh": "kk-KZ",
    "khasi": "kha-IN",
    "khmer": "km-KH",
    "kikuyu kik": "kik-KE",
    "kikuyu ki": "ki-KE",
    "kimbundu": "kmb-AO",
    "kinyarwanda": "rw-RW",
    "kirundi": "rn-BI",
    "kisii": "guz-KE",
    "kongo": "kg-CG",
    "konkani": "kok-IN",
    "korean": "ko-KR",
    "northern kurdish": "kmr-TR",
    "kurdish sorani": "ckb-IQ",
    "kyrgyz": "ky-KG",
    "lao": "lo-LA",
    "latgalian": "ltg-LV",
    "latin": "la-XN",
    "latvian": "lv-LV",
    "ligurian": "lij-IT",
    "limburgish": "li-NL",
    "lingala": "ln-LIN",
    "lithuanian": "lt-LT",
    "lombard": "lmo-IT",
    "luba-kasai": "lua-CD",
    "luganda": "lg-UG",
    "luhya": "luy-KE",
    "luo": "luo-KE",
    "luxembourgish": "lb-LU",
    "maa": "mas-KE",
    "macedonian": "mk-MK",
    "magahi": "mag-IN",
    "maithili": "mai-IN",
    "malagasy": "mg-MG",
    "malay": "ms-MY",
    "malayalam": "ml-IN",
    "maldivian": "dv-MV",
    "maltese": "mt-MT",
    "mandara": "mfi-CM",
    "manipuri": "mni-IN",
    "manx gaelic": "gv-IM",
    "maori": "mi-NZ",
    "marathi": "mr-IN",
    "margi": "mrt-NG",
    "mari": "mhr-RU",
    "marshallese": "mh-MH",
    "mende": "men-SL",
    "meru": "mer-KE",
    "mijikenda": "nyf-KE",
    "minangkabau": "min-ID",
    "mizo": "lus-IN",
    "mongolian": "mn-MN",
    "montenegrin": "sr-ME",
    "morisyen": "mfe-MU",
    "moroccan arabic": "ar-MA",
    "mossi": "mos-BF",
    "ndau": "ndc-MZ",
    "ndebele": "nr-ZA",
    "nepali": "ne-NP",
    "nigerian fulfulde": "fuv-NG",
    "niuean": "niu-NU",
    "north azerbaijani": "azj-AZ",
    "sesotho": "nso-ZA",
    "northern uzbek": "uzn-UZ",
    "norwegian bokmål": "nb-NO",
    "norwegian nynorsk": "nn-NO",
    "nuer": "nus-SS",
    "nyanja": "ny-MW",
    "occitan": "oc-FR",
    "occitan aran": "oc-ES",
    "odia": "or-IN",
    "oriya": "ory-IN",
    "urdu": "ur-PK",
    "palauan": "pau-PW",
    "pali": "pi-IN",
    "pangasinan": "pag-PH",
    "papiamentu": "pap-CW",
    "pashto": "ps-PK",
    "persian": "fa-IR",
    "pijin": "pis-SB",
    "plateau malagasy": "plt-MG",
    "polish": "pl-PL",
    "portuguese": "pt-PT",
    "portuguese brazil": "pt-BR",
    "potawatomi": "pot-US",
    "punjabi": "pa-IN",
    "punjabi (pakistan)": "pnb-PK",
    "quechua": "qu-PE",
    "rohingya": "rhg-MM",
    "rohingyalish": "rhl-MM",
    "romanian": "ro-RO",
    "romansh": "roh-CH",
    "rundi": "run-BI",
    "russian": "ru-RU",
    "saint lucian creole french": "acf-LC",
    "samoan": "sm-WS",
    "sango": "sg-CF",
    "sanskrit": "sa-IN",
    "santali": "sat-IN",
    "sardinian": "sc-IT",
    "scots gaelic": "gd-GB",
    "sena": "seh-ZW",
    "serbian cyrillic": "sr-Cyrl-RS",
    "serbian latin": "sr-Latn-RS",
    "seselwa creole french": "crs-SC",
    "setswana (south africa)": "tn-ZA",
    "shan": "shn-MM",
    "shona": "sn-ZW",
    "sicilian": "scn-IT",
    "silesian": "szl-PL",
    "sindhi snd": "snd-PK",
    "sindhi sd": "sd-PK",
    "sinhala": "si-LK",
    "slovak": "sk-SK",
    "slovenian": "sl-SI",
    "somali": "so-SO",
    "sotho southern": "st-LS",
    "south azerbaijani": "azb-AZ",
    "southern pashto": "pbt-PK",
    "southwestern dinka": "dik-SS",
    "spanish": "es-ES",
    "spanish argentina": "es-AR",
    "spanish colombia": "es-CO",
    "spanish latin america": "es-419",
    "spanish mexico": "es-MX",
    "spanish united states": "es-US",
    "sranan tongo": "srn-SR",
    "standard latvian": "lvs-LV",
    "standard malay": "zsm-MY",
    "sundanese": "su-ID",
    "swahili": "sw-KE",
    "swati": "ss-SZ",
    "swedish": "sv-SE",
    "swiss german": "de-CH",
    "syriac (aramaic)": "syc-TR",
    "tagalog": "tl-PH",
    "tahitian": "ty-PF",
    "tajik": "tg-TJ",
    "tamashek (tuareg)": "tmh-DZ",
    "tamasheq": "taq-ML",
    "tamil india": "ta-IN",
    "tamil sri lanka": "ta-LK",
    "taroko": "trv-TW",
    "tatar": "tt-RU",
    "telugu": "te-IN",
    "tetum": "tet-TL",
    "thai": "th-TH",
    "tibetan": "bo-CN",
    "tigrinya": "ti-ET",
    "tok pisin": "tpi-PG",
    "tokelauan": "tkl-TK",
    "tongan": "to-TO",
    "tosk albanian": "als-AL",
    "tsonga": "ts-ZA",
    "tswa": "tsc-MZ",
    "tswana": "tn-BW",
    "tumbuka": "tum-MW",
    "turkish": "tr-TR",
    "turkmen": "tk-TM",
    "tuvaluan": "tvl-TV",
    "twi": "tw-GH",
    "udmurt": "udm-RU",
    "ukrainian": "uk-UA",
    "uma": "ppk-ID",
    "umbundu": "umb-AO",
    "uyghur uig": "uig-CN",
    "uyghur ug": "ug-CN",
    "uzbek": "uz-UZ",
    "venetian": "vec-IT",
    "vietnamese": "vi-VN",
    "vincentian creole english": "svc-VC",
    "virgin islands creole english": "vic-US",
    "wallisian": "wls-WF",
    "waray (philippines)": "war-PH",
    "welsh": "cy-GB",
    "west central oromo": "gaz-ET",
    "western persian": "pes-IR",
    "wolof": "wo-SN",
    "xhosa": "xh-ZA",
    "yiddish": "yi-YD",
    "yoruba": "yo-NG",
    "zulu": "zu-ZA",
}

Describe alternatives you've considered

Additional context

Snipping

Thank you for making this program. However, I have an issue where I can't seem to get snipping to work.

I have tried using the capture window and mask window, but whenever I click snip & translate, nothing changes. The log says

2023-07-21 01:14:35,702 INFO - Passed param check! (Main.py:705) [MainThread]
2023-07-21 01:14:35,702 INFO - Capturing full screen... (Capture.py:188) [MainThread]
2023-07-21 01:14:35,776 INFO - Captured full screen! (Capture.py:192) [MainThread]
2023-07-21 01:14:35,777 INFO - Snipped mode entered! Loading image... (Capture_Snip.py:115) [MainThread]
2023-07-21 01:14:35,878 INFO - Image loaded to canvas (Capture_Snip.py:119) [MainThread]
2023-07-21 01:14:48,662 INFO - Checking params... (Main.py:676) [MainThread]

but nothing happens. Left clicking does nothing. I try to right click on the capture/mask window, but it only brings up the settings.

i have an idea

hfg

pretty good results.
so my idea is you can create an extra window. and darken the surroundings. to see the text better and the "Text Capture Area" will work better and the "Text Capture Area" window must be overlaid on the new window to darken the surroundings to work properly.
hfg12
I darkened the "Text Capture Area" and used "Capture Area Settings" to translate and got the exact same result as the picture above.

Can you add more OCR engines to your software?

Untitled
This dialogue with black border translates very accuratel
Untitled1
y
or the dark scene, the translation is also very accurat
Untitled 2
e
but the light scene cannot be translated.
Can you solve this problem?
Why does the software not work when the scene is bright?

thank you very much

thank you very much . The software is considered complete.
I'm so grateful for your hard work to create great software like this.
And this is also the last version you updated?

Dark/light theme

Would be nice to have a dark/light theme using this. This would also probably make the theme consistent across os version.

refactor the code

The code here is somewhat messy actually

Would be a great idea to refactor the code and add some feature improvement

[BUG] OCR result length 0 ?

Describe the bug
Capture & Translate does not work. I have installed the tesseract library, selected it in screen translate and added all languages from this repository https://github.com/tesseract-ocr/tessdata_best

It seems it cant find anything.

To Reproduce
Steps to reproduce the behavior:

  1. Open up ScreenTranslate
  2. Generate Capture window
  3. Position window over the example image
  4. Press capture & translate
  5. Nothing is being translated

Expected behavior
Translation should be visible

Screenshots
ScreenTranslate_2023-03-21_181743

Desktop (please complete the following information):

  • OS: win 11
  • Python Version: using portable screen translate

Additional context

2023-03-21 18:17:35,987 INFO    - --- Welcome to Screen Translate --- (Main.py:41) [MainThread]
2023-03-21 18:17:35,988 INFO    - Use The GUI Window to start capturing and translating (Main.py:42) [MainThread]
2023-03-21 18:17:35,988 INFO    - You can minimize this window (Main.py:43) [MainThread]
2023-03-21 18:17:35,988 INFO    - This window is for debugging purposes (Main.py:44) [MainThread]
2023-03-21 18:17:36,100 DEBUG   - Available Theme to use: ['vista', 'sv-light', 'sv-dark'] (Main.py:184) [MainThread]
2023-03-21 18:17:36,100 DEBUG   - Setting theme: sv-dark (Style.py:27) [MainThread]
2023-03-21 18:17:36,124 DEBUG   - Setting custom dark theme style (Style.py:50) [MainThread]
2023-03-21 18:17:36,281 INFO    - Checking if run from startup... (Main.py:407) [MainThread]
2023-03-21 18:17:36,284 DEBUG   - ['C:\\Users\\Admin\\Desktop\\ScreenTranslate 2.1.1-C\\ScreenTranslate.exe'] (Main.py:408) [MainThread]
2023-03-21 18:17:36,757 INFO    - Monitor Info: {'totalX': 3840, 'totalY': 1600, 'primaryIn': 0, 'mData': [Monitor(x=0, y=0, width=3840, height=1600, width_mm=879, height_mm=366, name='\\\\.\\DISPLAY1', is_primary=True)], 'layoutType': 'horizontal'} (Monitor.py:56) [MainThread]
2023-03-21 18:17:36,758 INFO    - Settings loaded to setting UI (Settings.py:1067) [MainThread]
2023-03-21 18:17:36,795 INFO    - Checking for update on start (About.py:114) [MainThread]
2023-03-21 18:17:36,796 INFO    - Checking for update... (About.py:141) [MainThread]
2023-03-21 18:17:37,028 INFO    - No update available (About.py:162) [Thread-6 (req_update_check)]
2023-03-21 18:17:43,522 INFO    - Checking params... (Main.py:676) [MainThread]
2023-03-21 18:17:43,522 DEBUG   - engine: Google Translate | source: Japanese | to: English (Main.py:677) [MainThread]
2023-03-21 18:17:43,522 INFO    - Passed param check! (Main.py:705) [MainThread]
2023-03-21 18:17:43,571 INFO    - Performing OTSU threshold... (Capture.py:94) [MainThread]
2023-03-21 18:17:43,572 INFO    - Creating structuring element... (Capture.py:102) [MainThread]
2023-03-21 18:17:43,572 INFO    - Applying dilation on the threshold image... (Capture.py:106) [MainThread]
2023-03-21 18:17:44,036 INFO    - OCR success! (Capture.py:163) [MainThread]
2023-03-21 18:17:44,036 INFO    - Result length 0 (Capture.py:164) [MainThread]
2023-03-21 18:17:44,039 INFO    - Copied captured text to clipboard! (Capture.py:168) [MainThread]
2023-03-21 18:17:44,040 INFO    - -------------------------------------------------- (Translate.py:21) [Thread-13 (translate)]
2023-03-21 18:17:44,040 INFO    - Translate (Translate.py:22) [Thread-13 (translate)]
2023-03-21 18:17:44,040 INFO    - Length: 0 -> 0 (stripped) | from Japanese to English using Google Translate (Translate.py:23) [Thread-13 (translate)]
2023-03-21 18:17:44,040 WARNING - No text to translate! (Translate.py:27) [Thread-13 (translate)]

[REQ] Adding more machine translation alternatives

Is your feature request related to a problem? Please describe.
Machine translation for many low-resource languages is not possible with existing engines, as they do not support machine translation. However, adding these engines would allow people to use translation in their own languages.

Describe the solution you'd like
Adding these machine translation alternatives will increase the number of languages supported for machine translation up to 200, including low-resource languages such as Santali and Luganda etc. These online hosted machine translation service providers use NLLB (both Glosbe and MinT) and MarianNMT (only Glosbe) models.

Add more machine translation alternatives:

  1. https://translate.glosbe.com (Glosbe Translate hosted by Glosbe)
  2. https://translate.wmcloud.org/ (MinT Machine translation hosted by Wikimedia Foundation) - API spec (https://translate.wmcloud.org/api/spec)
  3. Mymemory Translator, Api Usage (Uses millions of TM).
  4. https://www.modernmt.com/translate/ (ModernMT translate).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.