11 releases

0.5.1 Jul 14, 2023
0.5.0 Jul 14, 2023
0.4.0 Feb 19, 2022
0.3.0 Feb 3, 2022
0.1.0 Nov 6, 2021

#611 in Images

Download history 473/week @ 2024-11-24 849/week @ 2024-12-01 618/week @ 2024-12-08 456/week @ 2024-12-15 39/week @ 2024-12-22 41/week @ 2024-12-29 265/week @ 2025-01-05 574/week @ 2025-01-12 528/week @ 2025-01-19 418/week @ 2025-01-26 497/week @ 2025-02-02 373/week @ 2025-02-09 257/week @ 2025-02-16 335/week @ 2025-02-23 378/week @ 2025-03-02 474/week @ 2025-03-09

1,454 downloads per month
Used in 2 crates

Apache-2.0

600KB
253 lines

Thumbnailer

This crate can be used to create thumbnails for all kinds of files.

Usage

use thumbnailer::{create_thumbnails, Thumbnail, ThumbnailSize};
use std::fs::File;
use std::io::BufReader;

fn main() {
    let file = File::open("tests/assets/test.png").unwrap();
    let reader = BufReader::new(file);
    let mut  thumbnails = create_thumbnails(reader, mime::IMAGE_PNG, [ThumbnailSize::Small, ThumbnailSize::Medium]).unwrap();
    
    let thumbnail = thumbnails.pop().unwrap();
    let mut buf = Vec::new();
    thumbnail.write_png(&mut buf).unwrap();
}

Supported media types

Type Subtype
Image Png
Image Bmp
image Jpeg
Image Webp
Image Gif

License

MIT


lib.rs:

Thumbnailer

This crate can be used to generate thumbnails for all kinds of files.

Example:

use thumbnailer::{create_thumbnails, Thumbnail, ThumbnailSize};
use std::fs::File;
use std::io::BufReader;
use std::io::Cursor;

fn main() {
    let file = File::open("tests/assets/test.png").unwrap();
    let reader = BufReader::new(file);
    let mut  thumbnails = create_thumbnails(reader, mime::IMAGE_PNG, [ThumbnailSize::Small, ThumbnailSize::Medium]).unwrap();
    
    let thumbnail = thumbnails.pop().unwrap();
    let mut buf = Cursor::new(Vec::new());
    thumbnail.write_png(&mut buf).unwrap();
}

Dependencies

~12–21MB
~276K SLoC