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
Plover jyutping - Plover plugin for Jyutping input

Plover plugin for Jyutping Installation Navigate to the repo directory: cd plove

Samuel Lo 1 Mar 17, 2022
HaskΓΆy is an open-source variable sans-serif typeface family

HaskΓΆy HaskΓΆy is an open-source variable sans-serif typeface family. Designed with powerful opentype features and each weight includes latin-extended

67 Jan 04, 2023
Repository for tutorials, examples and starter scripts for using the MTU HPC cluster

MTU-HPC-Starter Repository for tutorials, examples and starter scripts for using the MTU HPC cluster Connecting to the MTU HPC cluster Within the coll

1 Jan 31, 2022
Searches a document for hash tags. Support multiple natural languages. Works in various contexts.

ht-getter Searches a document for hash tags. Supports multiple natural languages. Works in various contexts. This package uses a non-regex approach an

Rairye 1 Mar 01, 2022
Showing potential issues with merge strategies

Showing potential issues with merge strategies Context There are two branches in this repo: main and a feature branch feat/inverting-method (not the b

RubΓ©n 2 Dec 20, 2021
Explain yourself! Interrogate a codebase for docstring coverage.

interrogate: explain yourself Interrogate a codebase for docstring coverage. Why Do I Need This? interrogate checks your code base for missing docstri

Lynn Root 435 Dec 29, 2022
the project for the most brutal and effective language learning technique

- "The project for the most brutal and effective language learning technique" (c) Alex Kay The langflow project was created especially for language le

Alexander Kaigorodov 7 Dec 26, 2021
OpenTelemetry Python API and SDK

Getting Started β€’ API Documentation β€’ Getting In Touch (GitHub Discussions) Contributing β€’ Examples OpenTelemetry Python This page describes the Pytho

OpenTelemetry - CNCF 1.1k Jan 08, 2023
The OpenAPI Specification Repository

The OpenAPI Specification The OpenAPI Specification is a community-driven open specification within the OpenAPI Initiative, a Linux Foundation Collabo

OpenAPI Initiative 25.5k Dec 29, 2022
A simple malware that tries to explain the logic of computer viruses with Python.

Simple-Virus-With-Python A simple malware that tries to explain the logic of computer viruses with Python. What Is The Virus ? Computer viruses are ma

Xrypt0 6 Nov 18, 2022
Speed up Sphinx builds by selectively removing toctrees from some pages

Remove toctrees from Sphinx pages Improve your Sphinx build time by selectively removing TocTree objects from pages. This is useful if your documentat

Executable Books 8 Jan 04, 2023
NetBox plugin that stores configuration diffs and checks templates compliance

Config Officer - NetBox plugin NetBox plugin that deals with Cisco device configuration (collects running config from Cisco devices, indicates config

77 Dec 21, 2022
PyPresent - create slide presentations from notes

PyPresent Create slide presentations from notes Add some formatting to text file

1 Jan 06, 2022
πŸ“– Generate markdown API documentation from Google-style Python docstring. The lazy alternative to Sphinx.

lazydocs Generate markdown API documentation for Google-style Python docstring. Getting Started β€’ Features β€’ Documentation β€’ Support β€’ Contribution β€’

Machine Learning Tooling 118 Dec 31, 2022
A curated list of awesome tools for Sphinx Python Documentation Generator

Awesome Sphinx (Python Documentation Generator) A curated list of awesome extra libraries, software and resources for Sphinx (Python Documentation Gen

Hyunjun Kim 831 Dec 27, 2022
Sphinx theme for readthedocs.org

Read the Docs Sphinx Theme This Sphinx theme was designed to provide a great reader experience for documentation users on both desktop and mobile devi

Read the Docs 4.3k Dec 31, 2022
EasyModerationKit is an open-source framework designed to moderate and filter inappropriate content.

EasyModerationKit is a public transparency statement. It declares any repositories and legalities used in the EasyModeration system. It allows for implementing EasyModeration into an advanced charact

Aarav 1 Jan 16, 2022
MonsterManualPlus - An advanced monster manual for Tower of the Sorcerer.

Monster Manual + This is an advanced monster manual for Tower of the Sorcerer mods. Users can get a plenty of extra imformation for decision making wh

Yifan Zhou 1 Jan 01, 2022
Resource hub for Obsidian resources.

Obsidian Community Vault Welcome! This is an experimental vault that is maintained by the Obsidian community. For best results we recommend downloadin

Obsidian Community 320 Jan 02, 2023
Exercism exercises in Python.

Exercism exercises in Python.

Exercism 1.3k Jan 04, 2023