Updating oxi, adding interlace option (#1014)

This commit is contained in:
Jake Archibald
2021-05-13 14:22:19 +01:00
committed by GitHub
parent b9b6e57581
commit f0fb891498
13 changed files with 35 additions and 14 deletions

View File

@@ -5,7 +5,7 @@ use oxipng::AlphaOptim;
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
pub fn optimise(data: &[u8], level: u8) -> Vec<u8> {
pub fn optimise(data: &[u8], level: u8, interlace: bool) -> Vec<u8> {
let mut options = oxipng::Options::from_preset(level);
options.alphas.insert(AlphaOptim::Black);
options.alphas.insert(AlphaOptim::White);
@@ -13,6 +13,7 @@ pub fn optimise(data: &[u8], level: u8) -> Vec<u8> {
options.alphas.insert(AlphaOptim::Down);
options.alphas.insert(AlphaOptim::Left);
options.alphas.insert(AlphaOptim::Right);
options.interlace = Some(if interlace { 1 } else { 0 });
options.deflate = oxipng::Deflaters::Libdeflater;
oxipng::optimize_from_memory(data, &options).unwrap_throw()