Как изменить последовательность страниц в PDF-файле?Python

Программы на Python
Ответить
Anonymous
 Как изменить последовательность страниц в PDF-файле?

Сообщение Anonymous »

Я хочу создать простую программу на Python, которая меняет порядок страниц в файле PDF, что позволило бы мне позже разместить две страницы (А5) на одном листе (А4) и распечатать документ в виде буклета на принтер.
В качестве примера, вот как страницы будут размещены на одном листе:
Изображение

Как видите, это означает, что нормальная последовательность страниц в файле PDF должна быть изменена. быть изменены соответствующим образом:
Исходная последовательность = 1, 2, 3, 4 ...
Новая последовательность = 2, 3, 4, 1 . ..
Я придумал решение ниже, которое действительно работает, но, к сожалению, оно пропускает последние страницы, если их нельзя разделить на четыре:
import pypdf

pdf = pypdf.PdfReader('test.pdf')
writer = pypdf.PdfWriter()

# Different sequences
sq_1 = range(1, len(pdf.pages), 4)
sq_2 = range(2, len(pdf.pages), 4)
sq_3 = range(3, len(pdf.pages), 4)
sq_4 = range(0, len(pdf.pages), 4)

# Iterate over pages
for a, b, c, d in zip(sq_1, sq_2, sq_3, sq_4):

# Copy pages to new file
writer.add_page(pdf.get_page(a))
writer.add_page(pdf.get_page(b))
writer.add_page(pdf.get_page(c))
writer.add_page(pdf.get_page(d))

# write new PDF file
output = open("output.pdf", "wb")
writer.write(output)

# close files
pdf.close()
output.close()
< /code>
Есть ли способ легко решить эту проблему? .

Подробнее здесь: https://stackoverflow.com/questions/793 ... a-pdf-file
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»