Clipping Path to zamknięta ścieżka wektorowa używana do zaznaczenia części obrazu, która powinna być widoczna. Po utworzeniu ścieżki przycinania część obrazu poza ścieżką przycinania staje się przezroczysta lub niewidoczna. W programie Adobe Photoshop technika wycinania ścieżki jest najczęściej używana do usuwania tła z obrazów i fotografii. W tym artykule dowiesz się, jak programowo utworzyć ścieżkę przycinającą w obrazach TIFF przy użyciu języka C#. Ponadto dowiesz się, jak eksportować obrazy TIFF do formatu PSD wraz ze ścieżką wycinania.
- .NET API do tworzenia ścieżki przycinającej w formacie TIFF
- Utwórz ścieżkę przycinającą w obrazie TIFF za pomocą C#
- Eksportuj TIFF ze ścieżką przycinającą do PSD za pomocą C#
.NET API do tworzenia ścieżki przycinającej w formacie TIFF
Aspose.Imaging for .NET to dobrze znany interfejs API do przetwarzania obrazów, który umożliwia przetwarzanie i pracę z szeroką gamą formatów obrazów. Ponadto interfejs API umożliwia programowe tworzenie ścieżek wycinania w formacie TIFF i przesyłanie ścieżek wycinania z formatu TIFF do obrazu PSD za pomocą kilku linii kodu. Możesz zainstalować interfejs API w swojej aplikacji .NET za pomocą NuGet lub pobrać jego bibliotekę DLL z tutaj.
Utwórz ścieżkę przycinającą w obrazie TIFF za pomocą C#
Aby utworzyć ścieżkę przycinającą w obrazie TIFF, należy zdefiniować punkty ścieżki w pliku TXT. Punkty można utworzyć ręcznie lub za pomocą narzędzia Pióro w programie Photoshop. Poniżej znajduje się przykładowy plik TXT zawierający punkty Beziera ścieżki przycinającej, które zostaną użyte w poniższych przykładach.
Po utworzeniu punktów ścieżki można je wstawić do zasobów ścieżki obrazu TIFF. Poniżej znajduje się docelowy obraz TIFF, który jest używany w przykładach.
Poniższy przykładowy kod pokazuje, jak utworzyć ścieżkę przycinającą w obrazie Tiff.
static void Main()
{
using (var image = (TiffImage)Image.Load(@"d:\Data\SampleNoPaths.tif"))
{
image.ActiveFrame.PathResources = new List<PathResource> { new PathResource
{
BlockId = 2000, // Block Id according to Photoshop specification
Name = "My Path", // Path name
Records = CreateRecords(LoadPathPoints(@"d:\Data\PathPoints.txt")) // Create path records using coordinates
}};
image.Save(@"d:\SampleWithPaths.tif");
}
}
private static float[] LoadPathPoints(string filePath)
{
return File.ReadAllText(filePath)
.Split(new[] { " ", "\r\n" }, StringSplitOptions.RemoveEmptyEntries)
.Select(float.Parse)
.ToArray();
}
private static List<VectorPathRecord> CreateRecords(params float[] coordinates)
{
var records = CreateBezierRecords(coordinates); // Create Bezier records using coordinates
records.Insert(0, new LengthRecord // LengthRecord required by Photoshop specification
{
IsOpen = false, // Lets create closed path
RecordCount = (ushort)records.Count // Record count in the path
});
return records;
}
private static List<VectorPathRecord> CreateBezierRecords(float[] coordinates)
{
return CoordinatesToPoints(coordinates)
.Select(CreateBezierRecord)
.ToList();
}
private static IEnumerable<PointF> CoordinatesToPoints(float[] coordinates)
{
for (var index = 0; index < coordinates.Length; index += 2)
yield return new PointF(coordinates[index], coordinates[index + 1]);
}
private static VectorPathRecord CreateBezierRecord(PointF point)
{
return new BezierKnotRecord { PathPoints = new[] { point, point, point } };
}
Poniżej znajduje się zrzut ekranu wynikowego obrazu TIFF wraz ze ścieżką przycinającą w programie Photoshop.
Eksportuj TIFF ze ścieżką przycinającą do PSD za pomocą C#
Możesz także wyeksportować obraz TIFF ze ścieżką przycinania do obrazu PSD w celu dalszego przetwarzania w programie Photoshop. Można to zrobić w kilku liniach kodu.
- Załaduj obraz TIFF za pomocą metody Image.Load(String).
- Eksportuj TIFF do PSD przy użyciu metody Image.Save(String, PsdOptions).
Poniższy przykładowy kod pokazuje, jak wyeksportować obraz TIFF ze ścieżką przycinającą do pliku PSD przy użyciu języka C#.
using (var image = Image.Load(@"d:\Data\SampleWithPaths.tif"))
{
image.Save(@"d:\Data\SampleWithPaths.psd", new PsdOptions());
}
Plik PSD
Wniosek
W tym artykule pokazano, jak programowo utworzyć ścieżkę przycinającą w obrazie TIFF przy użyciu języka C#. Ponadto nauczyłeś się również eksportować obraz TIFF do PSD wraz ze ścieżką przycinania za pomocą Aspose.Imaging for .NET API. Możesz dowiedzieć się więcej o interfejsie API przetwarzania obrazu Aspose, korzystając z dokumentacji.