Det här är en professionell lösning för att komprimera JPG med Python. Använd vårt JPG optimerings API för att utveckla plattformsoberoende programvara på hög nivå i Python. Prova det gratis online!
Gör stora JPG filer mindre utan kvalitetsförlust. Radera onödig och oanvänd data. Krympa storleken på en JPG fil i kod. Python biblioteket ger utvecklare ett integrerat API för att optimera JPG innehåll.
Python biblioteket är en fristående lösning och kräver ingen programvara från tredje part installerad.
Förlustfri komprimering och djup innehållsoptimering på ett enkelt sätt med 'Aspose.Words for Python via .NET'. Följande exempel visar hur man optimerar innehållet i en JPG fil i Python:
pip install aspose-words
Kopiera
import aspose.words as aw
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
shape = builder.InsertImage("Input.jpg")
save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.JPEG)
save_options.jpeg_quality = 50
shape.get_shape_renderer().save("Output.jpg", save_options)
import aspose.words as aw
doc = aw.Document("Input.jpg")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimera bilden och ställ tillbaka den till formen.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.PdfSaveOptions
save_options.cache_background_graphics = true
doc.save("Output.jpg", save_options)
import aspose.words as aw
doc = aw.Document("Input.jpg")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimera bilden och ställ tillbaka den till formen.
shape.image_data.set_image("yourCompressedImage")
doc.save("Output.jpg")
import aspose.words as aw
doc = aw.Document("Input.jpg")
doc.cleanup()
shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)]
for shape in shapes:
if shape.isImage:
# Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
image = Image.open(shape.image_data.to_stream())
# ...
# Komprimera bilden och ställ tillbaka den till formen.
shape.image_data.set_image("yourCompressedImage")
save_options = aw.saving.OoxmlSaveOptions
save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM
doc.save("Output.jpg", save_options)
import aspose.words as aw
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
shape = builder.InsertImage("Input.jpg")
save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.JPEG)
save_options.jpeg_quality = 50
shape.get_shape_renderer().save("Output.jpg", 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.jpg", '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)):
# Ställ in maximal sidstorlek för att undvika skalning av den aktuella sidbilden.
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.jpg", save_options)
def set_page_size(page_setup, width, height):
page_setup.page_width = width;
page_setup.page_height = height;
Vi är värd för våra Python paket i PyPi- förråd. Följ steg-för-steg-instruktionerna för hur du installerar "Aspose.Words for Python via .NET" i din utvecklarmiljö.
Detta paket är kompatibelt med Python ≥3.5 och <3.12. Om du utvecklar programvara för Linux, vänligen ta en titt på ytterligare krav för gcc och libpython i produktdokumentation.
Du kan optimera filer i många andra filformat: