{"id":13825533,"url":"https://github.com/Dadangdut33/Screen-Translate","last_synced_at":"2025-07-08T22:31:28.560Z","repository":{"id":45483917,"uuid":"400827943","full_name":"Dadangdut33/Screen-Translate","owner":"Dadangdut33","description":"A Screen Translator/OCR Translator made by using Python and Tesseract, the user interface are made using Tkinter. All code written in python.","archived":false,"fork":false,"pushed_at":"2024-02-19T08:01:40.000Z","size":95711,"stargazers_count":115,"open_issues_count":4,"forks_count":15,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-11-18T14:20:33.661Z","etag":null,"topics":["ocr","opencv-python","python","tesseract-ocr","tkinter","translate"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dadangdut33.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"dadangdut33","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2021-08-28T15:35:13.000Z","updated_at":"2024-11-18T08:13:49.000Z","dependencies_parsed_at":"2023-02-15T13:01:39.506Z","dependency_job_id":null,"html_url":"https://github.com/Dadangdut33/Screen-Translate","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dadangdut33%2FScreen-Translate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dadangdut33%2FScreen-Translate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dadangdut33%2FScreen-Translate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dadangdut33%2FScreen-Translate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dadangdut33","download_url":"https://codeload.github.com/Dadangdut33/Screen-Translate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225470631,"owners_count":17479366,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ocr","opencv-python","python","tesseract-ocr","tkinter","translate"],"created_at":"2024-08-04T09:01:22.900Z","updated_at":"2024-11-20T04:30:32.139Z","avatar_url":"https://github.com/Dadangdut33.png","language":"Python","readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://raw.github.com/Dadangdut33/Screen-Translate/main/assets/logo.png\" width=\"250px\" alt=\"Screen Translate Logo\"\u003e\n\u003c/p\u003e\n\n\u003ch1 align=\"center\"\u003e Screen Translate - An Easy to Use OCR Translator \u003c/h1\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/issues\"\u003e\u003cimg alt=\"GitHub issues\" src=\"https://img.shields.io/github/issues/Dadangdut33/Screen-Translate\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/pulls\"\u003e\u003cimg alt=\"GitHub pull requests\" src=\"https://img.shields.io/github/issues-pr/Dadangdut33/Screen-Translate\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/releases/latest\"\u003e\u003cimg alt=\"github downloads\"  src=\"https://img.shields.io/github/downloads/Dadangdut33/Screen-Translate/total?label=downloads (github)\"\u003e\u003c/a\u003e\u003ca href=\"https://sourceforge.net/projects/screen-translate/files/latest/download\"\u003e\u003cimg alt=\"sourceforge downloads\" src=\"https://img.shields.io/sourceforge/dt/screen-translate.svg?label=downloads (sourceforge)\"\u003e\u003c/a\u003e \u003cbr\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/releases/latest\"\u003e\u003cimg alt=\"GitHub release (latest SemVer)\" src=\"https://img.shields.io/github/v/release/Dadangdut33/Screen-Translate\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/commits/main\"\u003e\u003cimg alt=\"GitHub commits since latest release (by date)\" src=\"https://img.shields.io/github/commits-since/Dadangdut33/Screen-Translate/latest\"\u003e\u003c/a\u003e\u003cBr\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/stargazers\"\u003e\u003cimg alt=\"GitHub Repo stars\" src=\"https://img.shields.io/github/stars/Dadangdut33/Screen-Translate?style=social\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/Dadangdut33/Screen-Translate/network/members\"\u003e\u003cimg alt=\"GitHub forks\" src=\"https://img.shields.io/github/forks/Dadangdut33/Screen-Translate?style=social\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nSTL a.k.a Screen Translate is an OCR translator tool made by utilizing Tesseract and opencv-python. The code is then compiled to .exe by using pyinstaller.\nInspired by software such as Visual Novel Reader (VNR), [Visual Novel OCR](https://github.com/leminhyen2/Visual-Novel-OCR), and [QTranslate](https://quest-app.appspot.com/). Also available to download at [sourceforge](https://sourceforge.net/projects/screen-translate/).\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://sourceforge.net/projects/screen-translate/\"\u003e\u003cimg width=\"125px\"alt=\"GitHub forks\" src=\"https://sourceforge.net/cdn/syndication/badge_img/3437888/oss-rising-star-white?achievement=oss-rising-star\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch1\u003eJump to\u003c/h1\u003e\n\n- [Features](#features)\n- [User Requirements](#user-requirements)\n- [Downloads](#downloads)\n- [Installation and Setup](#installation-and-setup)\n- [How To Uninstall](#how-to-uninstall)\n- [Development](#--development--)\n  - [Setup](#setup)\n  - [Building](#building)\n  - [Packaging](#packaging)\n  - [Contributing](#contributing)\n- [Attribution](#attribution)\n- [Other](#other)\n\n---\n\n\u003cbr\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"user_manual/preview.png\" alt=\"Screen Translate Preview\"\u003e\n\u003c/p\u003e\n\n# Features\n\n- Translation (Google translate, LibreTranslate, Mymemorytranslator, Deepl, Pons)\n- OCR Detection (Using tesseract OCR)\n- Snip and translate\n  \u003cdetails open\u003e\n  \u003csummary\u003eExample\u003c/summary\u003e\n    \u003cimg src=\"user_manual/6_1_snipping_right_click.png\" width=\"700\" alt=\"Screen Translate Looks\"\u003e\n    \u003cimg src=\"user_manual/6_2_snipping.png\" width=\"700\" alt=\"Screen Translate Looks\"\u003e\n  \u003c/details\u003e\n- Capture and translate\n  \u003cdetails open\u003e\n  \u003csummary\u003eExample\u003c/summary\u003e\n    \u003cimg src=\"user_manual/5_4_usage_example.png\" width=\"700\" alt=\"Screen Translate Looks\"\u003e\n    \u003cimg src=\"user_manual/5_2_capture_window.png\" width=\"700\" alt=\"Screen Translate Looks\"\u003e\n    \u003cimg src=\"user_manual/5_3_capture_window.png\" width=\"700\" alt=\"Screen Translate Looks\"\u003e\n  \u003c/details\u003e\n\n# User Requirements\n\n- **[tesseract](https://github.com/UB-Mannheim/tesseract/wiki)**, needed for the ocr. **Install it with all the language pack**. (Tested version is v5.0.0-alpha2021081, higher version should also work)\n- **[LibreTranslate](https://github.com/LibreTranslate/LibreTranslate)** for offline translation **(Optional)**.\n- Internet connection for translation if not using LibreTranslate.\n\n# Downloads\n\n- [The application (ScreenTranslate/STL)](https://github.com/Dadangdut33/Screen-Translate/releases/latest)\n- [Tesseract](https://github.com/UB-Mannheim/tesseract/wiki) (v5.0.0-alpha2021081 or higher)\n- [LibreTranslate](https://github.com/LibreTranslate/LibreTranslate) **(Optional)**\n\n# Installation and Setup\n\n1. Download the latest [release](https://github.com/Dadangdut33/Screen-Translate/releases/latest) of this program\n2. Install [tesseract](https://github.com/UB-Mannheim/tesseract/wiki), **make sure to select install all language pack when prompted**. Optionally you can found the language pack tessdata in [teserract repository](https://github.com/tesseract-ocr) such as [this](https://github.com/tesseract-ocr/tessdata_best)\n3. Open the app and adjust setting to your liking\n4. **(Recommended)** Set monitor scaling to 100% so that image is captured accurately (If scaling is not set to 100% you will need to set offset in setting)\n5. **(Optional)** Set offset if on multiple monitors.\n6. Try capturing image and see if it works or not, if it doesn't, go check the image captured in img_captured folder to see wether it capture the stuff that you want or not. If not, try to change the offset.\n7. Now that you have set everything, the app should be ready. Feel free to submit new issue on the github repository if you encounter any bugs.\n\n# How To Uninstall\n\nIf you use the installer version, you can run the uninstaller inside the app folder or uninstall it from control panel. For the portable (rar) version, you can just delete them.\n\n---\n\n\u003ch1 align=\"center\"\u003e- Development -\u003c/h1\u003e\n\n## Setup\n\n\u003e **Note** \\\n\u003e It is recommended to create a virtual environment, but it is not required.\n\n1. Clone the repo or download the source code of the latest release\n2. Create your virtual environment by running `python -m venv venv`\n3. Activate your virtual environment\n4. Install all the dependencies needed by running `pip install -r requirements.txt`\n5. Get to root directory and Run the script by typing `python Main.py`\n\n## Building\n\n\u003e **Warning** \\\n\u003e As of now cx_Freeze setup is not working properly for DeepL scraper so use the pyinstaller script instead if you want to compile the app by yourself.\n\nBefore building, we gotta make sure that the dependencies and playwright driver is installed. For **playwright** (used for deepl scraper), we need to install the browser driver first, which is explained in the [playwright documentation](https://playwright.dev/python/docs/library#pyinstaller). **It is stated there that if we want to bundle our code we need to run the following code first**:\n\n```bash\n# bash\nPLAYWRIGHT_BROWSERS_PATH=0 playwright install chromium\n\n# powershell\n$env:PLAYWRIGHT_BROWSERS_PATH=\"0\"\nplaywright install chromium\n\n# batch\nset PLAYWRIGHT_BROWSERS_PATH=0\nplaywright install chromium\n```\n\nAfter dependencies are installed, we can start building the app. There are 2 options that i have provided for building, using pyinstaller or cx_freeze. The command used are:\n\n**For pyinstaller:**\n\n```bash\n# On Source Code Directory\npython build_pyinstaller.py\n# you will be prompted to build with console or not\n```\n\nThis will create a folder called `dist` in the source code directory. Inside the folder there will be a folder called `ScreenTranslate \u003cversion\u003e` which contains the executable file.\n\n**For cx_freeze:**\n\n```bash\n# On Source Code Directory\npython build_cx.py build\n# you will be prompted to build with console or not\n```\n\nThis will create a folder called `build` in the source code directory. Inside the folder there will be a folder called `exe.\u003cplatform\u003e-\u003cversion\u003e` which contains the executable file.\n\n## Packaging\n\nI use innosetup to package the app. You can download it [here](https://jrsoftware.org/isdl.php). After installing it, you can setup the path and AppId in `ScreenTranslate.iss` file and run the .iss script.\n\n## Contributing\n\nIf you encounter any bugs with the program, please report them by opening an issue on the github repository. You can also request a feature by opening an issue or posting in discussion.\n\n# Attribution\n\n- Translate Icon in the logo is taken from [Icons8](https://icons8.com/)\n- [Sunvalley TTK Theme](https://github.com/rdbende/Sun-Valley-ttk-theme/) (used for app theme although i modified it a bit)\n\n# Other\n\nCheck out my other similar project called [Speech Translate](https://github.com/Dadangdut33/Speech-Translate/) a real time speech transcription and translation app made possible using whisper model from openAI.\n","funding_links":["https://ko-fi.com/dadangdut33"],"categories":["Python"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDadangdut33%2FScreen-Translate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDadangdut33%2FScreen-Translate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDadangdut33%2FScreen-Translate/lists"}