Class FilterEffectMaskData

FilterEffectMaskData class

Filtre maskesi veri sınıfı.

public sealed class FilterEffectMaskData

yapıcılar

İsimTanım
FilterEffectMaskData(string, Rectangle, int, int, ChannelInformation[], ChannelInformation, Rectangle, ChannelInformation)Yeni bir örneğini başlatır.FilterEffectMaskData sınıf.

Özellikleri

İsimTanım
Channels { get; }Kanalları alır.
GUID { get; }GUID’yi alır.
Length { get; }Filtre maskesi veri uzunluğunu bayt cinsinden alır.
MaskRectangle { get; }Sayfa maskesi dikdörtgenini alır.
MaxChannels { get; }Maksimum kanal sayısını alır.
PixelsDepth { get; }Piksel derinliğini alır.
Rectangle { get; }Kanal dikdörtgenini alır.
SheetMask { get; }Sayfa maskesini alır.
UserMask { get; }Kullanıcı maskesini alır.

yöntemler

İsimTanım
SaveData(StreamContainer)Kaynağı belirtilen akış kapsayıcısına kaydeder.

Örnekler

Bu örnek, FXidResource kaynağının özelliklerinin nasıl alınacağını ve ayarlanacağını gösterir.

[C#]

string inputFilePath = "psdnet414_3.psd";
string output = "out_psdnet414_3.psd";

int resLength = 1144;
int maskLength = 369;

void AssertAreEqual(object expected, object actual, string message = null)
{
    if (!object.Equals(expected, actual))
    {
        throw new FormatException(message ?? "Objects are not equal.");
    }
}

using (var psdImage = (PsdImage)Image.Load(inputFilePath))
{
    FXidResource fXidResource = (FXidResource)psdImage.GlobalLayerResources[3];

    AssertAreEqual(resLength, fXidResource.Length);
    foreach (var maskData in fXidResource.FilterEffectMasks)
    {
        AssertAreEqual(maskLength, maskData.Length);
    }

    psdImage.Save(output);
}

// kaydettikten sonra kontrol edin
using (var psdImage = (PsdImage)Image.Load(output))
{
    FXidResource fXidResource = (FXidResource)psdImage.GlobalLayerResources[3];

    AssertAreEqual(resLength, fXidResource.Length);
    foreach (var maskData in fXidResource.FilterEffectMasks)
    {
        AssertAreEqual(maskLength, maskData.Length);
    }
}

Ayrıca bakınız