Preserve_actions:true where appropriate

This commit is contained in:
John Whitington 2025-03-18 17:18:37 +00:00
parent 964c1a679a
commit c1e71f2066
4 changed files with 6 additions and 6 deletions

View File

@ -363,7 +363,7 @@ let add_bookmark_title filename use_title pdf =
else else
Filename.basename filename Filename.basename filename
in in
let marks = Pdfmarks.read_bookmarks ~preserve_actions:false pdf in let marks = Pdfmarks.read_bookmarks ~preserve_actions:true pdf in
let page1objnum = let page1objnum =
match Pdfpage.page_object_number pdf 1 with match Pdfpage.page_object_number pdf 1 with
None -> error "add_bookmark_title: page not found" None -> error "add_bookmark_title: page not found"
@ -381,7 +381,7 @@ let add_bookmark_title filename use_title pdf =
Pdfmarks.add_bookmarks newmarks pdf Pdfmarks.add_bookmarks newmarks pdf
let bookmarks_open_to_level n pdf = let bookmarks_open_to_level n pdf =
let marks = Pdfmarks.read_bookmarks ~preserve_actions:false pdf in let marks = Pdfmarks.read_bookmarks ~preserve_actions:true pdf in
let newmarks = let newmarks =
map map
(fun m -> {m with Pdfmarks.isopen = m.Pdfmarks.level < n}) (fun m -> {m with Pdfmarks.isopen = m.Pdfmarks.level < n})

View File

@ -3451,7 +3451,7 @@ let stem s =
let fast_write_split_pdfs let fast_write_split_pdfs
?(names=[]) enc splitlevel original_filename sq spec main_pdf pagenums pdf_pages ?(names=[]) enc splitlevel original_filename sq spec main_pdf pagenums pdf_pages
= =
let marks = Pdfmarks.read_bookmarks ~preserve_actions:false main_pdf in let marks = Pdfmarks.read_bookmarks ~preserve_actions:true main_pdf in
iter2 iter2
(fun number pagenums -> (fun number pagenums ->
let pdf = Pdfpage.pdf_of_pages ~retain_numbering:args.retain_numbering ~process_struct_tree:args.process_struct_trees main_pdf pagenums in let pdf = Pdfpage.pdf_of_pages ~retain_numbering:args.retain_numbering ~process_struct_tree:args.process_struct_trees main_pdf pagenums in

View File

@ -846,7 +846,7 @@ let stamp ~process_struct_tree relative_to_cropbox position topline midline fast
let over = if process_struct_tree then mark_all_as_artifact (remove_struct_tree over) else over in let over = if process_struct_tree then mark_all_as_artifact (remove_struct_tree over) else over in
let prefix = Pdfpage.shortest_unused_prefix pdf in let prefix = Pdfpage.shortest_unused_prefix pdf in
Pdfpage.add_prefix over prefix; Pdfpage.add_prefix over prefix;
let marks = Pdfmarks.read_bookmarks ~preserve_actions:false pdf in let marks = Pdfmarks.read_bookmarks ~preserve_actions:true pdf in
let marks_refnumbers = Pdf.page_reference_numbers pdf in let marks_refnumbers = Pdf.page_reference_numbers pdf in
let pdf = Pdfmarks.remove_bookmarks pdf in let pdf = Pdfmarks.remove_bookmarks pdf in
let over = Pdfmarks.remove_bookmarks over in let over = Pdfmarks.remove_bookmarks over in
@ -923,7 +923,7 @@ let combine_pages ~process_struct_tree fast under over scaletofit over_is_under
begin Pdf.remove_unreferenced pdf; Pdfwrite.pdf_to_file pdf n end begin Pdf.remove_unreferenced pdf; Pdfwrite.pdf_to_file pdf n end
in in
Pdfpage.add_prefix over (Pdfpage.shortest_unused_prefix under); Pdfpage.add_prefix over (Pdfpage.shortest_unused_prefix under);
let marks_under, marks_over = Pdfmarks.read_bookmarks ~preserve_actions:false under, Pdfmarks.read_bookmarks ~preserve_actions:false over in let marks_under, marks_over = Pdfmarks.read_bookmarks ~preserve_actions:true under, Pdfmarks.read_bookmarks ~preserve_actions:true over in
let under, over = equalize_pages under over in let under, over = equalize_pages under over in
let under_length, over_length = Pdfpage.endpage under, Pdfpage.endpage over in let under_length, over_length = Pdfpage.endpage under, Pdfpage.endpage over in
if under_length <> over_length then if under_length <> over_length then

View File

@ -50,7 +50,7 @@ let add_page_as_xobject pdf range page name =
let stamp_as_xobject pdf range over = let stamp_as_xobject pdf range over =
let prefix = Pdfpage.shortest_unused_prefix pdf in let prefix = Pdfpage.shortest_unused_prefix pdf in
Pdfpage.add_prefix over prefix; Pdfpage.add_prefix over prefix;
let marks = Pdfmarks.read_bookmarks ~preserve_actions:false pdf in let marks = Pdfmarks.read_bookmarks ~preserve_actions:true pdf in
let marks_refnumbers = Pdf.page_reference_numbers pdf in let marks_refnumbers = Pdf.page_reference_numbers pdf in
let pdf = Pdfmarks.remove_bookmarks pdf in let pdf = Pdfmarks.remove_bookmarks pdf in
let over = Pdfmarks.remove_bookmarks over in let over = Pdfmarks.remove_bookmarks over in