HTML JPG PDF XML APNG
Aspose.Imaging  cho Python
PSD

Sử dụng Python để chuyển đổi hình ảnh từ GIF sang PSD

Tạo ứng dụng Python để chuyển đổi hình ảnh và ảnh GIF sang PSD thông qua API máy chủ

Cách chuyển đổi hình ảnh và ảnh từ GIF sang PSD bằng Python

Chuyển đổi tập tin hình ảnh từ định dạng này sang định dạng khác là một nhiệm vụ phổ biến mà mọi nhà thiết kế đồ họa đều gặp phải. Hiệu quả và sự xuất sắc trong việc chuyển đổi tệp không chỉ ảnh hưởng đến tốc độ hoàn thành mà còn đóng vai trò quan trọng trong việc đánh giá chất lượng công việc tổng thể. Về nguồn hình ảnh, chúng thường đòi hỏi phải chuyển đổi sang các định dạng thay thế phù hợp hơn cho việc in ấn hoặc phân phối trực tuyến. Hình ảnh được tạo bằng trình chỉnh sửa đồ họa có thể ở định dạng vector. Trong những trường hợp như vậy, để xuất bản trang web, nó phải trải qua quá trình rasterization và được lưu ở định dạng raster. Bạn có tùy chọn chuyển đổi hình ảnh ở định dạng không nén để có chất lượng vượt trội hoặc lưu nó sang định dạng nén không mất dữ liệu để giảm thiểu kích thước tệp. Đối với các trường hợp bắt buộc phải giảm kích thước tệp, như trong ứng dụng trang web, có khả năng chuyển đổi sang định dạng nén bị mất dữ liệu. Các thuật toán nén dữ liệu chuyên dụng cho hình ảnh có thể giảm đáng kể kích thước tệp trong khi vẫn duy trì chất lượng hình ảnh ở mức chấp nhận được, đảm bảo tải hình ảnh nhanh chóng. Để chuyển đổi hình ảnh và ảnh từ GIF sang PSD, chúng tôi sẽ sử dụng Aspose.Imaging for Python via .NET API là API chuyển đổi và thao tác hình ảnh giàu tính năng, mạnh mẽ và dễ sử dụng cho nền tảng Python. Bạn có thể cài đặt nó bằng lệnh sau từ lệnh hệ thống của mình.

Dòng lệnh hệ thống

>> pip install aspose-imaging-python-net

Các bước chuyển đổi GIF thành PSD qua Python

Các nhà phát triển có thể dễ dàng tải và chuyển đổi tệp GIF sang PSD chỉ trong một vài dòng mã.

  • Tải tệp GIF bằng phương thức Image.Load
  • Tạo và đặt phiên bản của lớp con bắt buộc của ImageOptionsBase (ví dụ: BmpOptions, PngOptions, v.v.)
  • Gọi phương thức Image.Save
  • Chuyển đường dẫn tệp có phần mở rộng PSD & đối tượng của lớp ImageOptionsBase

yêu cầu hệ thống

Trước khi chạy mã ví dụ chuyển đổi, hãy đảm bảo rằng bạn có các điều kiện tiên quyết sau.

  • Hệ điều hành: Windows hoặc Linux.
  • Môi trường phát triển: Hỗ trợ .NET Core 7 trở lên như Microsoft Visual Studio.

Ứng dụng miễn phí để chuyển đổi GIF thành PSD

  • Chọn hoặc kéo và thả hình ảnh GIF
  • Chọn định dạng và nhấp vào nút Chuyển đổi
  • Nhấp vào nút Tải xuống để tải xuống hình ảnh PSD
* Bằng cách tải lên các tệp của bạn hoặc sử dụng dịch vụ của chúng tôi, bạn đồng ý với Điều khoản dịch vụChính sách bảo mật của chúng tôi

Kiểm tra bản trình diễn trực tiếp của chúng tôi để chuyển đổi GIF thành PSD

Chuyển đổi GIF thành PSD - Python

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()

GIF Những gì là GIF Định dạng tệp

GIF hoặc Định dạng trao đổi đồ họa là một loại hình ảnh có độ nén cao. Thuộc sở hữu của Unisys, GIF sử dụng thuật toán nén LZW không làm giảm chất lượng hình ảnh. Đối với mỗi hình ảnh, GIF thường cho phép tối đa 8 bit trên mỗi pixel và tối đa 256 màu được phép trên toàn ảnh. Ngược lại với hình ảnh JPEG, hình ảnh này có thể hiển thị tới 16 triệu màu và khá gần với giới hạn của mắt người. Trở lại khi internet xuất hiện, GIF vẫn là lựa chọn tốt nhất vì chúng yêu cầu băng thông thấp và tương thích với đồ họa tiêu thụ các vùng màu đồng nhất. GIF động kết hợp nhiều hình ảnh hoặc khung hình thành một tệp duy nhất và hiển thị chúng theo trình tự để tạo ra một clip động hoặc một video ngắn. Các giới hạn về màu sắc lên đến 256 cho mỗi khung hình và có khả năng ít phù hợp nhất để tái tạo các hình ảnh và ảnh chụp khác với độ dốc màu.

Đọc thêm | GIF

PSD Những gì là PSD Định dạng tệp

PSD, Tài liệu Photoshop, đại diện cho định dạng tệp gốc của Adobe Photoshop được sử dụng để thiết kế và phát triển đồ họa. Tệp PSD có thể bao gồm các lớp hình ảnh, lớp điều chỉnh, mặt nạ lớp, chú thích, thông tin tệp, từ khóa và các yếu tố cụ thể khác của Photoshop.

Đọc thêm | PSD

Các chuyển đổi được hỗ trợ khác

Sử dụng Python, người ta có thể dễ dàng chuyển đổi các định dạng khác nhau bao gồm.

BMP (Ảnh bitmap)
DICOM (Hình ảnh & Truyền thông Kỹ thuật số)
EMF (Định dạng siêu tệp nâng cao)
JPG (Nhóm chuyên gia nhiếp ảnh chung)
JPEG (Nhóm chuyên gia nhiếp ảnh chung)
JP2 (JPEG 2000)
J2K (Hình ảnh nén Wavelet)
PNG (Biểu đồ minh họa mạng lưới không dây)
JPEG2000 (JPEG 2000)
APNG (Đồ họa mạng di động hoạt hình)
PSD (Tài liệu Photoshop)
DXF (Định dạng Trao đổi Bản vẽ, hoặc Định dạng Trao đổi Bản vẽ,)
SVG (Đồ họa vector có thể mở rộng)
TIFF (Định dạng hình ảnh được gắn thẻ)
WEBP (Raster Hình ảnh Web)
WMF (Microsoft Windows Metafile)
PDF (Định dạng tài liệu di động (PDF))
HTML (HTML5 Canvas)
EMZ (Siêu tệp nâng cao được nén của Windows)
WMZ (Giao diện Windows Media Player được nén)
TGA (Đồ họa Targa)
SVGZ (Phiên bản nén của tệp Đồ họa Vectơ có thể mở rộng (.SVG).)
CANVAS (HTML5 Canvas)
ICO (Biểu tượng Windows)