cbz 1.0.0

Provide `cbz`, `cbt`, `cb7` reader and writers
docs.rs failed to build cbz-1.0.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: cbz-1.0.2

cbz

A Rust crate that allows you to read and write cbz, cbt, cb7 files, with ComicInfo.xml metadata.

Features flag

  • cbz: support for cbz reader and writer
  • cbt: support for cbt reader and writer
  • cb7: support for cb7 reader and writer
  • log: logging...
  • comicinfo: support for ComicInfo.xml metadata

None of these features is enabled by default.

Examples

Reading a cbz file

use cbz::read::{cbz::CbzReader, ComicBookReader};

fn main() {
    let mut cbz = CbzReader::from_path("fufuu-ijou-en-70.cbz").unwrap();
    /// get images names
    let pages = cbz.pages();
    for page in page {
      let file = cbz.get_page_by_path(&page).unwrap();
      /// DO whatever you want with it....
    }
}

Writing a cbz file

use cbz::write::{cbz::CbzWriter, ComicBookWriter, ComicBookWriterExt};

use std::{io::{BufWriter}, fs::File};

fn main() {
    let mut my_file = CbzWriter::new(BufWriter::new(File::create("new.cbz")?));
    my_file.add_page_from_path("first.jpg")?;
    my_file.add_page_from_path("second.jpg")?;
    let _ = my_file.finish()?;
}

Custom reader and writer implementations.

You can make your own reader via the cbz::read::ComicBookReader trait. For writer, check the cbz::read::ComicBookWriter trait.

References and acknowledgement:

License

MIT or Apache 2.0 (at your choice)