Kırpma Yolu, görüntünün görünür olması gereken bir bölümünü seçmek için kullanılan kapalı bir vektör yoludur. Kırpma yolu oluşturulduktan sonra, görüntünün kırpma yolunun dışındaki kısmı şeffaf veya görünmez hale gelir. Adobe Photoshop’ta, kırpma yolu tekniği en çok görüntülerden ve fotoğraflardan arka planı kaldırmak için kullanılır. Bu makalede, C# kullanarak programlı olarak TIFF görüntülerde kırpma yolu oluşturmayı öğreneceksiniz. Ayrıca, TIFF görüntülerini kırpma yolu ile birlikte PSD formatına nasıl aktaracağınızı öğreneceksiniz.
- TIFF’de Kırpma Yolu Oluşturmak için .NET API
- C# kullanarak TIFF Görüntüsünde Kırpma Yolu Oluşturma
- Kırpma Yolu ile TIFF’i C# kullanarak PSD’ye aktarın
TIFF’de Kırpma Yolu Oluşturmak için .NET API
Aspose.Imaging for .NET, çok çeşitli görüntü biçimlerini işlemenize ve bunlarla çalışmanıza olanak tanıyan, iyi bilinen bir görüntü işleme API’sidir. Ek olarak API, TIFF’de kırpma yollarını programlı olarak oluşturmanıza ve kırpma yolunu birkaç satır kodla TIFF’den PSD görüntüsüne aktarmanıza olanak tanır. API’yi NuGet kullanarak .NET uygulamanızın içine yükleyebilir veya DLL’sini buradan indirebilirsiniz.
C# kullanarak TIFF Görüntüsünde Kırpma Yolu Oluşturma
Bir TIFF görüntüsünde kırpma yolu oluşturmak için, yolun noktalarını bir TXT dosyasında tanımlamanız gerekir. Noktaları manuel olarak veya Photoshop’ta Kalem aracını kullanarak oluşturabilirsiniz. Aşağıdaki örneklerde kullanılacak bir kırpma yolunun Bezier noktalarını içeren örnek bir TXT dosyası aşağıdadır.
Yol noktalarını oluşturduktan sonra, bunları TIFF görüntüsünün Yol Kaynaklarına ekleyebilirsiniz. Örneklerde kullanılan hedeflenen TIFF görüntüsü aşağıdadır.
Aşağıdaki kod örneği, bir Tiff görüntüsünde kırpma yolunun nasıl oluşturulacağını gösterir.
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 } };
}
Aşağıda, ortaya çıkan TIFF görüntüsünün Photoshop’taki kırpma yolu ile birlikte ekran görüntüsü yer almaktadır.
Kırpma Yolu ile TIFF’i C# kullanarak PSD’ye aktarın
Kırpma yoluna sahip TIFF görüntüsünü Photoshop’ta daha fazla işlemek için bir PSD görüntüsüne de aktarabilirsiniz. Bu, birkaç kod satırında yapılabilir.
- TIFF görüntüsünü Image.Load(String) yöntemini kullanarak yükleyin.
- Image.Save(String, PsdOptions) yöntemini kullanarak TIFF’yi PSD’ye aktarın.
Aşağıdaki kod örneği, kırpma yoluna sahip bir TIFF görüntüsünün C# kullanarak PSD’ye nasıl aktarılacağını gösterir.
using (var image = Image.Load(@"d:\Data\SampleWithPaths.tif"))
{
image.Save(@"d:\Data\SampleWithPaths.psd", new PsdOptions());
}
PSD Dosyası
Çözüm
Bu makalede, C# kullanarak programlı olarak bir TIFF görüntüsünde kırpma yolu oluşturmayı gördünüz. Ayrıca, Aspose.Imaging for .NET API kullanarak bir TIFF görüntüsünü kırpma yolu ile birlikte PSD’ye nasıl aktaracağınızı da öğrendiniz. Belgeleri kullanarak Aspose’un görüntü işleme API’si hakkında daha fazlasını keşfedebilirsiniz.