Highlight Translator can help you translate the words quickly and accurately.

Overview

📚 Highlight Translator 📚

Highlight Translator can help you translate the words quickly and accurately. By only highlighting, copying, or screenshoting the content you want to translate anywhere on your computer (ex. PDF, PPT, WORD etc.), the translated results will then be automatically displayed before you.

⚠️ The software is only supported in Windows. Mac OS version might be added in the future. ⚠️

Translation resource: Google Translate and Cambridge dictionary

OCR technology: Tesseract

Virtual Desktop Control DLL: Ciantic/VirtualDesktopAccessor Github

Highlight Translate Github

🔻 How To Use 🔻

Step 1. Download the software in the Executable File

Download Zip File

Step 2. Decompress the Zip file and Execute the file

Find the HighlightTranslator.exe in the folder and then double click

📢 Highlight Features

Methods of Getting Source Texts

  • Highlight/Selected
  • Screenshot (keyboard shortcut: Windows + Shift + S )
  • Copy

Automatically Appear Window

The window will be automatically appear when you copy/highlight/screenshot some content and then automatically be hidden after a few seconds if you don't use it.

Automatically Switch to Current Virtual Desktop

You can use it on different virtual desktop without manually switch by yourself, it will automatic switch to current virtual desktop

Automatically Switch between Languages

When the language of input texts is the same as the target language, source language and target language will be automatically switched to each other.

Text to Speak

It can speak the input sentences or the translated results, and also can be automatic.

It will be helpful to learning languages

🎯 Features

🔑 Methods of getting your source texts

  • Highlight/Selected (This method does not support Microsoft Office, but you can copy the words/sentences instead)
  • Screenshot (Only English and Chinese supported currently, but feel free to add new languages by yourself)

    Keyboard Shortcut: Windows + Shift + S

  • Copy

🔑 Automatically Appear Window

The window will be automatically appear when you copy/highlight/screenshot some content and then automatically be hidden after a few seconds if you don't use it.

  • Cancel disappearance

    If you don't want the window to automatically disappear, you can stop it by moving your mouse on the window or just clicking the checkbox on the top

  • Early Disappear

    If you want the window disappear early, you can move your mouse on the window first and then click any where out of the window

🔑 Automatically Switch to Current Virtual Desktop

You can use it on different virtual desktop without manually switch by yourself, it will automatic switch to current virtual desktop.

🔑 Automatically Switch between Languages

If the language of input texts is the same as the target language, source language and target language will be automatically switched to each other.

🔑 Text to Speech

It can speak the input sentences or the translated results, and also can be automatic.

📌 Checkbox "input"

Display InputBox and Translate Button.
You can type the texts in InputBox and then press Enter or click the Translate Button to get the translation result.

📌 Checkbox "top"

If the checkbox is checked, the window will always be kept on top.

📌 Checkbox "select"

When you highlight some content, the translation will be automatically displayed.

📌 Setting Interface

You can set the config on the menu

📌 Change Dictionary

Only Google and Cambridge Dictionary supported for now. For Cambridge Dictionary, only "English to Chinese" supported

📌 Switch Language Button

It can switch between source and target languages

📔 Google Translate API

This API can get the translation result from Google Translate

How to use

import GoogleTranslate as gt
print(gt.get_translate("good", "en","zh-TW"))

Parameters

  1. inputtext: The text that you want to translate
  2. sourcelanguage: The language of the input text language
  3. targetlanguage: The language of the output result language

You can refer to language.txt for all the languages supported.

Return

  1. result: The most common result
  2. allresult: All of the results
  3. detect_language: Detecting the language of the input text
  4. revise: Suggestion when the text is seemingly misspelled

📑 Config.json

You can adjust these parameters in Setting Interface.

{
  "source_language":"Detect language",
  "target_language":"Chinese (Traditional)",
  "appear_time":6,
  "dynamic_adjust_appear_time":1,
  "auto_speak_length_limit":15,
  "font":"Arial",
  "font_size":11,
  "audio_volume":0.95,
  "number_of_terms":5,
  "auto_switch_language":1,
  "auto_change_dictionary":0,
  "restructure_sentences":1,
  "inputbox_color":"#F2D8B3",
  "resultbox_color":"#FDF0C4",
  "copycheck":0.3,
  "doubleclickcheck":0.5,
  "selectcheck":0.3
}
  • source_language: Default source language
  • target_language: Default target language
  • appear_time: The window will be automatically appear when you copy/highlight/screenshot some content and then automatically be hidden after a few seconds.
  • dynamic_adjust_appear_time: The time of Window automatic appearance will be extended according to the length of input text(0 will close this feature, if >0, every three words will extend dynamic_adjust_appear_time seconds)
  • auto_speak_length_limit: When the input length is less than the limit, the automatic speaking function will be triggered
  • font
  • font_size
  • audio_volume: Speaking volume (0~1)
  • auto_switch_language: Enable the source and target languages to be swtiched automatically (0 or 1)
  • number_of_terms: Control the number of displayed translation results (terms) (>0)
  • auto_change_dictionary: When the input is a word, the dictionary will be automaticlly switched to cambridge dictionary (0 or 1)
  • restructure_sentences: It will restructure your input sentences (0 or 1)
  • inputbox_color: The background color of input box
  • resultbox_color: The background color of result box
  • copycheck: Check clipboard frequency (sec)
  • doubleclick: the time between the two clicks that will make them viewed as a "doublecklick" (sec)
  • select: The time of the press to make the press viewed as a "long press" (sec)

