Trong lúc tạo tính năng chuyển ảnh sang pixel art,
tôi nghĩ sẽ thật tiện nếu có thể tách riêng phần logic pixel hóa để tái sử dụng, nên đã tạo ra một thư viện pixel hóa hình ảnh.
Tính năng
- zero-dependency + kích thước gói nhỏ (khoảng 44kB)
- dùng được trên cả trình duyệt và Node.js
- hỗ trợ hai chế độ pixel hóa
clean/detail - có thể giữ nguyên kích thước gốc hoặc chọn xuất ra độ phân giải thấp
- ngay cả với mốc 512×512 cũng có thể xử lý trong vài ms
- dễ tách ra chạy bằng Worker trong trình duyệt nên ngay cả khi xử lý ảnh nặng cũng ít gây tải cho UI
Cách hoạt động
cleanmode dùng màu xuất hiện nhiều nhất trong mỗi ô nên ranh giới rõ ràngdetailmode dùng màu trung bình của mỗi ô nên giữ lại gradient và chất liệu tự nhiên hơn một chút
Ví dụ sử dụng
import { pixelate } from 'fast-pixelizer'
const result = pixelate(imageData, { resolution: 32 })
// -> { data: Uint8ClampedArray, width, height }
Liên kết
- npm: https://www.npmjs.com/package/fast-pixelizer
- GitHub: https://github.com/handsupmin/fast-pixelizer
Mời bạn dùng thử thoải mái và rất mong nhận được phản hồi. 🙂
Chưa có bình luận nào.