C#을 사용하여 PSD에 새 레이어 추가

PSD(Photoshop Document)는 Adobe의 인기 있는 Photoshop 응용 프로그램에서 사용하는 기본 이미지 파일 형식입니다. PSD 파일에 여러 레이어가 포함된 로고, 브로셔 및 기타 이미지를 만드는 데 일반적으로 사용됩니다. 어떤 경우에는 PSD 파일을 프로그래밍 방식으로 조작해야 할 수도 있습니다. 이 기사에서는 C#을 사용하여 PSD에 새 레이어를 추가하는 방법을 배웁니다.

이 기사에서는 다음 주제를 다룹니다.

  1. PSD에 새 레이어를 추가하는 C# API
  2. PSD에 새 레이어 추가
  3. PSD에 새 텍스트 레이어 추가
  4. PSD의 이미지에서 레이어 만들기

PSD에 새 레이어를 추가하는 C# API

PSD 파일에 새 레이어를 생성하기 위해 Aspose.PSD for .NET API를 사용할 것입니다. PSD 및 기타 여러 지원되는 파일 형식 생성, 편집 또는 조작을 지원합니다.

API의 PsdImage 클래스를 사용하면 PSD 파일을 로드, 편집 및 저장할 수 있습니다. 이 클래스의 AddRegularLayer() 메서드는 새로운 일반 레이어를 추가합니다. 반면 AddTextLayer(string, Rectangle) 메서드는 PSD에 새 텍스트 레이어를 추가합니다. 이 클래스는 PSD를 지정된 파일 위치에 저장하는 Save(string) 메서드도 제공합니다.

API의 DLL 다운로드 또는 NuGet을 사용하여 설치하십시오.

PM> Install-Package Aspose.PSD

C#을 사용하여 PSD에 새 레이어 추가

아래 단계에 따라 PSD 파일에 새 레이어를 추가할 수 있습니다.

  1. 먼저 Image 클래스를 사용하여 PSD 파일을 PsdImage로 로드합니다.
  2. 다음으로 Rectangle과 같이 추가할 객체를 준비합니다.
  3. 그런 다음 AddRegularLayer() 메서드를 호출합니다.
  4. 선택적으로 위쪽, 왼쪽, 오른쪽 및 아래쪽과 같은 레이어 위치를 설정합니다.
  5. 그런 다음 SaveArgb32Pixels() 메서드를 사용하여 레이어에 개체를 할당합니다.
  6. 마지막으로 Save() 메서드를 사용하여 출력 파일을 저장합니다.

다음 코드 샘플은 C#에서 PSD 파일에 새 레이어를 추가하는 방법을 보여줍니다.

// 이 코드 예제는 PSD 이미지 파일에서 새 레이어를 만드는 방법을 보여줍니다.
string sourceFileName = @"C:\Files\PSD\OneLayer.psd";
string exportPath = @"C:\Files\PSD\OneLayerEdited.psd";

// 기존 PSD 로드
var im = (PsdImage)Image.Load(sourceFileName);

// 두 개의 int 배열 준비
var data1 = new int[2500];
var data2 = new int[2500];

// 직사각형 정의
var rect1 = new Rectangle(0, 0, 50, 50);
var rect2 = new Rectangle(0, 0, 100, 25);

for (int i = 0; i < 2500; i++)
{
    data1[i] = -10000000;
    data2[i] = -10000000;
}

// 레이어 1 추가
var layer1 = im.AddRegularLayer();
layer1.Left = 25;
layer1.Top = 25;
layer1.Right = 75;
layer1.Bottom = 75;
layer1.SaveArgb32Pixels(rect1, data1);

// 레이어 2 추가
var layer2 = im.AddRegularLayer();
layer2.Left = 25;
layer2.Top = 150;
layer2.Right = 125;
layer2.Bottom = 175;
layer2.SaveArgb32Pixels(rect2, data2);

// PSD 저장
im.Save(exportPath, new PsdOptions());
Add-New-Layer-to-PSD-프로그래밍 방식으로 CSharp 사용

C#을 사용하여 프로그래밍 방식으로 PSD에 새 레이어 추가

