Поворот страниц PDF с использованием Python

Этот топик описывает, как обновить или изменить ориентацию страниц в существующем PDF-файле программно с помощью Python.

Изменение Ориентации Страницы

Aspose.PDF для Python через .NET поддерживает отличные функции, такие как изменение ориентации страницы с альбомной на портретную и наоборот. Чтобы изменить ориентацию страницы, установите MediaBox страницы, используя следующий фрагмент кода. Вы также можете изменить ориентацию страницы, установив угол поворота с помощью метода ‘rotate’.


    import aspose.pdf as ap

    doc = ap.Document(input_pdf)
    for page in doc.pages:
        r = page.media_box
        newHeight = r.width
        newWidth = r.height
        newLLX = r.llx
        #  Мы должны переместить страницу вверх, чтобы компенсировать изменение размера страницы
        # (нижняя граница страницы - это 0,0, и информация обычно размещается с
        #  верхней части страницы. Поэтому мы перемещаем нижнюю границу вверх на разницу между
        #  старой и новой высотой.
        newLLY = r.lly + (r.height - newHeight)
        page.media_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
        # Иногда нам также нужно установить CropBox (если он был установлен в оригинальном файле)
        page.crop_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)

        # Установка угла поворота страницы
        page.rotate = ap.Rotation.ON90

    # Сохранить выходной файл
    doc.save(output_pdf)