PDF Export Aspose.Note FOSS para Python

Aspose.Note FOSS for Python supports exporting loaded .one documentos para PDF via Document.Save().O renderização PDF é fornecida pelo opcional . ReportLab Biblioteca. Este é o único formato de armazenamento atualmente implementado; outros formatos são utilizados para a criação de uma biblioteca, como: SaveFormat valores de aumento UnsupportedSaveFormatException.


Precondições

Instalar a biblioteca com o [pdf] Extra para o ReportLab:

pip install aspose-note

Verificar:

python -c "from aspose.note import Document, SaveFormat; print('aspose-note ready')"

Exportação básica

Exportar todas as páginas de um documento para um único ficheiro PDF:

from aspose.note import Document, SaveFormat

doc = Document("MyNotes.one")
doc.Save("output.pdf", SaveFormat.Pdf)

As páginas aparecem no PDF na mesma ordem em que apareçam no DOM.


Usando PdfSaveOptions

PdfSaveOptions O que é mais importante, a Comissão tem de se pronunciar sobre o assunto. SaveFormat Enum:

from aspose.note import Document
from aspose.note.saving import PdfSaveOptions

opts = PdfSaveOptions()

doc = Document("MyNotes.one")
doc.Save("output.pdf", opts)

Nota sobre: PageIndex / PageCount:Estes campos existem em: PdfSaveOptions mas são Não transmitido ao exportador PDF na versão 26.3.1 O documento inteiro é sempre exportado.


Referência de PdfSaveOptions

PropriedadeTipo de veículo:PadrãoDescrição:
PageIndexint0O campo existe mas… Não transmitido ao exportador PDF na versão 26.3.1 (não tem efeito)
PageCount`intNone`None

Exportação de lotes

O PDF é um formato de exportação para esta biblioteca. O modelo do documento aceita o código-fonte “PDF” e a versão “Document”. .one arquivos como entrada e salva para PDF como saída; a direção reversa (PDF como input) não é suportada.

Exportar todos os produtos de exportação. .one Arquivo num diretório em PDF:

from pathlib import Path
from aspose.note import Document, SaveFormat

input_dir = Path("./notes")
output_dir = Path("./pdfs")
output_dir.mkdir(parents=True, exist_ok=True)

for one_file in sorted(input_dir.glob("*.one")):
    try:
        doc = Document(str(one_file))
        out = output_dir / one_file.with_suffix(".pdf").name
        doc.Save(str(out), SaveFormat.Pdf)
        print(f"OK  {one_file.name} -> {out.name}")
    except Exception as exc:
        print(f"ERR {one_file.name}: {exc}")

Carregar do Stream, Salvar para Arquivo

Combinar carregamento baseado em fluxo com saída de PDF baseada em arquivo:

from pathlib import Path
from aspose.note import Document, SaveFormat

one_bytes = Path("MyNotes.one").read_bytes()

import io
doc = Document(io.BytesIO(one_bytes))
doc.Save("output.pdf", SaveFormat.Pdf)

Obter PDF Bytes na memória

Document.Save() Aceita um fluxo binário diretamente: não é necessário nenhum arquivo temporário.:

import io
from aspose.note import Document, SaveFormat
from aspose.note.saving import PdfSaveOptions

doc = Document("MyNotes.one")

buf = io.BytesIO()
doc.Save(buf, PdfSaveOptions())
pdf_bytes = buf.getvalue()
print(f"PDF size: {len(pdf_bytes)} bytes")

Valores de SaveFormat suportados

SaveFormatEstatuto da União Europeia
SaveFormat.PdfImplementado através do ReportLab; aumenta o valor de cada um dos créditos. ValueError se o manipulador de formato não estiver registado

Erros comuns

Erro de identificaçãoCausa da morteCorreção
ImportError: No module named 'reportlab'[pdf] extra não instaladopip install "aspose-note[pdf]"
UnsupportedSaveFormatExceptionSaveFormat não PDF usadoUsar apenas o formato PDF
IncorrectPasswordExceptionCódigo . um arquivoUse um arquivo não criptografado .
FileNotFoundErrorEntrada . Um caminho erradoVerificar o caminho com: Path.exists()
Erro de permissão na saídaDirectório de saída não pode ser escritoVerificar as permissões do diretório de saída

Ver também:

 Português