返回排行榜

Lymphatus/caesium-image-compressor

C++saerasoft.com/caesium

Caesium is an image compression software that helps you store, send and share digital pictures, supporting JPG, PNG, WebP and TIFF formats. You can quickly reduce the file size (and resolution, if you want) by preserving the overall quality of the image.

image-compressioncaesiumlibcaesiumcompressioncross-platformmacoswindowslinux
Star 增长趋势
Star
6.1k
Forks
353
周增长
Issues
63
2k4k6k
2016年4月2019年9月2023年2月2026年7月
README

Caesium Image Compressor

Build

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

caesium_screenshot_280

Special Thanks

7eventech77 ClearRabbit LushawnDev yannkost stamminator justBernhard


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 have cargo executable 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.framework
Step 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/Headers
Linux

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_64
Step 2

Then you can build with

cmake --build build_dir --config Release --target caesium_image_compressor

Languages 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
EG ar_EG 77%
DE de_DE 72%
GR el_GR 69%
US en_US 100%
ES es_ES 67%
IR fa_IR 98%
FI fi_FI 72%
FR fr_FR 68%
IN hi_IN 72%
ID id_ID 69%
IT it_IT 100%
JP ja_JP 97%
PL pl_PL 69%
BR pt_BR 95%
RU ru_RU 97%
SK sk_SK 68%
TR tr_TR 97%
CN zh_CN 100%
TW zh_TW 100%

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.

相关仓库
Curzibn/Luban

Luban 2(鲁班 2) —— 高效简洁的 Android 图片压缩工具库,像素级还原微信朋友圈压缩策略。(An efficient and concise Android image compression library that closely replicates the compression strategy of WeChat Moments.)

CApache License 2.0lubanandroid
13.8k2.3k
LuckSiege/PictureSelector

Picture Selector Library for Android or 图片选择器

JavaMavenApache License 2.0androidandroid-image-selector
13.6k3.1k
zetbaitsu/Compressor

An android image compression library.

Kotlincompressorphotos
7.2k963
fengyuanchen/compressorjs

JavaScript image compressor.

JavaScriptnpmMIT Licensejavascriptimage-compression
fengyuanchen.github.io/compressorjs/
5.8k452
imazen/imageflow

High-performance image manipulation for web servers. Includes imageflow_server, imageflow_tool, and libimageflow

Rustcrates.ioGNU Affero General Public License v3.0image-serverimage-compression
docs.imageflow.io
4.4k144
meowtec/Imagine

🖼️ PNG/JPEG optimization app for macOS, Windows and Linux.

TypeScriptnpmMIT Licenseimage-compressionsave-for-web
4.4k316
oxipng/oxipng

Multithreaded PNG optimizer written in Rust

Rustcrates.ioMIT Licenseimage-compressionimage-optimization
4.1k153
kyleduo/TinyPNG4Mac

Native client of TinyPNG on macOS

SwiftMIT Licensetinypngtinypng4mac
4k292
FLIF-hub/FLIF

Free Lossless Image Format

C++Otherimage-compressionencoder
3.7k232
libjxl/libjxl

JPEG XL image format reference implementation

C++BSD 3-Clause "New" or "Revised" Licenseimage-compressionencoder
3.6k374
chrissimpkins/Crunch

Insane(ly slow but wicked good) PNG image optimization

PythonPyPIOtherpngpng-compression
3.4k149
aoguai/LiYing

LiYing is an automated photo processing program designed for automating the post-processing workflow of ID photos in general photo studios. | LiYing 是一套适用于自动化 完成一般照相馆后期证件照处理流程的照片自动处理的程序。

PythonPyPIGNU Affero General Public License v3.0background-replacementimage-compression
3.2k271