Skip to content

Latest commit

 

History

History
66 lines (53 loc) · 1.68 KB

README_CN.md

File metadata and controls

66 lines (53 loc) · 1.68 KB

imageinfo-rs

一个高性能的Rust库,在不加载/解码图片的情况下,获取图片文件类型和大小。

imageinfo 并不是通过扩展名来识别图片格式,而是通过文件头和文件格式特征来判断图片格式。

使用Rust重写 c++ 版的 imageinfo

部分测试图片文件来源于 image-size ,感谢 @netroy

ci

支持格式

  • avif
  • bmp
  • cur
  • dds
  • gif
  • hdr (pic)
  • heic (heif)
  • icns
  • ico
  • jpeg2000 code stream (j2k, j2c, jpc, jhc)
  • jpeg2000 (jp2, jpx, jph)
  • jpeg (jpg)
  • ktx
  • png
  • psd
  • qoi
  • svg
  • tga
  • tiff (tif)
  • webp
  • more coming...

安装

https://crates.io/crates/imageinfo

示例

use imageinfo::{ImageInfo};

fn main() {
    match ImageInfo::from_file_path("images/valid/bmp/sample.bmp") {
        Ok(info) => {
            println!("  - Ext       : {}", info.ext);
            println!("  - Full Ext  : {}", info.full_ext);
            println!("  - Size      : {}", info.size);
            println!("  - Mimetype  : {}", info.mimetype);
            println!("  - Entries   :");
            for size in info.entry_sizes.iter() {
                println!("    - {}", size);
            }
        }
        Err(err) => {
            println!("  - Err       : {}", err);
        }
    }
}

很简单不是吗?

请不要吝啬你的Star : )