Giới thiệu

Aspose.PSD FOSS cho .NET là một thư viện mã nguồn mở mới để làm việc với các tệp PSD và PSB (tài liệu lớn của Photoshop) từ mã .NET. Nó được phát hành dưới giấy phép MIT, chỉ yêu cầu .NET 10.0 ở thời gian chạy, và không có phụ thuộc bên thứ ba nào khác. Gói được nhập bằng using Aspose.PSD.FOSS;.

Thư viện được tổ chức xung quanh lớp PsdImage, lớp mở rộng từ lớp cơ sở trừu tượng Image, và lớp Layer. Image.Load() / PsdImage.Load() tải một tài liệu từ đường dẫn tệp hoặc luồng, tiết lộ thông tin tiêu đề (Width, Height, ColorMode, Version, Compression) và bộ sưu tập Layers đã phân tích; PsdImage.Save() ghi lại tài liệu ra tệp hoặc luồng. Mỗi Layer tiết lộ siêu dữ liệu riêng của nó — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey, và thông tin kênh/mặt nạ — và một tập con của các thuộc tính này có thể được thay đổi ngay tại chỗ và lưu lại vào tệp.

Bản phát hành này dành cho các nhà phát triển cần kiểm tra hoặc thực hiện các chỉnh sửa siêu dữ liệu hạn chế đối với các tệp PSD/PSB trong cơ sở mã .NET mà không cần giấy phép thương mại — công cụ chuỗi tài sản báo cáo cấu trúc lớp, script xây dựng đổi tên hoặc bật/tắt hiển thị lớp trước khi chuyển giao, hoặc các fixture kiểm thử cần đọc tiêu đề PSD và dữ liệu lớp mà không có động cơ render đầy đủ. Thư viện không render dữ liệu pixel hoặc chuyển đổi PSD/PSB sang các định dạng hình ảnh khác — nó là một trình đọc/ghi tập trung vào siêu dữ liệu cho định dạng container PSD/PSB.


Những gì được bao gồm

Kiểm tra tài liệu

PsdImage.Load() phân tích tiêu đề của tệp PSD hoặc PSB thành các thuộc tính có kiểu — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size, và IsFlatten — mà không giải mã dữ liệu pixel.

using var image = (PsdImage)Image.Load(inputPath);
Console.WriteLine($"Width: {image.Width}, Height: {image.Height}");
Console.WriteLine($"ColorMode: {image.ColorMode}, Version: {image.Version}");
Console.WriteLine($"Layers: {image.Layers.Length}, Compression: {image.Compression}");

Siêu dữ liệu Lớp

Mỗi mục trong PsdImage.Layers là một Layer hiển thị các giới hạn, khả năng hiển thị, độ mờ, cắt và siêu dữ liệu chế độ hòa trộn của riêng nó.

foreach (var layer in image.Layers)
{
    Console.WriteLine($"{layer.Name}: {layer.Bounds}, Visible={layer.IsVisible}, Opacity={layer.Opacity}");
}

Các chỉnh sửa Siêu dữ liệu được hỗ trợ

Một tập con các thuộc tính lớp có thể được thay đổi ngay tại chỗ và ghi lại bằng PsdImage.Save(): tên, khả năng hiển thị, độ mờ, cắt, khóa chế độ hòa trộn, và bốn cạnh giới hạn.

Layer layer = image.Layers[0];
layer.Name = $"{layer.Name} (edited)";
layer.IsVisible = !layer.IsVisible;
layer.Opacity = 128;
layer.BlendModeKey = BlendMode.Multiply;
image.Save(outputPath);

Bắt đầu nhanh

Cài đặt gói, sau đó tải tệp PSD hoặc PSB, kiểm tra các lớp của nó và lưu lại:

git clone https://github.com/aspose-psd-foss/Aspose.PSD-FOSS-for-.NET.git
cd Aspose.PSD-FOSS-for-.NET
dotnet build
using Aspose.PSD.FileFormats.Psd;

using var image = (PsdImage)Image.Load("input.psd");
Console.WriteLine($"Width: {image.Width}, Height: {image.Height}, Layers: {image.Layers.Length}");

foreach (var layer in image.Layers)
{
    Console.WriteLine($"  {layer.Name}: {layer.Bounds}");
}

image.Save("output.psd");

Các định dạng được hỗ trợ

Định dạngPhần mở rộngĐọcGhi
Tài liệu Photoshoppsd✓✓
Tài liệu Photoshop lớnpsb✓✓

Mã nguồn mở & Cấp phép

Aspose.PSD FOSS cho .NET được cấp phép MIT và có thể được sử dụng trong các sản phẩm thương mại mà không có phí bản quyền, không có dấu nước đánh giá hoặc giới hạn sử dụng.

Gói đang ở phiên bản 1.0.0 và chỉ yêu cầu .NET 10.0 tại thời gian chạy — nó không có phụ thuộc bên thứ ba nào khác.


Bắt đầu

Tài nguyên liên quan