if args.page_range and len(args.page_range) > i:
range_string = args.page_range[i]
start_page, end_page = parse_page_range(range_string, reader.pages)
- for page_num in range(start_page, end_page):
- page = reader.pages[page_num]
+ new_page_num = 0
+ for old_page_num in range(start_page, end_page):
+ new_page_num += 1
+ page = reader.pages[new_page_num]
pages_to_add += [page]
- print("read in %s page number %d" % (input_file, page_num+1))
+ print("-i, -p: read in %s page number %d as new page %d" % (input_file, new_page_num+1, new_page_num))
# rotate page canvas
if args.rotate:
page.add_transformation(pypdf.Transformation().translate(tx=-a4_width/2, ty=-a4_height/2))
page.add_transformation(pypdf.Transformation().rotate(-90))
page.add_transformation(pypdf.Transformation().translate(tx=a4_width/2, ty=a4_height/2))
+ print("-r: rotating (by 90°) page", rotate)
# normalize all pages to portrait A4
for page in pages_to_add:
crops = initial_split[0]
start_page, end_page = parse_page_range(page_range, pages_to_add)
crop_left, crop_bottom, crop_right, crop_top = [float(x) * points_per_cm for x in crops.split(',')]
+ print("-c: to pages %d to %d applying crops: left %dcm, bottom %dcm, right %dcm, top %dcm" % (start_page + 1, end_page, crop_left, crop_bottom, crop_right, crop_top))
cropped_width = a4_width - crop_left - crop_right
cropped_height = a4_height - crop_bottom - crop_top
zoom = 1
writer.add_page(new_page)
i = 0
front_page = not front_page
+
+# write and close
for file in opened_files:
file.close()
-
with open(args.output_file, 'wb') as output_file:
writer.write(output_file)