Domande frequenti
Qual è il modello di licenza per Aspose.PDF FOSS per Python?
Aspose.PDF FOSS per Python è con licenza MIT. È gratuito da utilizzare in prodotti commerciali e non commerciali, senza chiave di attivazione, limiti di chiamata API o accordo commerciale richiesto.
Posso usarlo in prodotti commerciali?
Sì. La licenza MIT consente l’uso, la modifica e la ridistribuzione in prodotti commerciali senza royalty o attribuzione oltre l’avviso di licenza.
Come installo Aspose.PDF FOSS per Python?
Installa con il comando seguente:
git clone https://github.com/aspose-pdf-foss/Aspose-PDF-FOSS-for-Python.git
cd Aspose-PDF-FOSS-for-Python
pip install -e .Verifica l’installazione:
import aspose_pdf
print("aspose_pdf OK")Quali versioni di Python sono supportate? Ci sono dipendenze native?
La libreria richiede Python 3.11 o successive. È un pacchetto pure-Python — non sono necessari moduli di estensione compilati né dipendenze native (C/C++) durante l’installazione o l’esecuzione.
Quali formati può Aspose.PDF FOSS per Python leggere e scrivere?
I documenti PDF nativi sono il formato principale: Document apre e salva file PDF direttamente. Oltre al PDF, la libreria può esportare un documento in HTML, Markdown o SVG passando un valore DocFormat a Document.save(), e può importare contenuti sorgente Html, Cdr, Svg, Cgm e Ofd tramite le classi corrispondenti *LoadOptions (HtmlLoadOptions, CdrLoadOptions, CgmLoadOptions, OfdLoadOptions). Le pagine PDF renderizzate possono anche essere esportate in immagini raster tramite RasterizedPage.
Posso esportare un PDF in HTML, Markdown o SVG?
Sì, per l’esportazione in HTML e Markdown; passa il membro enum DocFormat corrispondente a Document.save(), opzionalmente associato a HtmlSaveOptions o MarkdownSaveOptions per controllare i dettagli del layout come split_into_pages o extract_images.
import aspose_pdf
doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.save("output.html", save_format=aspose_pdf.DocFormat.HTML)Come creo un nuovo PDF da zero?
Istanzia Document, aggiungi pagine con doc.pages.add(), inserisci contenuti con Page.add_text() o Page.add_image(), quindi chiama Document.save():
import aspose_pdf
doc = aspose_pdf.Document()
page = doc.pages.add()
page.add_text("Monthly Report", x=72, y=720, font_size=18)
doc.save("report.pdf")Come rendere una pagina PDF in un’immagine?
Chiama Document.save_page_as_image() con un indice di pagina a base zero e un percorso di destinazione; i DPI controllano la risoluzione dell’output:
import aspose_pdf
doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.save_page_as_image(0, "page1.png", dpi=150)Come estrarre testo da un PDF?
Usa TextAbsorber (o TextFragmentAbsorber), visita il documento, quindi leggi il testo raccolto:
import aspose_pdf
doc = aspose_pdf.Document()
doc.load_from("input.pdf")
absorber = aspose_pdf.TextAbsorber()
absorber.visit(doc)
print(absorber.text)Come crittografare un documento PDF?
Chiama Document.encrypt() con una password utente, una password proprietario e un valore di permessi:
import aspose_pdf
doc = aspose_pdf.Document()
doc.load_from("input.pdf")
doc.encrypt(user_password="user-pw", owner_password="owner-pw", permissions=0)
doc.save("encrypted.pdf")Document.decrypt(password) rimuove la crittografia da un documento già aperto, e Document.change_passwords() ruota entrambe le password in loco.
Come leggere o riempire i valori del campo AcroForm?
Accedi alla proprietà form del documento e itera Form.fields, oppure aggiungi nuovi campi con Form.add_text_field(), Form.add_checkbox() e metodi correlati:
import aspose_pdf
doc = aspose_pdf.Document()
doc.load_from("submitted_form.pdf")
for field in doc.form.fields:
print(field.name, "=", field.value)Ci sono limitazioni note nella versione corrente?
Sì. Cinque metodi su quattro classi sono stub non implementati nella versione corrente: Shading._color_at, FontSource.get_font_definitions (e le sue sottoclassi FileFontSource, FolderFontSource, MemoryFontSource, SystemFontSource, che ereditano lo stesso stub), DataSource.read_bytes and DataSource.write_bytes (e le loro sottoclassi FileDataSource, StreamDataSource, ByteArrayDataSource), e PdfPlugin.process. Chiamarli genera NotImplementedError invece di eseguire l’operazione documentata. Vedi il Troubleshooting pagina per i dettagli e le soluzioni alternative.
Dove si trovano il codice sorgente e il tracker dei problemi?
Il codice sorgente e il tracker dei problemi sono disponibili su https://github.com/aspose-pdf-foss/Aspose-PDF-FOSS-for-Python.