Usa la nostra API di ottimizzazione dei documenti per sviluppare software di alto livello indipendente dalla piattaforma in Python. Questa è una potente soluzione per ridurre le dimensioni di documenti e immagini utilizzando Python.
Riduci file di grandi dimensioni senza perdita di qualità. Elimina i dati non necessari e non utilizzati. Riduci le dimensioni dei Word file e HTML in Python. La nostra libreria Python fornisce agli sviluppatori un'API integrata per ottimizzare i documenti in vari formati.
Questa libreria Python è una soluzione autonoma e non richiede l'installazione di software di terze parti.
L'effetto massimo può essere ottenuto ottimizzando le immagini ad alta risoluzione, nonché i documenti che contengono tali immagini. La nostra libreria Python ti aiuterà a comprimere file DOCX, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.
Ottimizzazione dei documenti senza perdita di qualità semplificata con 'Aspose.Words for Python via .NET'. L'esempio seguente mostra come ridurre le dimensioni di un documento di Word in Python:
pip install aspose-words
Copia
import aspose.words as aw
doc = aw.Document("Input.docx")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimi l'immagine e riportala alla forma.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.OoxmlSaveOptions
save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM
doc.save("Output.docx", save_options)
import aspose.words as aw
doc = aw.Document("Input.docx")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimi l'immagine e riportala alla forma.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.PdfSaveOptions
save_options.cache_background_graphics = true
doc.save("Output.docx", save_options)
import aspose.words as aw
doc = aw.Document("Input.docx")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimi l'immagine e riportala alla forma.
shape.image_data.set_image("yourCompressedImage")
doc.save("Output.docx")
import aspose.words as aw
doc = aw.Document("Input.docx")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Spetta allo sviluppatore scegliere la libreria per la compressione delle immagini.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimi l'immagine e riportala alla forma.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.OoxmlSaveOptions
save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM
doc.save("Output.docx", save_options)
import aspose.words as aw
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
shape = builder.InsertImage("Input.docx")
save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.DOCX)
shape.get_shape_renderer().save("Output.docx", save_options)
import aspose.words as aw
renderer = aw.pdf2word.fixedformats.PdfFixedRenderer()
pdf_read_options = aw.pdf2word.fixedformats.PdfFixedOptions()
pdf_read_options.image_format = aw.pdf2word.fixedformats.FixedImageFormat.JPEG
pdf_read_options.jpeg_quality = 50
with open ("Input.docx", 'rb') as pdf_stream:
pages_stream = renderer.save_pdf_as_images(pdf_stream, pdf_read_options);
builder = aw.DocumentBuilder()
for i in range(0, len(pages_stream)):
# Imposta la dimensione massima della pagina per evitare il ridimensionamento dell'immagine della pagina corrente.
max_page_dimension = 1584
page_setup = builder.page_setup
set_page_size(page_setup, max_page_dimension, max_page_dimension)
page_image = builder.insert_image(pages_stream[i])
set_page_size(page_setup, page_image.width, page_image.height)
page_setup.top_margin = 0
page_setup.left_margin = 0
page_setup.bottom_margin = 0
page_setup.right_margin = 0
if i != len(pages_stream) - 1:
builder.insert_break(aw.BreakType.SECTION_BREAK_NEW_PAGE)
save_options = aw.saving.PdfSaveOptions()
save_options.cache_background_graphics = true
builder.document.save("Output.docx", save_options)
def set_page_size(page_setup, width, height):
page_setup.page_width = width;
page_setup.page_height = height;
Ospitiamo i nostri pacchetti Python nei repository PyPi. Segui le istruzioni passo passo su come installare "Aspose.Words for Python via .NET" nel tuo ambiente di sviluppo.
Questo pacchetto è compatibile con Python ≥3.5 e <3.12. Se sviluppi software per Linux, dai un'occhiata ai requisiti aggiuntivi per gcc e libpython nella documentazione del prodotto.