코어 API

코어 API

PsdImage은 PSD/PSB 문서를 로드하고, 검사하고, 저장하기 위한 진입점입니다. 추상 Image 기본 클래스를 확장하며, 이 클래스는 Width, Height, Bounds, Load(), Save(), 및 Dispose()을 선언합니다.


문서 로드 및 저장

Image.Load()은 파일 경로나 Stream을 받아들이고 Image를 반환합니다; 결과를 PsdImage으로 캐스팅하면 문서의 나머지 부분에 접근할 수 있습니다. PsdImage.Save()는 문서를 파일 경로나 스트림으로 다시 기록합니다.

using var image = (PsdImage)Image.Load(inputPath);
// ... inspect or edit ...
image.Save(outputPath);

문서 헤더 속성

PsdImage은 파싱된 헤더를 타입이 지정된 속성으로 노출합니다: Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size, 및 IsFlatten.

Console.WriteLine($"Width: {image.Width}, Height: {image.Height}");
Console.WriteLine($"ColorMode: {image.ColorMode}, Version: {image.Version}");
Console.WriteLine($"Compression: {image.Compression}, IsFlatten: {image.IsFlatten}");

이미지 리소스

PsdImage.ImageResources은 파싱된 ResourceBlock[] 배열을 반환합니다. 이 FOSS 빌드에서는 ImageResources, GlobalLayerResources, ActiveLayer, 및 HasTransparencyData를 읽을 수 있지만 재할당할 수 없습니다 — 해당 세터는 NotSupportedException을 발생시킵니다.

foreach (ResourceBlock resource in image.ImageResources)
{
    Console.WriteLine($"Resource {resource.ID}: {resource.Name} ({resource.DataSize} bytes)");
}

팁 및 모범 사례

  • 항상 Image.Load()의 결과를 PsdImage로 캐스팅하여 PSD 전용 멤버에 접근하십시오.
  • Dispose()에 적합한 객체는 using 구문으로 감싸세요; PsdImage는 IDisposable을 구현합니다.
  • ImageResources, GlobalLayerResources, ActiveLayer, 및 HasTransparencyData은 setter를 노출하지만 읽기 전용으로 취급하십시오.
  • image.Layers에 인덱싱하기 전에 image.Layers.Length를 확인하십시오 — 평탄화된 문서는 레이어가 없을 수 있습니다.

일반적인 문제

문제원인수정
NotSupportedException은(는) ImageResources을 설정할 때이 속성은 setter가 있음에도 불구하고 FOSS 빌드에서는 읽기 전용입니다.값을 읽으세요; 재할당을 시도하지 마세요.
플랫화된 문서에 빈 image.Layers 배열IsFlatten은(는) true이며 문서에 파싱된 레이어가 없습니다.image.Layers에 인덱싱하기 전에 image.Layers.Length (또는 image.IsFlatten)을 확인하십시오

FAQ

PSD 문서를 로드하면 픽셀 데이터를 디코딩합니까?

아니요. PsdImage.Load()은 문서 헤더, 레이어 메타데이터 및 리소스를 디코딩하거나 픽셀 데이터를 렌더링하지 않고 파싱합니다.

PSD 파일을 다른 이미지 형식으로 변환할 수 있나요?

아니요. 이 라이브러리는 PSD/PSB 문서만 로드하고, 검사하고, 저장합니다 — 픽셀 데이터를 렌더링하거나 다른 이미지 형식으로 변환하지 않습니다.


API Reference 요약

클래스/메서드설명
Image.Load(string) / Image.Load(Stream)PSD 또는 PSB 문서를 로드합니다
PsdImage.Save(string) / PsdImage.Save(Stream)문서를 저장합니다
PsdImage.Width / Height / BitsPerChannel / ColorMode / Version / Compression / Size / IsFlatten문서 헤더 속성
PsdImage.ImageResources구문 분석된 이미지 리소스 블록 (읽기 전용)

참조

 한국어