[package]
edition = "2024"
name = "jbig2enc-rust"
version = "0.5.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "JBIG2 encoder implementation in Rust with PDF fragment support"
homepage = "https://github.com/LegeApp/jbig2enc-rust"
documentation = "https://docs.rs/jbig2enc-rust"
readme = false
keywords = [
"jbig2",
"encoder",
"compression",
"image",
"pdf",
]
categories = [
"multimedia::encoding",
"multimedia::images",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/LegeApp/jbig2enc-rust"
[features]
cc-analysis = []
default = []
halftone_bin = ["dep:image"]
line_verify = []
parallel = ["dep:rayon"]
profiling = ["dep:pprof"]
refine = []
symboldict = ["cc-analysis"]
trace_arith = []
trace_encoder = [
"dep:tracing",
"dep:tracing-subscriber",
]
tracing = [
"dep:tracing",
"dep:tracing-subscriber",
]
[lib]
name = "jbig2enc_rust"
path = "src/lib.rs"
[[bin]]
name = "halftone_tester"
path = "src/bin/halftone_tester.rs"
required-features = ["halftone_bin"]
[[bin]]
name = "tester"
path = "src/bin/tester.rs"
[[test]]
name = "comparator"
path = "tests/comparator.rs"
[[test]]
name = "encoder"
path = "tests/encoder.rs"
[[test]]
name = "encoder_pbm"
path = "tests/encoder_pbm.rs"
[[test]]
name = "mode_comparison"
path = "tests/mode_comparison.rs"
[[test]]
name = "multi_page_benchmark"
path = "tests/multi_page_benchmark.rs"
[[test]]
name = "pdf_variants"
path = "tests/pdf_variants.rs"
[[test]]
name = "perf_smoke"
path = "tests/perf_smoke.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.bitfrob]
version = "1.3"
[dependencies.bitvec]
version = "1.0"
[dependencies.bytemuck]
version = "1.0"
features = ["derive"]
[dependencies.byteorder]
version = "1.4"
[dependencies.chrono]
version = "0.4"
[dependencies.clap]
version = "4.5.41"
features = ["derive"]
[dependencies.derive_builder]
version = "0.20.2"
[dependencies.env_logger]
version = "0.10"
[dependencies.fax]
version = "0.2.6"
default-features = false
[dependencies.fnv]
version = "1.0"
[dependencies.glob]
version = "0.3"
[dependencies.image]
version = "0.25.9"
features = [
"png",
"jpeg",
]
optional = true
default-features = false
[dependencies.lazy_static]
version = "1.4"
[dependencies.log]
version = "0.4"
[dependencies.lopdf]
version = "0.39"
[dependencies.ndarray]
version = "0.16.1"
[dependencies.once_cell]
version = "1.19"
[dependencies.pprof]
version = "0.15"
features = ["flamegraph"]
optional = true
[dependencies.rayon]
version = "1.10"
optional = true
[dependencies.rustc-hash]
version = "1.1"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_derive]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.smallvec]
version = "1.15"
[dependencies.thiserror]
version = "1.0"
[dependencies.tinyvec]
version = "1.9"
[dependencies.tracing]
version = "0.1"
features = ["std"]
optional = true
[dependencies.tracing-subscriber]
version = "0.3.19"
features = [
"env-filter",
"fmt",
"registry",
"std",
]
optional = true
[dependencies.xxhash-rust]
version = "0.8"
features = ["xxh3"]
[dev-dependencies.hex-literal]
version = "1.0.0"
[dev-dependencies.tempfile]
version = "3.20"
[dev-dependencies.tracing]
version = "0.1"
features = ["std"]
[dev-dependencies.tracing-subscriber]
version = "0.3.19"
features = [
"env-filter",
"fmt",
"registry",
"std",
]
[dev-dependencies.which]
version = "8.0.0"
[build-dependencies.vergen]
version = "9.0.6"
features = ["build"]
default-features = false