Gunakake API Optimasi Dokumen kanggo ngembangake piranti lunak bebas platform tingkat dhuwur ing Python. Iki minangka solusi sing kuat kanggo nyuda ukuran dokumen lan gambar nggunakake Python.
Nggawe file gedhe luwih cilik tanpa mundhut kualitas. Mbusak data sing ora perlu lan ora digunakake. Nyilikake ukuran Word file lan HTML ing Python. Python nyedhiyakake pangembang API terpadu kanggo ngoptimalake dokumen ing macem-macem format.
Python iki minangka solusi mandiri lan ora mbutuhake piranti lunak pihak katelu sing diinstal.
Efek maksimal bisa dipikolehi kanthi ngoptimalake gambar kanthi resolusi dhuwur, uga dokumen sing ngemot gambar kasebut. Python bakal mbantu sampeyan ngompres DOCX file, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.
Optimization saka dokumen tanpa mundhut saka kualitas digawe gampang karo 'Aspose.Words for Python via .NET'. Conto ing ngisor iki nuduhake carane nyilikake ukuran Word dokumen ing Python:
pip install aspose-words
Nyalin
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:
# Terserah pangembang kanggo milih perpustakaan kanggo kompresi gambar.
image = Image.open(shape.image_data.to_stream())
# ...
# Kompres gambar lan setel maneh menyang wangun.
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:
# Terserah pangembang kanggo milih perpustakaan kanggo kompresi gambar.
image = Image.open(shape.image_data.to_stream())
# ...
# Kompres gambar lan setel maneh menyang wangun.
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:
# Terserah pangembang kanggo milih perpustakaan kanggo kompresi gambar.
image = Image.open(shape.image_data.to_stream())
# ...
# Kompres gambar lan setel maneh menyang wangun.
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:
# Terserah pangembang kanggo milih perpustakaan kanggo kompresi gambar.
image = Image.open(shape.image_data.to_stream())
# ...
# Kompres gambar lan setel maneh menyang wangun.
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)):
# Setel ukuran kaca maksimal kanggo ngindhari skala gambar kaca saiki.
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;
Kita dadi tuan rumah paket Python ing repositori PyPi. Mangga tindakake langkah-langkah dening-instruksi carane nginstal "Aspose.Words for Python via .NET" kanggo lingkungan pangembang.
Paket iki kompatibel karo Python ≥3.5 lan <3.12. Yen sampeyan ngembangake piranti lunak kanggo Linux, deleng syarat tambahan kanggo gcc lan libpython ing Dokumentasi Produk.