Rotacionar Páginas de PDF Usando Python
Este tópico descreve como atualizar ou alterar a orientação das páginas em um arquivo PDF existente programaticamente com Python.
Alterar Orientação da Página
O Aspose.PDF para Python via .NET suporta ótimos recursos como alterar a orientação da página de paisagem para retrato e vice-versa. Para alterar a orientação da página, defina o MediaBox da página usando o seguinte trecho de código. Você também pode alterar a orientação da página definindo o ângulo de rotação usando o método ‘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
# Precisamos mover a página para cima para compensar a mudança no tamanho da página
# (a borda inferior da página é 0,0 e as informações geralmente são colocadas a partir do
# topo da página. É por isso que movemos a borda inferior para cima na diferença entre
# a altura antiga e a nova.
newLLY = r.lly + (r.height - newHeight)
page.media_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
# Às vezes, também precisamos definir o CropBox (se ele foi definido no arquivo original)
page.crop_box = ap.Rectangle(newLLX, newLLY, newLLX + newWidth, newLLY + newHeight, True)
# Definindo o ângulo de rotação da página
page.rotate = ap.Rotation.ON90
# Salvar arquivo de saída
doc.save(output_pdf)
{ “@context”: “http://schema.org”, “@type”: “SoftwareApplication”, “name”: “Aspose.PDF para Python via .NET Library”, “image”: “https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg", “url”: “https://www.aspose.com/", “publisher”: { “@type”: “Organization”, “name”: “Aspose.PDF”, “url”: “https://products.aspose.com/pdf", “logo”: “https://www.aspose.cloud/templates/aspose/img/products/pdf/aspose_pdf-for-python-net.svg", “alternateName”: “Aspose”, “sameAs”: [ “https://facebook.com/aspose.pdf/”, “https://twitter.com/asposepdf”, “https://www.youtube.com/channel/UCmV9sEg_QWYPi6BJJs7ELOg/featured”, “https://www.linkedin.com/company/aspose”, “https://stackoverflow.com/questions/tagged/aspose”, “https://aspose.quora.com/”, “https://aspose.github.io/” ], “contactPoint”: [ { “@type”: “ContactPoint”, “telephone”: “+1 903 306 1676”, “contactType”: “vendas”, “areaServed”: “US”, “availableLanguage”: “en” }, { “@type”: “ContactPoint”, “telephone”: “+44 141 628 8900”, “contactType”: “vendas”, “areaServed”: “GB”, “availableLanguage”: “en” }, { “@type”: “ContactPoint”, “telephone”: “+61 2 8006 6987”, “contactType”: “vendas”, “areaServed”: “AU”, “availableLanguage”: “en” } ] }, “offers”: { “@type”: “Offer”, “price”: “1199”, “priceCurrency”: “USD” }, “applicationCategory”: “Biblioteca de Manipulação de PDF para Python”, “downloadUrl”: “https://www.nuget.org/packages/Aspose.PDF/", “operatingSystem”: “Windows, MacOS, Linux”, “screenshot”: “https://docs.aspose.com/pdf/python-net/create-pdf-document/example.png", “softwareVersion”: “2022.1”, “aggregateRating”: { “@type”: “AggregateRating”, “ratingValue”: “5”, “ratingCount”: “16” } }