diff --git a/cpdfcommand.ml b/cpdfcommand.ml index 8c847e8..da8acc2 100644 --- a/cpdfcommand.ml +++ b/cpdfcommand.ml @@ -4576,7 +4576,7 @@ let go () = args.fast (prerotate (parse_pagespec underpdf "all") underpdf) (prerotate (parse_pagespec overpdf "all") overpdf) - false false true) + false false) | Some Encrypt -> let pdf = get_single_pdf args.op false in let pdf = Cpdfsqueeze.recompress_pdf pdf diff --git a/cpdfpage.ml b/cpdfpage.ml index 43d69e2..ff11f18 100644 --- a/cpdfpage.ml +++ b/cpdfpage.ml @@ -915,7 +915,8 @@ let equalize_pages under over = else under, over -let combine_pages ~process_struct_tree fast under over scaletofit swap equalize = +let combine_pages ~process_struct_tree fast under over scaletofit swap = + let over, under = if swap then under, over else over, under in let over = if process_struct_tree then mark_all_as_artifact (remove_struct_tree over) else over in let debug_combine_pages = false in let debug_pdf pdf n = @@ -924,7 +925,7 @@ let combine_pages ~process_struct_tree fast under over scaletofit swap equalize in Pdfpage.add_prefix over (Pdfpage.shortest_unused_prefix under); let marks_under, marks_over = Pdfmarks.read_bookmarks under, Pdfmarks.read_bookmarks over in - let under, over = if equalize then equalize_pages under over else under, over in + let under, over = equalize_pages under over in let under_length, over_length = Pdfpage.endpage under, Pdfpage.endpage over in if under_length <> over_length then raise (Pdf.PDFError "combine_pages: not of equal length") diff --git a/cpdfpage.mli b/cpdfpage.mli index ac4a335..438893c 100644 --- a/cpdfpage.mli +++ b/cpdfpage.mli @@ -91,7 +91,7 @@ the same number of pages as the shorter file. If [scaletofit] is true, the [over] file will be scaled to fit. If [swap] is true, [over] and [under] are swapped. If [fast] is true, the PDFs are assumed to be well-formed and no fixes are done. *) -val combine_pages : process_struct_tree:bool -> bool -> Pdf.t -> Pdf.t -> bool -> bool -> bool -> Pdf.t +val combine_pages : process_struct_tree:bool -> bool -> Pdf.t -> Pdf.t -> bool -> bool -> Pdf.t (** [stamp relative_to_cropbox position topline midline fast scale_to_fit isover range over pdf] stamps the first page of [over] over each page of the PDF. The arguments have the same meaning as in