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

#445 in Images

Download history 14/week @ 2024-07-20 24/week @ 2024-07-27 11/week @ 2024-08-03 15/week @ 2024-08-10 8/week @ 2024-08-17 12/week @ 2024-08-24 190/week @ 2024-08-31 377/week @ 2024-09-07 363/week @ 2024-09-14 702/week @ 2024-09-21 545/week @ 2024-09-28 523/week @ 2024-10-05 382/week @ 2024-10-12 475/week @ 2024-10-19 312/week @ 2024-10-26 533/week @ 2024-11-02

1,766 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–20MB
~256K SLoC