Translate PowerPoint presentations using AI (DeepSeek). Extracts text from slides, tables, and notes, translates via DeepSeek API, and saves a new file with preserved formatting.
✨ Length control — Unlike typical translators, you can control translation length: keep it similar, make it shorter (~50% or ~75%), or expand with richer details. Perfect for fitting slides, summaries, or detailed explanations.
Requires uv.
From local directory:
uv tool install .From path:
uv tool install /path/to/ppt-translator-cliFrom Git:
uv tool install git+https://github.com/socamalo/ppt-translator-cli# Translate to English (default)
ppt-translator input.pptx
# Translate to Chinese
ppt-translator input.pptx --target zh
# Translate to Japanese with custom output
ppt-translator input.pptx --target ja --output output_ja.pptx| Option | Short | Default | Description |
|---|---|---|---|
--target |
-t |
en |
Target language code |
--source |
-s |
auto |
Source language (auto for detection) |
--length |
-l |
same |
Length control — see Length Modes below |
--output |
-o |
(auto) | Output file path |
--api-key |
(env) | DeepSeek API key | |
--verbose |
-v |
Verbose logging |
Set the DeepSeek API key via environment variable:
export DEEPSEEK_API_KEY=sk-your-api-key
ppt-translator input.pptx --target enOr pass it as an option:
ppt-translator input.pptx --target en --api-key sk-your-api-keyzh- Chinese (Simplified)en- Englishru- Russianja- Japaneseko- Koreanes- Spanishfr- Frenchde- Germanit- Italianpt- Portuguese
PPT Translator’s length control lets you adjust translation length to match your layout and audience. Most tools only do 1:1 translation; here you choose how much to condense or expand.
| Mode | Effect | Typical use |
|---|---|---|
same |
Keep length similar to original (default) | General translation, preserve layout |
shorter |
~50% shorter | Dense slides, bullet-heavy content |
extreme_short |
~75% shorter | Titles, labels, ultra-compact slides |
longer |
Expand with richer details | Explanatory slides, teaching materials |
# Condense for tight layouts
ppt-translator deck.pptx -t zh -l shorter
# Ultra-compact for title-only slides
ppt-translator titles.pptx -t ja -l extreme_short
# Expand for clarity
ppt-translator tutorial.pptx -t en -l longer# Basic translation
ppt-translator input.pptx -t zh
# Length control: condense for slides (signature feature)
ppt-translator deck.pptx -t zh -l shorter
# Auto-detect source, output to specific path
ppt-translator presentation.pptx -t de -o presentation_de.pptx
# Verbose output
ppt-translator input.pptx -t en -vMIT