How To Install

pip install -r requirements.txt
python Highlight_Translator.py

Requirement

python 3.6

pyinstaller == 4.1
Pillow >= 8.2.0
pynput == 1.6
pyautogui == 0.9
pytesseract == 0.3
pywin32 == 227
requests >= 2.24.0
beautifulsoup4 >= 4.9.3
numpy
pygame
gTTS
Owner
Coolshan
Majoring in Computer Science and Information Engineering
Coolshan
Python-samples - This project is to help someone need some practices when learning python language

Python-samples - This project is to help someone need some practices when learning python language

Gui Chen 0 Feb 14, 2022
A collection of simple python mini projects to enhance your python skills

A collection of simple python mini projects to enhance your python skills

PYTHON WORLD 12.1k Jan 05, 2023
A curated list of awesome mathematics resources

A curated list of awesome mathematics resources

Cyrille Rossant 6.7k Jan 05, 2023
Numpy's Sphinx extensions

numpydoc -- Numpy's Sphinx extensions This package provides the numpydoc Sphinx extension for handling docstrings formatted according to the NumPy doc

NumPy 234 Dec 26, 2022
Course materials and handouts for #100DaysOfCode in Python course

#100DaysOfCode with Python course Course details page: talkpython.fm/100days Course Summary #100DaysOfCode in Python is your perfect companion to take

Talk Python 1.9k Dec 31, 2022
Clases y ejercicios del curso de python diactodo por la UNSAM

Programación en Python En el marco del proyecto de Inteligencia Artificial Interdisciplinaria, la Escuela de Ciencia y Tecnología de la UNSAM vuelve a

Maximiliano Villalva 3 Jan 06, 2022
Deduplicating archiver with compression and authenticated encryption.

More screencasts: installation, advanced usage What is BorgBackup? BorgBackup (short: Borg) is a deduplicating backup program. Optionally, it supports

BorgBackup 9k Jan 09, 2023
Żmija is a simple universal code generation tool.

Żmija Żmija is a simple universal code generation tool. It is intended to be used as a means to generate code that is both efficient and easily mainta

Adrian Samoticha 2 Nov 23, 2021
EasyMultiClipboard - Python script written to handle more than 1 string in clipboard

EasyMultiClipboard - Python script written to handle more than 1 string in clipboard

WVlab 1 Jun 18, 2022
NoVmpy - NoVmpy with python

git clone -b dev-1 https://github.com/wallds/VTIL-Python.git cd VTIL-Python py s

263 Dec 23, 2022
A Python library that simplifies the extraction of datasets from XML content.

xmldataset: simple xml parsing 🗃️ XML Dataset: simple xml parsing Documentation: https://xmldataset.readthedocs.io A Python library that simplifies t

James Spurin 75 Dec 30, 2022
Valentine-with-Python - A Python program generates an animation of a heart with cool texts of your loved one

Valentine with Python Valentines with Python is a mini fun project I have coded.

Niraj Tiwari 4 Dec 31, 2022
Documentation generator for C++ based on Doxygen and mosra/m.css.

mosra/m.css is a Doxygen-based documentation generator that significantly improves on Doxygen's default output by controlling some of Doxygen's more unruly options, supplying it's own slick HTML+CSS

Mark Gillard 109 Dec 07, 2022
A collection of lecture notes, drawings, flash cards, mind maps, scripts

Neuroanatomy A collection of lecture notes, drawings, flash cards, mind maps, scripts and other helpful resources for the course "Functional Organizat

Georg Reich 3 Sep 21, 2022
Automatically open a pull request for repositories that have no CONTRIBUTING.md file

automatic-contrib-prs Automatically open a pull request for repositories that have no CONTRIBUTING.md file for a targeted set of repositories. What th

GitHub 8 Oct 20, 2022
Version bêta d'un système pour suivre les prix des livres chez Books to Scrape,

Version bêta d'un système pour suivre les prix des livres chez Books to Scrape, un revendeur de livres en ligne. En pratique, dans cette version bêta, le programme n'effectuera pas une véritable surv

Mouhamed Dia 1 Jan 06, 2022
Python Advanced --- numpy, decorators, networking

Python Advanced --- numpy, decorators, networking (and more?) Hello everyone 👋 This is the project repo for the "Python Advanced - ..." introductory

Andreas Poehlmann 2 Nov 05, 2021
Tips for Writing a Research Paper using LaTeX

Tips for Writing a Research Paper using LaTeX

Guanying Chen 727 Dec 26, 2022
Build documentation in multiple repos into one site.

mkdocs-multirepo-plugin Build documentation in multiple repos into one site. Setup Install plugin using pip: pip install git+https://github.com/jdoiro

Joseph Doiron 47 Dec 28, 2022
A simple USI Shogi Engine written in python using python-shogi.

Revengeshogi My attempt at creating a USI Shogi Engine in python using python-shogi. Current State of Engine Currently only generating random moves us

1 Jan 06, 2022