Χρησιμοποιήστε το Document Optimization API για να αναπτύξετε λογισμικό υψηλού επιπέδου, ανεξάρτητο από πλατφόρμα στην Python. Αυτή είναι μια ισχυρή λύση για τη μείωση του μεγέθους εγγράφου και εικόνας χρησιμοποιώντας Python.
Κάντε τα μεγάλα αρχεία μικρότερα χωρίς απώλεια ποιότητας. Διαγράψτε τα περιττά και αχρησιμοποίητα δεδομένα. Μειώστε το μέγεθος των Word αρχείων και HTML στο Python. Η βιβλιοθήκη μας Python παρέχει στους προγραμματιστές ένα ενσωματωμένο API για τη βελτιστοποίηση εγγράφων σε διάφορες μορφές.
Αυτή η βιβλιοθήκη Python είναι μια αυτόνομη λύση και δεν απαιτεί εγκατάσταση λογισμικού τρίτων.
Το μέγιστο αποτέλεσμα μπορεί να επιτευχθεί με τη βελτιστοποίηση εικόνων υψηλής ανάλυσης, καθώς και εγγράφων που περιέχουν τέτοιες εικόνες. Η βιβλιοθήκη μας Python θα σας βοηθήσει να συμπιέσετε αρχεία DOCX, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.
Η βελτιστοποίηση των εγγράφων χωρίς απώλεια ποιότητας έγινε εύκολη με 'Aspose.Words for Python via .NET'. Το ακόλουθο παράδειγμα δείχνει πώς να συρρικνώσετε το μέγεθος ενός εγγράφου του Word στο Python:
pip install aspose-words
αντίγραφο
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:
# Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για τη συμπίεση εικόνας.
image = Image.open(shape.image_data.to_stream())
# ...
# Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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:
# Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για τη συμπίεση εικόνας.
image = Image.open(shape.image_data.to_stream())
# ...
# Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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:
# Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για συμπίεση εικόνας.
image = Image.open(shape.image_data.to_stream())
# ...
# Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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:
# Εναπόκειται στον προγραμματιστή να επιλέξει τη βιβλιοθήκη για τη συμπίεση εικόνας.
image = Image.open(shape.image_data.to_stream())
# ...
# Συμπιέστε την εικόνα και επαναφέρετέ την στο σχήμα.
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)):
# Ρυθμίστε το μέγιστο μέγεθος σελίδας για να αποφύγετε την κλιμάκωση της τρέχουσας εικόνας σελίδας.
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;
Φιλοξενούμε τα πακέτα Python μας στα αποθετήρια PyPi. Ακολουθήστε τις οδηγίες βήμα προς βήμα σχετικά με τον τρόπο εγκατάστασης του "Aspose.Words for Python via .NET" στο περιβάλλον προγραμματιστή σας.
Αυτό το πακέτο είναι συμβατό με Python ≥3.5 και <3.12. Εάν αναπτύσσετε λογισμικό για Linux, ρίξτε μια ματιά στις πρόσθετες απαιτήσεις για gcc και libpython στην Τεκμηρίωση προϊόντος.