Šis ir profesionāls risinājums, lai saspiestu EPUB, izmantojot Python. Izmantojiet mūsu EPUB optimizācijas API, lai Python izstrādātu augsta līmeņa, no platformas neatkarīgu programmatūru. Izmēģiniet to tiešsaistē bez maksas!
Pašlaik mēs nepieņemam DOCX failus kā ievadi. Bet mēs varam izveidot DOCX failus kā izvadi. Mēs ceram uz pilnu DOCX atbalstu tuvākajā nākotnē.
Python bibliotēka ir atsevišķs risinājums, un tai nav jāinstalē trešās puses programmatūra.
Samaziniet DOCX failus, nezaudējot kvalitāti. Python bibliotēka nodrošina izstrādātājiem integrētu API, lai optimizētu DOCX saturu. DOCX optimizācija notiek, saspiežot attēlus DOCX failos, kā arī noņemot neizmantotos datus.
E-grāmatu bezzudumu saspiešana un satura optimizācija ir vienkārša, izmantojot 'Aspose.Words for Python via .NET'. Šis piemērs parāda, kā optimizēt DOCX faila saturu Python:
pip install aspose-words
Kopēt
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:
# Izstrādātājs var izvēlēties attēlu saspiešanas bibliotēku.
image = Image.open(shape.image_data.to_stream())
# ...
# Saspiediet attēlu un iestatiet to atpakaļ formā.
shape.image_data.set_image("yourCompressedImage")
doc.save("Output.epub")
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:
# Attēlu saspiešanas bibliotēkas izvēle ir atkarīga no izstrādātāja.
image = Image.open(shape.image_data.to_stream())
# ...
# Saspiediet attēlu un iestatiet to atpakaļ formā.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.PdfSaveOptions
save_options.cache_background_graphics = true
doc.save("Output.epub", 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:
# Izstrādātājs var izvēlēties attēlu saspiešanas bibliotēku.
image = Image.open(shape.image_data.to_stream())
# ...
# Saspiediet attēlu un iestatiet to atpakaļ formā.
shape.image_data.set_image("yourCompressedImage")
doc.save("Output.epub")
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:
# Attēlu saspiešanas bibliotēkas izvēle ir atkarīga no izstrādātāja.
image = Image.open(shape.image_data.to_stream())
# ...
# Saspiediet attēlu un iestatiet to atpakaļ formā.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.OoxmlSaveOptions
save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM
doc.save("Output.epub", 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.epub", 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)):
# Iestatiet maksimālo lapas izmēru, lai izvairītos no pašreizējās lapas attēla mērogošanas.
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.epub", save_options)
def set_page_size(page_setup, width, height):
page_setup.page_width = width;
page_setup.page_height = height;
Mēs mitinām Python pakotnes PyPi krātuvēs. Lūdzu, izpildiet detalizētos norādījumus par to, kā izstrādātāja vidē 'Aspose.Words for Python via .NET'.
Šī pakotne ir saderīga ar Python ≥3.5 un <3.12. Ja izstrādājat programmatūru operētājsistēmai Linux, lūdzu, skatiet papildu prasības gcc un libpython sadaļā Produkta dokumentācija.
Varat optimizēt failus daudzos citos failu formātos: