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

#681 in Images

Download history 373/week @ 2024-11-15 531/week @ 2024-11-22 714/week @ 2024-11-29 751/week @ 2024-12-06 446/week @ 2024-12-13 100/week @ 2024-12-20 28/week @ 2024-12-27 216/week @ 2025-01-03 533/week @ 2025-01-10 504/week @ 2025-01-17 491/week @ 2025-01-24 450/week @ 2025-01-31 431/week @ 2025-02-07 242/week @ 2025-02-14 335/week @ 2025-02-21 369/week @ 2025-02-28

1,441 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
~277K SLoC