Python: Converter Word em PDF

2023-12-18 02:32:37 zaki zou

Hoje em dia, os documentos digitais desempenham um papel significativo no nosso quotidiano, tanto no âmbito pessoal como profissional. Um desses formatos comuns é o Microsoft Word – usado para criar e editar documentos textuais. No entanto, pode chegar um momento em que você precisará converter seus arquivos do Word em um formato mais acessível universalmente, como PDF. Os PDFs oferecem vantagens como preservar a formatação, garantir a compatibilidade e manter a integridade dos documentos em diferentes dispositivos e sistemas operacionais. Neste artigo você aprenderá como converter Word para PDF em Python usando Spire.Doc for Python.

Instale Spire.Doc for Python

Este cenário requer Spire.Doc for Python e plum-dispatch v1.7.4. Eles podem ser facilmente instalados em seu VS Code por meio do seguinte comando pip.

pip install Spire.Doc

Se você não tiver certeza de como instalar, consulte este tutorial: Como instalar Spire.Doc for Python no código VS

Converta Doc ou Docx em PDF em Python

Spire.Doc for Python oferece o método Document.SaveToFile(string fileName, FileFormat fileFormat) que permite salvar Word como PDF, XPS, HTML, RTF, etc. Se você deseja apenas salvar seus documentos do Word como PDFs normais sem configurações adicionais, Siga os passos abaixo.

  • Crie um objeto Documento.
  • Carregue um documento do Word de amostra usando o método Document.LoadFromFile().
  • Salve o documento em PDF usando o método Doucment.SaveToFile().
  • Python
from spire.doc import *
from spire.doc.common import *

# Create word document
document = Document()

# Load a doc or docx file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

#Save the document to PDF
document.SaveToFile("output/ToPDF.pdf", FileFormat.PDF)
document.Close()

Python: Convert Word to PDF

Converta Word em PDF protegido por senha em Python

Para converter Word em um PDF protegido por senha, você pode utilizar o método Document.SaveToFile(string fileName, ToPdfParameterList paramList), onde o parâmetro ToPdfParameterList permite controlar o processo de conversão de um documento Word em formato PDF. Isso inclui opções como criptografar o documento durante a conversão. Aqui estão as etapas específicas para realizar esta tarefa.

  • Crie um objeto Documento.
  • Carregue um documento do Word de amostra usando o método Document.LoadFromFile().
  • Crie um objeto ToPdfParameterList, que é usado para definir opções de conversão.
  • Especifique a senha de abertura e a senha de permissão e defina ambas as senhas para o PDF gerado usando o método ToPdfParameterList.PdfSecurity.Encrypt().
  • Salve o documento do Word em PDF com senha usando o método Doucment.SaveToFile(string fileName, ToPdfParameterList paramList).
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
document = Document()

# Load a Word file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

# Create a ToPdfParameterList object
parameter = ToPdfParameterList()

# Specify open password and permission password
openPsd = "abc-123"
permissionPsd = "permission"

# Protect the PDF to be generated with open password and permission password
parameter.PdfSecurity.Encrypt(openPsd, permissionPsd, PdfPermissionsFlags.Default, PdfEncryptionKeySize.Key128Bit)

# Save the Word document to PDF
document.SaveToFile("output/ToPdfWithPassword.pdf", parameter)
document.Close()

Python: Convert Word to PDF

Converta Word em PDF com marcadores em Python

Adicionar marcadores a um documento pode melhorar sua legibilidade. Ao criar PDF a partir do Word, você pode manter os marcadores existentes ou criar novos com base nos títulos. Aqui estão as etapas para converter Word em PDF enquanto mantém os marcadores.

  • Crie um objeto Documento.
  • Carregue um arquivo Word usando o método Document.LoadFromFile().
  • Crie um objeto ToPdfParameterList, que é usado para definir opções de conversão.
  • Crie marcadores em PDF a partir dos títulos no Word definindo ToPdfParameterList.CreateWordBookmarksUsingHeadings como true.
  • Salve o documento em PDF com marcadores usando o método Doucment.SaveToFile(string fileName, ToPdfParameterList paramList).
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
document = Document()

# Load a Word file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

# Create a ToPdfParameterList object
parames = ToPdfParameterList()

# Create bookmarks from Word headings
parames.CreateWordBookmarksUsingHeadings = True

# Create bookmarks in PDF from existing bookmarks in Word
# parames.CreateWordBookmarks = True

# Save the document to PDF
document.SaveToFile("output/ToPdfWithBookmarks.pdf", FileFormat.PDF)
document.Close()

Python: Convert Word to PDF

Converta Word em PDF com fontes incorporadas em Python

Para garantir a aparência consistente de um documento PDF em qualquer dispositivo, você provavelmente precisará incorporar fontes no documento PDF gerado. A seguir estão as etapas para incorporar as fontes usadas em um documento do Word no PDF resultante.

  • Crie um objeto Documento.
  • Carregue um arquivo Word de amostra usando o método Document.LoadFromFile().
  • Crie um objeto ToPdfParameterList, que é usado para definir opções de conversão.
  • Incorpore fontes no PDF gerado por meio da propriedade ToPdfParameterList.IsEmbeddedAllFonts.
  • Salve o documento em PDF usando o método Doucment.SaveToFile(string fileName, ToPdfParameterList paramList).
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
document = Document()

# Load a Word file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

# Create a ToPdfParameterList object
parameter = ToPdfParameterList()

# Embed fonts in PDF
parameter.IsEmbeddedAllFonts = True

# Save the Word document to PDF
document.SaveToFile("output/EmbedFonts.pdf", parameter)
document.Close()

Python: Convert Word to PDF

Defina a qualidade da imagem ao converter Word em PDF em Python

Ao converter um documento Word para PDF, é importante considerar o tamanho do arquivo resultante, especialmente se ele contiver inúmeras imagens de alta qualidade. Você tem a opção de compactar a qualidade da imagem durante o processo de conversão. Para fazer isso, siga as etapas abaixo.

  • Crie um objeto Documento.
  • Carregue um arquivo Word de amostra usando o método Document.LoadFromFile().
  • Defina a qualidade da imagem através da propriedade Document.JPEGQuality.
  • Salve o documento em PDF usando o método Doucment.SaveToFile().
  • Python
from spire.doc import *
from spire.doc.common import *

# Create a Document object
document = Document()

# Load a Word file
document.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")

# Compress image to 40% of its original quality
document.JPEGQuality = 40

# Preserve original image quality
# document.JPEGQuality = 100

# Save the Word document to PDF
document.SaveToFile("output/SetImageQuality.pdf", FileFormat.PDF)
document.Close()

Solicite uma licença temporária

Se desejar remover a mensagem de avaliação dos documentos gerados ou se livrar das limitações de função, por favor solicite uma licença de teste de 30 dias para você mesmo.

Veja também