Gebruik onze Document Optimization API om platformonafhankelijke software op hoog niveau in Python te ontwikkelen. Dit is een krachtige oplossing om de document- en afbeeldingsgrootte te verkleinen met Python.
Grote bestanden kleiner maken zonder kwaliteitsverlies. Verwijder onnodige en ongebruikte gegevens. Verklein de grootte van Word en HTML bestanden in Python. Onze Python bibliotheek biedt ontwikkelaars een geïntegreerde API om documenten in verschillende formaten te optimaliseren.
Deze Python bibliotheek is een stand-alone oplossing en vereist geen installatie van software van derden.
Het maximale effect kan worden bereikt door het optimaliseren van afbeeldingen met een hoge resolutie, evenals documenten die dergelijke afbeeldingen bevatten. Onze Python bibliotheek helpt u bij het comprimeren van DOCX, DOC, RTF, ODT, EPUB, HTML, JPG en PNG bestanden.
Optimalisatie van documenten zonder kwaliteitsverlies gemakkelijk gemaakt met 'Aspose.Words for Python via .NET'. Het volgende voorbeeld laat zien hoe u de grootte van een Word document in Python:
pip install aspose-words
Kopiëren
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:
# Het is aan de ontwikkelaar om de bibliotheek voor beeldcompressie te kiezen.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimeer de afbeelding en zet deze terug in de vorm.
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:
# Het is aan de ontwikkelaar om de bibliotheek voor beeldcompressie te kiezen.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimeer de afbeelding en zet deze terug in de vorm.
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:
# Het is aan de ontwikkelaar om de bibliotheek voor beeldcompressie te kiezen.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimeer de afbeelding en zet deze terug in de vorm.
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:
# Het is aan de ontwikkelaar om de bibliotheek voor beeldcompressie te kiezen.
image = Image.open(shape.image_data.to_stream())
# ...
# Comprimeer de afbeelding en zet deze terug in de vorm.
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)):
# Stel de maximale paginagrootte in om te voorkomen dat de huidige pagina-afbeelding wordt geschaald.
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;
We hosten onze Python pakketten in PyPi- repositories. Volg de stapsgewijze instructies voor het installeren van "Aspose.Words for Python via .NET" in uw ontwikkelomgeving.
Dit pakket is compatibel met Python ≥3.5 en <3.12. Als u software voor Linux ontwikkelt, bekijk dan de aanvullende vereisten voor gcc en libpython in Productdocumentatie.