Konvertering av bildfiler via Python-språk

Konvertera bilder, metafiler och andra för att bygga Python bildbehandlingsprogram.

 

Aspose.Imaging för Python via .NET API innehåller olika bildbehandlingsfunktioner för programmerare. Programmerare kan använda den i källkod för att konvertera raster- och vektorbilder, såsom foton och bilder till PSD, PDF, APNG, BMP, TIFF, GIF, PNG, DICOM, HTML5 CANVAS, WEBP, WMF, EMF, SVG, JPG, JPEG2000 och andra bildformat. API innehåller inte bara funktioner för konverteringar, utan också olika filter, grafikbearbetning, minnesstrategier, beskära, ändra storlek, justera och andra använda operationer.

Hur man konverterar bild till BMP, JPG, PNG

Genom att använda Aspose.Imaging för Python via .NET API, är korsformatkonvertering enkel process. Här är några vanliga exempel som bild till bmp, bild till jpg, bild till png. Processen är att ladda bilden med Image.Load . Skapa ett objekt av valda bildformatalternativ med angivna inställningar. I slutet anropar du Save Method .

Python-kod för att bearbeta konvertering av bilder

from aspose.imaging import *
from aspose.imaging.fileformats.tiff.enums import *
from aspose.imaging.fileformats.jpeg2000 import *
from aspose.imaging.fileformats.png import *
from aspose.imaging.imageoptions import *
from aspose.pycore import is_assignable
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
def process_convertion():
import_formats, export_formats = get_available_image_formats()
for import_key, import_value in import_formats.items():
format_ext = import_key
input_file = os.path.join(templates_folder, f"template.{format_ext}")
if not os.path.exists(input_file):
continue
for export_key, export_value in export_formats.items():
output_file = os.path.join(templates_folder, f"convert-{format_ext}-to-{export_key}.{export_key}")
print("Processing conversion:" + output_file)
with Image.load(input_file) as image:
export_options = export_value.clone()
if is_assignable(image, VectorImage):
rasterization_options = import_value
rasterization_options.page_width = float(image.width)
rasterization_options.page_height = float(image.height)
export_options.vector_rasterization_options = rasterization_options
image.save(output_file, export_options)
if delete_output:
os.remove(output_file)
def get_available_image_formats():
obj_init = Jpeg2000Options()
obj_init.codec = Jpeg2000Codec.J2K
obj_init2 = Jpeg2000Options()
obj_init2.codec = Jpeg2000Codec.JP2
obj_init3 = PngOptions()
obj_init3.color_type = PngColorType.TRUECOLOR_WITH_ALPHA
obj_init4 = {}
obj_init4["bmp"] = BmpOptions()
obj_init4["gif"] = GifOptions()
obj_init4["dicom"] = DicomOptions()
obj_init4["jpg"] = JpegOptions()
obj_init4["jpeg"] = JpegOptions()
obj_init4["jpeg2000"] = Jpeg2000Options()
obj_init4["j2k"] = obj_init
obj_init4["jp2"] = obj_init2
obj_init4["png"] = obj_init3
obj_init4["apng"] = ApngOptions()
obj_init4["tiff"] = TiffOptions(TiffExpectedFormat.DEFAULT)
obj_init4["tif"] = TiffOptions(TiffExpectedFormat.DEFAULT)
obj_init4["tga"] = TgaOptions()
obj_init4["webp"] = WebPOptions()
obj_init4["ico"] = IcoOptions(FileFormat.PNG, 24)
raster_formats_that_support_export_and_import = obj_init4
obj_init5 = EmfOptions()
obj_init5.compress = True
obj_init6 = WmfOptions()
obj_init6.compress = True
obj_init7 = SvgOptions()
obj_init7.compress = True
obj_init8 = {}
obj_init8["emf"] = (EmfOptions(), EmfRasterizationOptions())
obj_init8["svg"] = (SvgOptions(), SvgRasterizationOptions())
obj_init8["wmf"] = (WmfOptions(), WmfRasterizationOptions())
obj_init8["emz"] = (obj_init5, EmfRasterizationOptions())
obj_init8["wmz"] = (obj_init6, WmfRasterizationOptions())
obj_init8["svgz"] = (obj_init7, SvgRasterizationOptions())
vector_formats_that_support_export_and_import = obj_init8
obj_init9 = DxfOptions()
obj_init9.text_as_lines = True
obj_init9.convert_text_beziers = True
obj_init10 = {}
obj_init10["psd"] = PsdOptions()
obj_init10["dxf"] = obj_init9
obj_init10["pdf"] = PdfOptions()
obj_init10["html"] = Html5CanvasOptions()
formats_only_for_export = obj_init10
obj_init11 = {}
obj_init11["djvu"] = None
obj_init11["dng"] = None
obj_init11["dib"] = None
formats_only_for_import = obj_init11
obj_init12 = {}
obj_init12["eps"] = EpsRasterizationOptions()
obj_init12["cdr"] = CdrRasterizationOptions()
obj_init12["cmx"] = CmxRasterizationOptions()
obj_init12["otg"] = OtgRasterizationOptions()
obj_init12["odg"] = OdgRasterizationOptions()
vector_formats_only_for_import = obj_init12
# Get total set of formats to what we can export images
export_formats = {k: v[0] for k, v in vector_formats_that_support_export_and_import.items()}
export_formats.update(formats_only_for_export)
export_formats.update(raster_formats_that_support_export_and_import)
# Get total set of formats that can be loaded
import_formats = {k : VectorRasterizationOptions() for k in formats_only_for_import}
import_formats.update(vector_formats_only_for_import)
import_formats.update({k : v[1] for k, v in vector_formats_that_support_export_and_import.items()})
return import_formats, export_formats
# run
process_convertion()

