Přidejte nové vrstvy do PSD pomocí C#

PSD(Photoshop Document) je nativní formát obrazového souboru používaný populární aplikací Adobe Photoshop. Běžně se používá k vytváření log, brožur a dalších obrázků, kde soubor PSD obsahuje několik vrstev. V určitých případech možná budeme muset programově manipulovat se soubory PSD. V tomto článku se naučíme, jak přidat novou vrstvu do PSD pomocí C#.

Tento článek bude obsahovat následující témata:

  1. C# API pro přidání nové vrstvy do PSD
  2. Přidat novou vrstvu do PSD
  3. Přidat novou textovou vrstvu do PSD
  4. Vytvořte vrstvu z obrázku v PSD

C# API pro přidání nové vrstvy do PSD

K vytvoření nové vrstvy v souboru PSD použijeme API Aspose.PSD for .NET. Podporuje vytváření, úpravy nebo manipulaci s PSD a několika dalšími podporované formáty souborů.

Třída PsdImage API umožňuje načítání, úpravy a ukládání souborů PSD. Metoda AddRegularLayer() této třídy přidá novou běžnou vrstvu. Zatímco metoda AddTextLayer(string, Rectangle) přidává do PSD novou textovou vrstvu. Tato třída také poskytuje metodu Save(string), která uloží PSD do určeného umístění souboru.

Prosím buď stáhněte si DLL API, nebo jej nainstalujte pomocí NuGet.

PM> Install-Package Aspose.PSD

Přidejte novou vrstvu do PSD pomocí C#

Do souboru PSD můžeme přidat novou vrstvu podle následujících kroků:

  1. Nejprve načtěte soubor PSD jako PsdImage pomocí třídy Image.
  2. Dále připravte objekt, který chcete přidat, například Obdélník.
  3. Poté zavolejte metodu AddRegularLayer().
  4. Volitelně nastavte polohu vrstvy, například nahoře, vlevo, vpravo a dole.
  5. Poté přiřaďte objekt k vrstvě pomocí metody SaveArgb32Pixels().
  6. Nakonec uložte výstupní soubor pomocí metody Save().

Následující ukázka kódu ukazuje, jak přidat novou vrstvu do souboru PSD v C#.

// Tento příklad kódu ukazuje, jak vytvořit nové vrstvy v souboru obrázku PSD.
string sourceFileName = @"C:\Files\PSD\OneLayer.psd";
string exportPath = @"C:\Files\PSD\OneLayerEdited.psd";

// Načtěte existující PSD
var im = (PsdImage)Image.Load(sourceFileName);

// Příprava dvou polí int
var data1 = new int[2500];
var data2 = new int[2500];

// Definujte obdélníky
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;
}

// Přidat vrstvu 1
var layer1 = im.AddRegularLayer();
layer1.Left = 25;
layer1.Top = 25;
layer1.Right = 75;
layer1.Bottom = 75;
layer1.SaveArgb32Pixels(rect1, data1);

// Přidat vrstvu 2
var layer2 = im.AddRegularLayer();
layer2.Left = 25;
layer2.Top = 150;
layer2.Right = 125;
layer2.Bottom = 175;
layer2.SaveArgb32Pixels(rect2, data2);

// Uložit PSD
im.Save(exportPath, new PsdOptions());
Add-New-Layer-to-PSD-Programmatically-use-CSharp

Přidejte novou vrstvu do PSD programově pomocí C#

Přidejte novou textovou vrstvu do PSD pomocí C#

Do souboru PSD můžeme přidat novou textovou vrstvu podle následujících kroků:

  1. Nejprve načtěte soubor PSD jako PsdImage pomocí třídy Image.
  2. Dále definujte obdélník.
  3. Poté zavolejte metodu AddTexLayer(). Jako argumenty bere textový vstup a obdélníkový objekt.
  4. Poté nastavte polohu vrstvy, například Nahoře, Vlevo, Vpravo a Dole.
  5. Nakonec uložte výstupní soubor pomocí metody Save().

Následující ukázka kódu ukazuje, jak přidat novou textovou vrstvu do souboru PSD v C#.

// Tento příklad kódu ukazuje, jak vytvořit nové vrstvy v souboru obrázku PSD.
string sourceFileName = @"C:\Files\PSD\OneLayer.psd";
string exportPath = @"C:\Files\PSD\TextLayer.psd";

// Načtěte existující PSD
var im = (PsdImage)Image.Load(sourceFileName);

// Přidejte textovou vrstvu
var layer1 = im.AddTextLayer("Hello", new Rectangle(0, 0, 120, 50));
layer1.Left = 10;
layer1.Top = 25;

// Uložit PSD
im.Save(exportPath, new PsdOptions());
Přidejte novou textovou vrstvu do PSD pomocí CSharp

Přidejte novou textovou vrstvu do PSD programově pomocí C#

Vytvořte novou vrstvu z obrázku v PSD pomocí C#

Můžeme také přidat novou vrstvu z obrázku PNG nebo JPG do souboru PSD podle následujících kroků:

  1. Nejprve načtěte soubor PSD jako PsdImage pomocí třídy Image.
  2. Dále otevřete soubor obrázku PNG ve streamu.
  3. Poté vytvořte instanci třídy Layer s objektem stream.
  4. Poté zavolejte metodu AddLayer(). Jako argument bere objekt Layer.
  5. Nakonec uložte výstupní soubor pomocí metody Save().

Následující ukázka kódu ukazuje, jak přidat novou vrstvu z obrázku PNG do souboru PSD v C#.

// Tento příklad kódu ukazuje, jak vytvořit novou vrstvu z obrázku PNG v souboru obrázku PSD.
string outputFilePath = @"C:\Files\PSD\PsdResult.psd";

// Vytvořte nový obrázek PSD
var image = new PsdImage(200, 200);

// Načtěte obrázek PNG
string filePath = @"C:\Files\PSD\aspose_logo.png";
var stream = new FileStream(filePath, FileMode.Open);

Layer layer = null;
try
{
    // Přidejte vrstvu do PSD
    layer = new Layer(stream);
    image.AddLayer(layer);
}
catch (Exception e)
{
    if (layer != null)
    {
        layer.Dispose();
    }
    throw e;
}

// Uložit PSD
image.Save(outputFilePath);
Vytvořte-novou-vrstvu-z-obrázku-v-PSD-pomocí-CSharp

Vytvořte novou vrstvu z obrázku v PSD pomocí C#

Získejte bezplatnou dočasnou licenci

Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.PSD pro .NET bez omezení hodnocení.

Závěr

V tomto článku jsme se naučili, jak:

  • vytvořit nový obrázek PSD;
  • vytvořit novou běžnou vrstvu a textovou vrstvu v obrázku PSD;
  • vložte obrázek PNG nebo JPG jako novou vrstvu do PSD pomocí C#.

Kromě toho se můžete dozvědět více o Aspose.PSD pro .NET pomocí dokumentace a prozkoumat různé funkce podporované rozhraním API. V případě jakýchkoliv nejasností nás neváhejte kontaktovat na našem fóru.

Viz také