///|
fn pdf_merge_max_version(
documents : ArrayView[PdfDocument],
) -> (Int, Int) raise @core.PdfError {
if documents.length() == 0 {
raise PageTreeExpected
}
let mut major = documents[0].major
let mut minor = documents[0].minor
for i in 1.. major ||
(candidate_major == major && candidate_minor > minor) {
major = candidate_major
minor = candidate_minor
}
}
(major, minor)
}
///|
fn pdf_merge_name(text : String) -> @core.PdfName {
@core.pdf_name_of_bytes(@ascii.encode(text))
}
///|
let pdf_merge_root_key_name : @core.PdfName = pdf_merge_name("/Root")
///|
fn pdf_merge_root_key() -> @core.PdfName {
pdf_merge_root_key_name
}
///|
let pdf_merge_acroform_key_name : @core.PdfName = pdf_merge_name("/AcroForm")
///|
fn pdf_merge_acroform_key() -> @core.PdfName {
pdf_merge_acroform_key_name
}
///|
let pdf_merge_open_action_key_name : @core.PdfName = pdf_merge_name(
"/OpenAction",
)
///|
fn pdf_merge_open_action_key() -> @core.PdfName {
pdf_merge_open_action_key_name
}
///|
let pdf_merge_ocproperties_key_name : @core.PdfName = pdf_merge_name(
"/OCProperties",
)
///|
fn pdf_merge_ocproperties_key() -> @core.PdfName {
pdf_merge_ocproperties_key_name
}
///|
let pdf_merge_outlines_key_name : @core.PdfName = pdf_merge_name("/Outlines")
///|
fn pdf_merge_outlines_key() -> @core.PdfName {
pdf_merge_outlines_key_name
}
///|
let pdf_merge_page_labels_key_name : @core.PdfName = pdf_merge_name(
"/PageLabels",
)
///|
fn pdf_merge_page_labels_key() -> @core.PdfName {
pdf_merge_page_labels_key_name
}
///|
let pdf_merge_pages_key_name : @core.PdfName = pdf_merge_name("/Pages")
///|
fn pdf_merge_pages_key() -> @core.PdfName {
pdf_merge_pages_key_name
}
///|
let pdf_merge_struct_tree_root_key_name : @core.PdfName = pdf_merge_name(
"/StructTreeRoot",
)
///|
fn pdf_merge_struct_tree_root_key() -> @core.PdfName {
pdf_merge_struct_tree_root_key_name
}
///|
let pdf_merge_type_key_name : @core.PdfName = pdf_merge_name("/Type")
///|
fn pdf_merge_type_key() -> @core.PdfName {
pdf_merge_type_key_name
}
///|
let pdf_merge_dests_key_name : @core.PdfName = pdf_merge_name("/Dests")
///|
fn pdf_merge_dests_key() -> @core.PdfName {
pdf_merge_dests_key_name
}
///|
let pdf_merge_dest_key_name : @core.PdfName = pdf_merge_name("/Dest")
///|
fn pdf_merge_dest_key() -> @core.PdfName {
pdf_merge_dest_key_name
}
///|
let pdf_merge_fields_key_name : @core.PdfName = pdf_merge_name("/Fields")
///|
fn pdf_merge_fields_key() -> @core.PdfName {
pdf_merge_fields_key_name
}
///|
let pdf_merge_af_key_name : @core.PdfName = pdf_merge_name("/AF")
///|
fn pdf_merge_af_key() -> @core.PdfName {
pdf_merge_af_key_name
}
///|
let pdf_merge_class_map_key_name : @core.PdfName = pdf_merge_name("/ClassMap")
///|
fn pdf_merge_class_map_key() -> @core.PdfName {
pdf_merge_class_map_key_name
}
///|
let pdf_merge_id_tree_key_name : @core.PdfName = pdf_merge_name("/IDTree")
///|
fn pdf_merge_id_tree_key() -> @core.PdfName {
pdf_merge_id_tree_key_name
}
///|
let pdf_merge_info_key_name : @core.PdfName = pdf_merge_name("/Info")
///|
fn pdf_merge_info_key() -> @core.PdfName {
pdf_merge_info_key_name
}
///|
let pdf_merge_k_key_name : @core.PdfName = pdf_merge_name("/K")
///|
fn pdf_merge_k_key() -> @core.PdfName {
pdf_merge_k_key_name
}
///|
let pdf_merge_names_key_name : @core.PdfName = pdf_merge_name("/Names")
///|
fn pdf_merge_names_key() -> @core.PdfName {
pdf_merge_names_key_name
}
///|
let pdf_merge_ns_key_name : @core.PdfName = pdf_merge_name("/NS")
///|
fn pdf_merge_ns_key() -> @core.PdfName {
pdf_merge_ns_key_name
}
///|
let pdf_merge_parent_key_name : @core.PdfName = pdf_merge_name("/P")
///|
fn pdf_merge_parent_key() -> @core.PdfName {
pdf_merge_parent_key_name
}
///|
let pdf_merge_pronunciation_lexicon_key_name : @core.PdfName = pdf_merge_name(
"/PronunciationLexicon",
)
///|
fn pdf_merge_pronunciation_lexicon_key() -> @core.PdfName {
pdf_merge_pronunciation_lexicon_key_name
}
///|
let pdf_merge_parent_tree_key_name : @core.PdfName = pdf_merge_name(
"/ParentTree",
)
///|
fn pdf_merge_parent_tree_key() -> @core.PdfName {
pdf_merge_parent_tree_key_name
}
///|
fn PdfDocument::pdf_merge_catalog(
self : PdfDocument,
) -> @syntax.PdfObject raise @core.PdfError {
self.catalog()
}
///|
let pdf_merge_role_map_key_name : @core.PdfName = pdf_merge_name("/RoleMap")
///|
fn pdf_merge_role_map_key() -> @core.PdfName {
pdf_merge_role_map_key_name
}
///|
let pdf_merge_s_key_name : @core.PdfName = pdf_merge_name("/S")
///|
fn pdf_merge_s_key() -> @core.PdfName {
pdf_merge_s_key_name
}
///|
let pdf_merge_namespaces_key_name : @core.PdfName = pdf_merge_name(
"/Namespaces",
)
///|
fn pdf_merge_namespaces_key() -> @core.PdfName {
pdf_merge_namespaces_key_name
}
///|
let pdf_merge_struct_parent_key_name : @core.PdfName = pdf_merge_name(
"/StructParent",
)
///|
fn pdf_merge_struct_parent_key() -> @core.PdfName {
pdf_merge_struct_parent_key_name
}
///|
let pdf_merge_struct_parents_key_name : @core.PdfName = pdf_merge_name(
"/StructParents",
)
///|
fn pdf_merge_struct_parents_key() -> @core.PdfName {
pdf_merge_struct_parents_key_name
}
///|
let pdf_merge_namedict_ap_key_name : @core.PdfName = pdf_merge_name("/AP")
///|
let pdf_merge_namedict_javascript_key_name : @core.PdfName = pdf_merge_name(
"/JavaScript",
)
///|
let pdf_merge_namedict_templates_key_name : @core.PdfName = pdf_merge_name(
"/Templates",
)
///|
let pdf_merge_namedict_ids_key_name : @core.PdfName = pdf_merge_name("/IDS")
///|
let pdf_merge_namedict_urls_key_name : @core.PdfName = pdf_merge_name("/URLS")
///|
let pdf_merge_namedict_embedded_files_key_name : @core.PdfName = pdf_merge_name(
"/EmbeddedFiles",
)
///|
let pdf_merge_namedict_alternate_presentations_key_name : @core.PdfName = pdf_merge_name(
"/AlternatePresentations",
)
///|
let pdf_merge_namedict_renditions_key_name : @core.PdfName = pdf_merge_name(
"/Renditions",
)
///|
let pdf_merge_namedict_tree_key_names : Array[@core.PdfName] = [
pdf_merge_namedict_ap_key_name, pdf_merge_namedict_javascript_key_name, pdf_merge_pages_key_name,
pdf_merge_namedict_templates_key_name, pdf_merge_namedict_ids_key_name, pdf_merge_namedict_urls_key_name,
pdf_merge_namedict_embedded_files_key_name, pdf_merge_namedict_alternate_presentations_key_name,
pdf_merge_namedict_renditions_key_name,
]
///|
fn pdf_merge_namedict_tree_keys() -> ArrayView[@core.PdfName] {
pdf_merge_namedict_tree_key_names
}
///|
let pdf_merge_document_name : @core.PdfName = pdf_merge_name("/Document")