2个版本
0.1.1 | 2024年3月27日 |
---|---|
0.1.0 | 2024年3月27日 |
#162 在 视频
13KB
61 行
Adaptemoji
将您的常规Telegram表情符号转换为自适应单色版本
示例
原始 | 自适应 | 自适应负片 |
---|---|---|
如您所见,与原始版本相比,自适应版本中的一个看起来不正确。但,如果您将您的颜色主题从浅色切换到深色(或从深色切换到浅色),另一个将是不正确的。因此,您需要使用适合您背景的那一个。
要求
-
CC链接器(Windows - 带有C++支持的Microsoft Visual Studio)(Linux - gcc)
安装
cargo install adaptemoji
如何使用
常规
adaptemoji -i your-image.png -o output-image.png
负片
adaptemoji -i your-image.png -o output-image.png -n
此外,Telegram 要求您的表情符号大小为 100px x 100px。如果您希望 adaptemoji 自动调整图像大小,请添加 -r
标志
常规调整大小
adaptemoji -i your-image.png -o output-image.png -r
负片调整大小
adaptemoji -i your-image.png -o output-image.png -nr
作为库使用
安装
cargo add adaptemoji
示例
use adaptemoji::AdaptiveEmojiConvert;
use std::error;
fn main() -> Result<(), Box<dyn error::Error>> {
let img = image::open("./assets/examples/original.webp")?;
let mut resized_img = img
.resize(100, 100, image::imageops::FilterType::Triangle) // Resize image to 100px x 100px
.to_luma_alpha8();
resized_img.convert_adaptive(false).save("./target/adaptive.png")?;
Ok(())
}
use adaptemoji::AdaptiveEmojiConvert;
use std::error;
fn main() -> Result<(), Box<dyn error::Error>> {
let img = image::open("./assets/examples/original.webp")?;
let mut resized_img = img
.resize(100, 100, image::imageops::FilterType::Triangle) // Resize image to 100px x 100px
.to_luma_alpha8();
adaptemoji::convert_adaptive(&mut resized_img, true);
resized_img.save("./target/adaptive_negative.png")?;
Ok(())
}
依赖项
~3MB
~57K SLoC