Skip to main content

extract/
extract.rs

1//! Smoke test: `cargo run -p fleischwolf-pdf --example extract -- file.pdf`
2
3fn main() {
4    let path = std::env::args().nth(1).expect("usage: extract <file.pdf>");
5    let bytes = std::fs::read(&path).expect("read pdf");
6    match fleischwolf_pdf::PdfDocument::open(&bytes, None) {
7        Ok(doc) => {
8            for (i, page) in doc.pages.iter().enumerate() {
9                println!(
10                    "--- page {} ({:.0}x{:.0}, {} cells) ---",
11                    i + 1,
12                    page.width,
13                    page.height,
14                    page.cells.len()
15                );
16                for c in page.cells.iter().take(8) {
17                    println!(
18                        "  [{:.0},{:.0},{:.0},{:.0}] {:?}",
19                        c.l, c.t, c.r, c.b, c.text
20                    );
21                }
22            }
23        }
24        Err(e) => eprintln!("ERROR: {e}"),
25    }
26}