Страница PDF может объявлять поворот просмотра отдельно от координат содержимого. PDFRotate читает угол, добавляет точный поворот и записывает 0°, 90°, 180° или 270°. Это полезная узкая операция, но важно понимать её границу.
Ориентация — инструкция страницы
Поворот на 90° сообщает просмотрщику, как показывать страницу. Он не декодирует и не рисует заново каждую картинку. Текст, векторы, изображения и аннотации остаются содержимым страницы. Это избегает потерь растра, но просмотрщик, игнорирующий поворот, может вести себя иначе. Отражение — другая операция и не поддерживается.
Выбранный поворот добавляется
Если страница уже имеет 90° и вы добавляете 90° по часовой, результат — 180°. 270° плюс 90° даёт 0°. PDFRotate не заменяет все углы одним абсолютным значением: это испортило бы смешанную ориентацию. Поэтому план показывает число страниц и добавляемый поворот, а не обещает одинаковый итоговый угол.
Новый PDF нужно проверить отдельно
PDFRotate меняет записи поворота страниц и сериализует отдельный файл. Он не обещает совпадение байтов или сохранение всех функций документа. Метаданные, оглавление, метки, вложения, слои, tagged-структура, PDF/A или PDF/X, права, шифрование, история ревизий и цифровые подписи могут измениться или перестать действовать. Формы, аннотации, ссылки, области страниц и доступность могут зависеть от просмотрщика. Сохраните исходник, откройте результат в другом надёжном просмотрщике и проверьте каждую затронутую страницу.