Technical Documentation: Lymphatus/caesium-image-compressor
โน๏ธ Provenance: Multi-Tier Ingestion ยท CodeWiki Reference
Overview (`README.md`)
Caesium Image Compressor [](https://github.com/sponsors/Lymphatus)
Try it directly on browser at caesium.app
[!NOTE]
I'm starting to work to the v3.0.0 version to address a lot of suggestions, feature requests and general improvements. You can participate in the development in this discussion thread.
v2.8.5
Special Thanks
What is it for
Caesium is an image compression software that helps you store, send and share digital pictures, supporting JPG, PNG and
WebP formats.
You can quickly reduce the file size (and resolution, if you want) by preserving the overall quality of the image.
Supported Platforms
- Windows: 10 (build 1809 or later) (use old version v1.x for Windows 7 or
8 - link) - MacOS: 12+
- Linux: tested on Ubuntu 22.04 and Manjaro
Note: only 64bit versions are supported
Installation
Head to the releases' page for the available
downloads.
- Windows: installer and portable versions are available
- MacOS: DMG package
- Linux: compile the source code yourself, or download binary
from third-party build
Note that the main branch can contain unstable code. If you want to build on a stable version, use a tagged version.
Troubleshooting and/or feature request
Please open an issue.
Build from source
Requirements
- Rust: required to
compile libcaesium. Make sure you havecargoexecutable on you$PATH - Qt6 SDK: binaries are built on 6.8.0 (open source)
- libssh: macOS only
- Sparkle: macOS only. Only version 1.27.1 is supported.
Build
Step 0 (macOS Only)
You need to set up Sparkle in order to compile the project
brew install --cask https://raw.githubusercontent.com/Homebrew/homebrew-cask/c6dfe6baf1639998ba1707f68668cf8fa97bac9d/Casks/sparkle.rb
sudo cp -R /usr/local/Caskroom/sparkle/1.27.1/Sparkle.framework /Library/Frameworks/Sparkle.frameworkStep 1
You need to configure CMake first and the command is slightly different for all the platforms:
Change the path in variables with the correct directories of the requirements.
Windows
cmake -B build_dir -DCMAKE_PREFIX_PATH=/path/to/Qt/version -G "MinGW Makefiles"MacOS
cmake -B build_dir -DCMAKE_PREFIX_PATH=/path/to/Qt/version/macos -DLIBSSH_INCLUDE_DIR=/libssh/dir/include -DSPARKLE_INCLUDE_DIR=/usr/local/Caskroom/sparkle/1.27.1/Sparkle.framework/Versions/Current/HeadersLinux
Make sure you have all the requirements installed with you own package manager
cmake -B build_dir -DCMAKE_PREFIX_PATH=/path/to/Qt/version/gcc_64Step 2
Then you can build with
cmake --build build_dir --config Release --target caesium_image_compressorLanguages and translations
The 1.0 version of Caesium had a lot of community made translations, but this 2.0 release has a whole new set of strings
and no old translations can be used anymore.
Caesium 2.0 is currently available in:
| Language | Progress |
|---|---|
| ar_EG | 77% |
| de_DE | 72% |
| el_GR | 69% |
| en_US | 100% |
| es_ES | 67% |
| fa_IR | 98% |
| fi_FI | 72% |
| fr_FR | 68% |
| hi_IN | 72% |
| id_ID | 69% |
| it_IT | 100% |
| ja_JP | 97% |
| pl_PL | 69% |
| pt_BR | 95% |
| ru_RU | 97% |
| sk_SK | 68% |
| tr_TR | 97% |
| zh_CN | 100% |
| zh_TW | 100% |
| ro_RO | 98% |
How to contribute with your translation
You can help translate by opening the resources/i18n/caesium_en_US.ts with QtLinguist or any XML editor. Rename it to
your language (e.g. caesium_it_IT.ts) and translate all the sentences. Then you can start a pull request with your
translated file.
See this pull request as an example.
Thanks to all the people who contributed.
--- METRICS ---
- Files Extracted: 1
- Estimated Token Budget: ~1781 tokens
- Canonical Reference: https://codewiki.google/github.com/Lymphatus/caesium-image-compressor