1#![forbid(unsafe_code)]
2#![doc = "PDF editing and writing for rpdfium — a faithful Rust port of PDFium."]
3pub mod cpdf_creator;
24pub(crate) mod cpdf_creator_encrypt;
25pub(crate) mod cpdf_creator_incremental;
26pub(crate) mod cpdf_creator_serialize;
27
28pub(crate) mod cpdf_contentstream_write_utils;
30pub mod cpdf_pagecontentgenerator;
31
32pub(crate) mod cpdf_pagecontentmanager;
34pub(crate) mod cpdf_pageorganizer;
35
36pub mod cpdf_npagetooneexporter;
38pub mod cpdf_pageexporter;
39
40pub mod cpdf_flateencoder;
42
43pub mod fpdf_annot;
45pub mod fpdf_edit;
46pub mod fpdf_formfill;
47pub mod fpdf_ppo;
48
49pub(crate) mod widget_ap;
51
52pub mod document;
54pub mod error;
55pub mod font_reg;
56pub mod object_ctx;
57pub mod page_object;
58
59pub use cpdf_creator::{WriteOptions, write_full};
60pub use cpdf_creator_incremental::write_incremental;
61pub use cpdf_creator_serialize::{CountingWriter, PdfWrite};
62pub use cpdf_npagetooneexporter::{NupPageSettings, export_npage_to_one};
63pub use cpdf_pageexporter::{export_pages, export_pages_from_range};
64pub use document::{EditDocument, FormFieldSpec};
65pub use error::{EditError, EditResult};
66pub use font_reg::{FontRegistration, FontType, GlyphPath, GlyphSegment, GlyphSegmentType};
67pub use fpdf_annot::{AnnotationBuilder, AnnotationSpec, AnnotationUpdates};
68pub use fpdf_ppo::parse_page_range;
69pub use object_ctx::{AnnotObjectCtx, AnnotObjectCtxMut, PageObjectCtx, PageObjectCtxMut};
70pub use page_object::{
71 ClipPath, ContentMark, FillMode, FormObject, ImageMetadata, ImageObject, MarkParamValue,
72 PageObject, PathObject, PathSegment, TextObject, parse_jpeg_dimensions, path_ops_to_segments,
73 segments_to_path_ops,
74};
75pub use rpdfium_graphics::{BlendMode, DashPattern};