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
Repository for learning Python (Python Tutorial)

Repository for learning Python (Python Tutorial) Languages and Tools 🧰 Overview πŸ“‘ Repository for learning Python (Python Tutorial) Languages and Too

Swiftman 2 Aug 22, 2022
Documentation of the QR code found on new Austrian ID cards.

Austrian ID Card QR Code This document aims to be a complete documentation of the format used in the QR area on the back of new Austrian ID cards (Per

Gabriel Huber 9 Dec 12, 2022
Obmovies - A short guide on setting up the system and environment dependencies required for ob's Movies database

Obmovies - A short guide on setting up the system and environment dependencies required for ob's Movies database

1 Jan 04, 2022
Run `black` on python code blocks in documentation files

blacken-docs Run black on python code blocks in documentation files. install pip install blacken-docs usage blacken-docs provides a single executable

Anthony Sottile 460 Dec 23, 2022
JMESPath is a query language for JSON.

JMESPath JMESPath (pronounced "james path") allows you to declaratively specify how to extract elements from a JSON document. For example, given this

1.7k Dec 31, 2022
LotteryBuyPredictionWebApp - Lottery Purchase Prediction Model

Lottery Purchase Prediction Model Objective and Goal Predict the lottery type th

Wanxuan Zhang 2 Feb 14, 2022
An interview engine for businesses, interview those who are actually qualified and are worth your time!

easyInterview V0.8B An interview engine for businesses, interview those who are actually qualified and are worth your time! Quick Overview You/the com

Vatsal Shukla 1 Nov 19, 2021
Python Tool to Easily Generate Multiple Documents

Python Tool to Easily Generate Multiple Documents Running the script doesn't require internet Max Generation is set to 10k to avoid lagging/crashing R

2 Apr 27, 2022
Parser manager for parsing DOC, DOCX, PDF or HTML files

Parser manager Description Parser gets PDF, DOC, DOCX or HTML file via API and saves parsed data to the database. Implemented in Ruby 3.0.1 using Acti

Π­Π΄Π΅ΠΌ 4 Dec 04, 2021
A swagger tool for tornado, using python to write api doc!

SwaggerDoc About A swagger tool for tornado, using python to write api doc! Installation pip install swagger-doc Quick Start code import tornado.ioloo

aaashuai 1 Jan 10, 2022
learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your personal portfolio

learn python in 100 days, a simple step could be follow from beginner to master of every aspect of python programming and project also include side project which you can use as demo project for your

BDFD 6 Nov 05, 2022
A complete kickstart devcontainer repository for python3

A complete kickstart devcontainer repository for python3

Viktor Freiman 3 Dec 23, 2022
A repository of links with advice related to grad school applications, research, phd etc

A repository of links with advice related to grad school applications, research, phd etc

Shaily Bhatt 946 Dec 30, 2022
1.3k Jan 08, 2023
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
JTEX is a command line tool (CLI) for rendering LaTeX documents from jinja-style templates.

JTEX JTEX is a command line tool (CLI) for rendering LaTeX documents from jinja-style templates. This package uses Jinja2 as the template engine with

Curvenote 15 Dec 21, 2022
xeuledoc - Fetch information about a public Google document.

xeuledoc - Fetch information about a public Google document.

Malfrats Industries 651 Dec 27, 2022
DeltaPy - Tabular Data Augmentation (by @firmai)

DeltaPy⁠⁠ β€” Tabular Data Augmentation & Feature Engineering Finance Quant Machine Learning ML-Quant.com - Automated Research Repository Introduction T

Derek Snow 470 Dec 28, 2022
DataRisk Detection Learning Resources

DataRisk Detection Learning Resources Data security: Based on the "data-centric security system" position, it generally refers to the entire security

Liao Wenzhe 59 Dec 05, 2022
Preview title and other information about links sent to chats.

Link Preview A small plugin for Nicotine+ to display preview information like title and description about links sent in chats. Plugin created with Nic

Nick 0 Sep 05, 2021