INNER CODE UNIT · Rust

preview_pdf

abenz1267/walker · src/preview/mod.rs:350

    fn preview_pdf(&self, file_path: &str) -> Result<(), Box<dyn std::error::Error>> {
        let uri = format!("file://{file_path}");
        let document =
            Document::from_file(&uri, None).map_err(|e| format!("Failed to load PDF: {e}"))?;

        let pdf = GtkBox::new(Orientation::Vertical, 0);

        if let Some(page) = document.page(0) {
            match self.render_pdf_page(&page) {
                Ok(page_widget) => pdf.append(&page_widget),
                Err(e) => eprintln!("Failed to render PDF page: {e}"),
            }
        }

        std::mem::drop(document);

        let scrolled = ScrolledWindow::new();
        scrolled.set_child(Some(&pdf));

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…