Hur man konverterar rasterbild till PDF-dokument

Processen för konvertering av rasterbilder till PDF är samma som för korskonvertering av bilder, förutom att API tillhandahåller PdfOptions för specifik PDF inställningar.

Python-källkod för att konvertera rasterbilder till PDF

from aspose.imaging import Image
from aspose.imaging.fileformats.pdf import PdfDocumentInfo
from aspose.imaging.imageoptions import PdfOptions
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
output_file = os.path.join(data_dir, "output.pdf")
with Image.load(os.path.join(data_dir, "template.gif")) as image:
options = PdfOptions()
options.pdf_document_info = PdfDocumentInfo()
image.save(output_file, options);
# delete if necessary
if delete_output:
os.remove(output_file)

Hur man konverterar SVG-bild till Raster BMP, PNG, JPG

Konvertering av SVG-bild är densamma, Ladda SVG-bild, Använd nödvändiga bildsparalternativ och anropa Spara-metoden. Bild-API tillhandahåller SvgRasterizationOptions för att ställa in PageWidth, PageHeight och rasterbilder använder deras VectorRasterizationOptions-egenskap för initiering och för att få SvgRasterizationOptions-alternativ.

Python-kod för att konvertera SVG-bildrasterbilder

from aspose.imaging import Image
from aspose.imaging.fileformats.svg import SvgImage
from aspose.imaging.imageoptions import PngOptions, SvgRasterizationOptions
import os
import aspose.pycore as aspycore
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
data_dir = templates_folder
output_file = os.path.join(data_dir, "ConvertingSVGToRasterImages_out.png")
# Load the image and cast it as SvgImage
with aspycore.as_of(Image.load(os.path.join(data_dir, "template.svg")), SvgImage) as image:
# Create an instance of relevant raster image options and Save the results to disk
png_options = PngOptions();
svg_options = SvgRasterizationOptions();
svg_options.page_width = 100.0;
svg_options.page_height = 200.0;
png_options.vector_rasterization_options = svg_options;
image.save(output_file, png_options);
# delete if necessary
if delete_output:
os.remove(output_file)

Alla bildformat som stöds för att konvertera från att använda Python-språket

Nedan presenteras en fullständig lista över bildformat som du kan konvertera till:


Alla bildformat som stöds för att konvertera till att använda Python-språket

Nedan presenteras en fullständig lista över bildformat som du kan konvertera från att använda Aspose.Imaging för Python via .NET: