Expand description
PDF Optional Content (layers).
Layers — formally Optional Content Groups (OCGs) in ISO 32000-2 §8.11 — let a PDF mark slices of its content for selective visibility: CAD layers, watermarks, multilingual annotations, print-only or screen-only overlays, and so on.
This module exposes the read-only metadata side of the OCG model:
- One
Layerper OCG, carrying the layer’s name, intent, lock state, default visibility, full/Usagesub-dict, and any/CreatorInfohint.
Hierarchy (/Order), alternate configurations, runtime visibility
overrides, OCMD policies, and /AS automatic-state rules land in
later phases. Phase 1 is just the per-layer record so consumers can
enumerate what a document contains.
§Quick reference
use stet_pdf_reader::PdfDocument;
let data = std::fs::read("layered.pdf")?;
let doc = PdfDocument::from_bytes(&data)?;
for layer in doc.layers() {
println!(
"{} (id={}, locked={}, default_visible={})",
layer.name, layer.ocg_id, layer.locked, layer.default_visible
);
}Re-exports§
pub use configuration::AutoStateEvent;pub use configuration::AutoStateRule;pub use configuration::BaseState;pub use configuration::Configuration;pub use configuration::LayerTree;pub use configuration::LayerTreeNode;pub use configuration::ListMode;pub use metadata::CreatorInfo;pub use metadata::ExportUsage;pub use metadata::LanguageUsage;pub use metadata::Layer;pub use metadata::LayerIntent;pub use metadata::LayerUsage;pub use metadata::PageElementSubtype;pub use metadata::PrintUsage;pub use metadata::UsageState;pub use metadata::UserUsage;pub use metadata::ViewUsage;pub use metadata::ZoomUsage;
Modules§
- configuration
- Optional Content Group hierarchy and configurations.
- metadata
- Per-layer metadata (Optional Content Groups).
- ocmd
- Optional Content Membership Dictionary (OCMD) parsing.
Structs§
- Layer
Set - Per-render override of OCG visibility.
Enums§
- Membership
Policy /Ppolicy on an OCMD.- OcgVisibility
- Visibility predicate for an
DisplayElement::OcgGroup. - Render
Intent - Which audience a render is for.
- Visibility
Expr - Boolean visibility expression from an OCMD
/VEarray.
Functions§
- layer_
set_ for - Build a
LayerSetthat reflects the document’s default configuration with every/ASautomatic-state rule for the givenRenderIntentapplied. - layer_
set_ from_ configuration - Build a
LayerSetpopulated from one of the document’s alternate configurations (/OCProperties /Configs). - layer_
set_ from_ document - Build a
LayerSetpopulated from aPdfDocument’s default configuration (/OCProperties /D).