1 unstable release
new 0.1.0 | Mar 18, 2025 |
---|
#525 in Images
760KB
240 lines
🎨 Aspix
Aspix adalah library Rust yang powerful untuk mengkonversi gambar menjadi ASCII art. Library ini menyediakan API yang mudah digunakan dengan berbagai opsi kustomisasi untuk menghasilkan ASCII art berkualitas tinggi.
✨ Fitur
- 🖼️ Dukungan untuk berbagai format gambar (JPG, PNG, GIF, BMP, dll.)
- 📐 Penyesuaian ukuran output yang fleksibel
- 🎨 Dua mode karakter ASCII (sederhana dan detail)
- 🔄 Opsi untuk membalik hasil (invert)
- ⚡ Penyesuaian brightness dan contrast
- 💾 Kemampuan untuk menyimpan hasil ke file
- 🚀 Performa yang optimal
📦 Instalasi
Tambahkan dependency berikut ke file Cargo.toml
Anda:
[dependencies]
aspix = "0.1.0"
🚀 Penggunaan Cepat
use aspix::AsciiConverter;
fn main() {
// Buat converter dengan ukuran default
let converter = AsciiConverter::new(100, 50);
// Konversi gambar
match converter.convert("path/to/image.jpg") {
Ok(ascii_art) => println!("{}", ascii_art),
Err(e) => eprintln!("Error: {}", e),
}
}
🛠️ Penggunaan Lanjutan
Konfigurasi Kustom
use aspix::{AsciiConverter, AsciiConfig};
fn main() {
// Buat konfigurasi kustom
let config = AsciiConfig {
width: 120,
height: 60,
use_detailed_chars: true,
invert: false,
contrast: 1.2,
brightness: 1.1,
..Default::default()
};
// Buat converter dengan konfigurasi kustom
let converter = AsciiConverter::with_config(config);
// Konversi dan simpan hasilnya
if let Ok(ascii_art) = converter.convert("input.jpg") {
converter.save_to_file(&ascii_art, "output.txt").unwrap();
}
}
Konversi dari Bytes
use aspix::AsciiConverter;
use std::fs;
fn main() {
let converter = AsciiConverter::new(100, 50);
let image_bytes = fs::read("image.jpg").unwrap();
if let Ok(ascii) = converter.convert_from_bytes(&image_bytes) {
println!("{}", ascii);
}
}
📝 Dokumentasi
Dokumentasi lengkap tersedia di docs.rs.
🤝 Kontribusi
Kontribusi sangat diterima! Jika Anda memiliki saran, bug report, atau pull request, silakan buat issue atau PR di repository GitHub.
📄 Lisensi
Proyek ini dilisensikan di bawah MIT License.
🙏 Credits
Dibuat dengan ❤️ menggunakan Rust.
Dependencies
~5MB
~64K SLoC