Ovo je profesionalno rješenje za komprimiranje EPUB pomoću Python. Upotrijebite naš EPUB API za optimizaciju za razvoj softvera visoke razine, neovisnog o platformi u Pythonu. Isprobajte online besplatno!
Trenutačno ne prihvaćamo DOCX datoteke kao ulaz. Ali možemo proizvesti DOCX datoteke kao izlaz. Radujemo se punoj podršci za DOCX u bliskoj budućnosti.
Python knjižnica je samostalno rješenje i ne zahtijeva instaliran softver treće strane.
Smanjite DOCX datoteke bez gubitka kvalitete. Python biblioteka razvojnim programerima pruža integrirani API za optimizaciju DOCX sadržaja. DOCX optimizacija se događa kompresijom slika unutar DOCX datoteka, kao i uklanjanjem neiskorištenih podataka.
Kompresija e-knjiga bez gubitaka i optimizacija sadržaja olakšani uz 'Aspose.Words for Python via .NET'. Sljedeći primjer pokazuje kako optimizirati sadržaj DOCX datoteke u Python:
pip install aspose-words
Kopirati
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:
# Na programeru je da odabere biblioteku za kompresiju slika.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimirajte sliku i vratite je u oblik.
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:
# Na programeru je da odabere biblioteku za kompresiju slike.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimirajte sliku i vratite je u oblik.
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:
# Na programeru je da odabere biblioteku za kompresiju slika.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimirajte sliku i vratite je u oblik.
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:
# Na programeru je da odabere biblioteku za kompresiju slike.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimirajte sliku i vratite je u oblik.
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)):
# Postavite maksimalnu veličinu stranice kako biste izbjegli skaliranje slike trenutne stranice.
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;
Naše Python pakete hostiramo u PyPi repozitorijumima. Slijedite upute korak po korak o tome kako instalirati "Aspose.Words for Python via .NET" u svoje razvojno okruženje.
Ovaj paket je kompatibilan s Python ≥3.5 i <3.12. Ako razvijate softver za Linux, pogledajte dodatne zahtjeve za gcc i libpython u dokumentaciji proizvoda.
Možete optimizirati datoteke u mnogim drugim formatima datoteka: