Tämä on ammattimainen ratkaisu DOCX:n pakkaamiseen Python. Käytä DOCX optimointisovellusliittymäämme korkean tason, alustasta riippumattomien ohjelmistojen kehittämiseen Pythonissa. Kokeile verkossa ilmaiseksi!
Pienennä suuria DOCX tiedostoja laadun heikkenemättä. Poista tarpeettomat ja käyttämättömät tiedot. Pienennä DOCX tiedoston kokoa koodissa. Python kirjasto tarjoaa kehittäjille integroidun API DOCX sisällön optimoimiseksi.
Python kirjasto on erillinen ratkaisu, joka ei vaadi kolmannen osapuolen ohjelmiston asentamista.
Häviötön pakkaus ja syvällinen sisällön optimointi on tehty helpoksi 'Aspose.Words for Python via .NET'. Seuraava esimerkki osoittaa, kuinka DOCX tiedoston Python sisältö optimoidaan:
pip install aspose-words
Kopio
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:
# Kehittäjä voi valita kuvan pakkauskirjaston.
image = Image.open(shape.image_data.to_stream())
# ...
# Pakkaa kuva ja aseta se takaisin muotoon.
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:
# Kehittäjä voi valita kuvan pakkauskirjaston.
image = Image.open(shape.image_data.to_stream())
# ...
# Pakkaa kuva ja aseta se takaisin muotoon.
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:
# Kehittäjä voi valita kuvan pakkauskirjaston.
image = Image.open(shape.image_data.to_stream())
# ...
# Pakkaa kuva ja aseta se takaisin muotoon.
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:
# Kehittäjä voi valita kuvan pakkauskirjaston.
image = Image.open(shape.image_data.to_stream())
# ...
# Pakkaa kuva ja aseta se takaisin muotoon.
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)):
# Aseta sivun enimmäiskoko välttääksesi nykyisen sivun kuvan skaalaus.
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 pakettejamme PyPi- varastoissa. Noudata vaiheittaisia ohjeita, kuinka "Aspose.Words for Python via .NET" kehittäjäympäristöösi.
Tämä paketti on yhteensopiva Python ≥3.5 ja <3.12 kanssa. Jos kehität ohjelmistoja Linuxille, tutustu gcc ja libpython lisävaatimuksiin tuotedokumentaatiosta.
Voit optimoida tiedostoja monissa muissa tiedostomuodoissa: