#emoji #telegram #image #terminal #version #themes #cli

bin+lib adaptemoji

将您的常规Telegram表情符号转换为自适应单色版本

2个版本

0.1.1 2024年3月27日
0.1.0 2024年3月27日

#162视频

MIT 许可证

13KB
61

Adaptemoji

将您的常规Telegram表情符号转换为自适应单色版本

示例

原始 自适应 自适应负片
Original image Adaptive image Adaptive negative image

如您所见,与原始版本相比,自适应版本中的一个看起来不正确。但,如果您将您的颜色主题从浅色切换到深色(或从深色切换到浅色),另一个将是不正确的。因此,您需要使用适合您背景的那一个。

要求

  1. CC链接器(Windows - 带有C++支持的Microsoft Visual Studio)(Linux - gcc)

  2. Rust

安装

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