Files
fil/docs/snippets/rust/metadata/page_boundaries.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

797 B

use kreuzberg::{extract_file_sync, ExtractionConfig};

fn main() -> kreuzberg::Result<()> {
    let config = ExtractionConfig::default();
    let result = extract_file_sync("document.pdf", None, &config)?;

    let Some(pages) = &result.metadata.pages else {
        return Ok(());
    };
    let Some(boundaries) = &pages.boundaries else {
        return Ok(());
    };

    for boundary in boundaries.iter().take(3) {
        let page_text = &result.content[boundary.byte_start..boundary.byte_end];
        let preview_end = 100.min(page_text.len());

        println!("Page {}:", boundary.page_number);
        println!("  Byte range: {}-{}", boundary.byte_start, boundary.byte_end);
        println!("  Preview: {}...", &page_text[..preview_end]);
    }

    Ok(())
}