micropdf 0.16.0

A pure Rust PDF library - A pure Rust PDF library with fz_/pdf_ API compatibility
//! Enhanced PDF Manipulation Features — compatibility shim.
//!
//! All types and functions are re-exported from `crate::micropdf`.
//! The canonical implementation lives in `micropdf::enhanced_*` modules.

pub mod attachments {
    pub use crate::micropdf::enhanced_attachments::*;
}
pub mod bookmark_writer {
    pub use crate::micropdf::enhanced_bookmark_writer::*;
}
pub mod bookmarks {
    pub use crate::micropdf::enhanced_bookmarks::*;
}
pub mod content {
    pub use crate::micropdf::enhanced_content::*;
}
pub mod content_stream {
    pub use crate::micropdf::enhanced_content_stream::*;
}
pub mod drawing {
    pub use crate::micropdf::enhanced_drawing::*;
}
pub mod error {
    pub use crate::micropdf::enhanced_error::*;
}
pub mod metadata {
    pub use crate::micropdf::enhanced_metadata::*;
}
pub mod object_stream {
    pub use crate::micropdf::enhanced_object_stream::*;
}
pub mod optimization {
    pub use crate::micropdf::enhanced_optimization::*;
}
pub mod overlay {
    pub use crate::micropdf::enhanced_overlay::*;
}
pub mod page_copy {
    pub use crate::micropdf::enhanced_page_copy::*;
}
pub mod page_merge {
    pub use crate::micropdf::enhanced_page_merge::*;
}
pub mod page_ops {
    pub use crate::micropdf::enhanced_page_ops::*;
}
pub mod page_resize {
    pub use crate::micropdf::enhanced_page_resize::*;
}
pub mod pdf_reader {
    pub use crate::micropdf::enhanced_pdf_reader::*;
}
pub mod pdf_utils {
    pub use crate::micropdf::enhanced_pdf_utils::*;
}
pub mod writer {
    pub use crate::micropdf::enhanced_writer::*;
}

pub mod barcodes {
    pub use crate::micropdf::enhanced_barcodes::*;
}
pub mod charts {
    pub use crate::micropdf::enhanced_charts::*;
}
pub mod compliance {
    pub use crate::micropdf::enhanced_compliance::*;
}
pub mod compliance_auto_fix {
    pub use crate::micropdf::enhanced_compliance_auto_fix::*;
}
pub mod forms_advanced {
    pub use crate::micropdf::enhanced_forms_advanced::*;
}
pub mod html_to_pdf {
    pub use crate::micropdf::enhanced_html_to_pdf::*;
}
pub mod interactive {
    pub use crate::micropdf::enhanced_interactive::*;
}
pub mod performance {
    pub use crate::micropdf::enhanced_performance::*;
}
pub mod platypus {
    pub use crate::micropdf::enhanced_platypus::*;
}
pub mod print_production {
    pub use crate::micropdf::enhanced_print_production::*;
}
pub mod typography {
    pub use crate::micropdf::enhanced_typography::*;
}

pub mod encryption {
    pub use crate::micropdf::enhanced_encryption::*;
}
pub mod signatures {
    pub use crate::micropdf::enhanced_signatures::*;
}

pub mod booklet {
    pub use crate::micropdf::enhanced_booklet::*;
}
pub mod nup {
    pub use crate::micropdf::enhanced_nup::*;
}
pub mod page_boxes {
    pub use crate::micropdf::enhanced_page_boxes::*;
}
pub mod poster {
    pub use crate::micropdf::enhanced_poster::*;
}
pub mod validation {
    pub use crate::micropdf::enhanced_validation::*;
}

pub mod flowables {
    pub use crate::micropdf::enhanced_flowables::*;
}
pub mod table {
    pub use crate::micropdf::enhanced_table::*;
}
pub mod toc {
    pub use crate::micropdf::enhanced_toc::*;
}

pub use error::{EnhancedError, Result};

/// Enhanced module version
pub const VERSION: &str = env!("CARGO_PKG_VERSION");

/// Check if enhanced features are available
pub fn is_available() -> bool {
    true
}

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn test_enhanced_available() {
        assert!(is_available());
    }

    #[test]
    fn test_version() {
        assert!(VERSION.contains('.'));
    }
}