C#을 사용하여 PSD에 새 텍스트 레이어 추가

아래 단계에 따라 PSD 파일에 새 텍스트 레이어를 추가할 수 있습니다.

  1. 먼저 Image 클래스를 사용하여 PSD 파일을 PsdImage로 로드합니다.
  2. 다음으로 Rectangle을 정의합니다.
  3. 그런 다음 AddTexLayer() 메서드를 호출합니다. 텍스트 입력과 직사각형 객체를 인수로 취합니다.
  4. 그런 다음 Top, Left, Right, Bottom 등의 레이어 위치를 설정합니다.
  5. 마지막으로 Save() 메서드를 사용하여 출력 파일을 저장합니다.

다음 코드 샘플은 C#에서 PSD 파일에 새 텍스트 레이어를 추가하는 방법을 보여줍니다.

// 이 코드 예제는 PSD 이미지 파일에서 새 레이어를 만드는 방법을 보여줍니다.
string sourceFileName = @"C:\Files\PSD\OneLayer.psd";
string exportPath = @"C:\Files\PSD\TextLayer.psd";

// 기존 PSD 로드
var im = (PsdImage)Image.Load(sourceFileName);

// 텍스트 레이어 추가
var layer1 = im.AddTextLayer("Hello", new Rectangle(0, 0, 120, 50));
layer1.Left = 10;
layer1.Top = 25;

// PSD 저장
im.Save(exportPath, new PsdOptions());
Add-New-Text-Layer-to-PSD-using-CSharp

C#을 사용하여 프로그래밍 방식으로 PSD에 새 텍스트 레이어 추가

C#을 사용하여 PSD의 이미지에서 새 레이어 만들기

아래 단계에 따라 PNG 또는 JPG 이미지의 새 레이어를 PSD 파일에 추가할 수도 있습니다.

  1. 먼저 Image 클래스를 사용하여 PSD 파일을 PsdImage로 로드합니다.
  2. 그런 다음 스트림에서 PNG 이미지 파일을 엽니다.
  3. 그런 다음 스트림 개체를 사용하여 Layer 클래스의 인스턴스를 만듭니다.
  4. 그런 다음 AddLayer() 메서드를 호출합니다. Layer 객체를 인수로 사용합니다.
  5. 마지막으로 Save() 메서드를 사용하여 출력 파일을 저장합니다.

다음 코드 샘플은 PNG 이미지의 새 레이어를 C#의 PSD 파일에 추가하는 방법을 보여줍니다.

// 이 코드 예제는 PSD 이미지 파일의 PNG 이미지에서 새 레이어를 만드는 방법을 보여줍니다.
string outputFilePath = @"C:\Files\PSD\PsdResult.psd";

// 새 PSD 이미지 만들기
var image = new PsdImage(200, 200);

// PNG 이미지 로드
string filePath = @"C:\Files\PSD\aspose_logo.png";
var stream = new FileStream(filePath, FileMode.Open);

Layer layer = null;
try
{
    // PSD에 레이어 추가
    layer = new Layer(stream);
    image.AddLayer(layer);
}
catch (Exception e)
{
    if (layer != null)
    {
        layer.Dispose();
    }
    throw e;
}

// PSD 저장
image.Save(outputFilePath);
CSharp를 사용하여 PSD의 이미지에서 새 레이어 만들기

C#을 사용하여 PSD의 이미지에서 새 레이어 만들기

무료 임시 라이센스 받기

평가 제한 없이 Aspose.PSD for .NET을 사용해 보려면 무료 임시 라이선스를 얻으십시오.

결론

이 문서에서는 다음 방법을 배웠습니다.

  • 새 PSD 이미지를 만듭니다.
  • PSD 이미지에 새 일반 레이어와 텍스트 레이어를 만듭니다.
  • C#을 사용하여 PSD에 PNG 또는 JPG 이미지를 새 레이어로 삽입합니다.

또한 문서를 사용하여 .NET용 Aspose.PSD에 대해 자세히 알아보고 API에서 지원하는 다양한 기능을 탐색할 수 있습니다. 모호한 부분이 있는 경우 포럼에서 언제든지 문의해 주십시오.

또한보십시오