الفئة ImageGrayscaleMask

ImageGrayscaleMask class

يصف قناع صورة بتدرج الرمادي.

public class ImageGrayscaleMask : IImageMask

المنشئات

الاسمالوصف
ImageGrayscaleMask(RasterImage)ينشئ مثيلًا جديدًا للفئة ImageGrayscaleMask بالحجم المستند إلى RasterImage الموجود المحدد. سيتم تخزين RasterImage المحدد كصورة مصدر.
ImageGrayscaleMask(int, int)ينشئ مثيلًا جديدًا للفئة ImageGrayscaleMask باستخدام العرض والارتفاع المحددين.

الخصائص

الاسمالوصف
Bounds { get; }يحصل على حدود هذا القناع، بوحدات البكسل.
Height { get; }يحصل على ارتفاع هذا القناع، بوحدات البكسل.
Item { get; set; }يحصل أو يضبط شفافية البكسل المحدد.
SelectionBounds { get; }يحصل على حدود الجزء المحدد من القناع، بوحدات البكسل.
Source { get; }يحصل على صورة المصدر المستخدمة لإنشاء هذا القناع، إذا وجدت.
Width { get; }يحصل على عرض هذا القناع، بوحدات البكسل.

الطرق

الاسمالوصف
Apply()يطبق القناع الحالي على مصدر RasterImage إذا كان موجودًا.
ApplyTo(RasterImage)يطبق القناع الحالي على RasterImage المحدد.
Clone()ينشئ كائنًا جديدًا يكون نسخة من النسخة الحالية.
Crop(Rectangle)يقص القناع بالمستطيل المحدد.
Crop(Size)يقص القناع بالحجم المحدد.
Crop(int, int)يقص القناع بالعرض والارتفاع المحددين.
ExclusiveDisjunction(ImageGrayscaleMask)يحصل على الفرق الحصري بين القناع الحالي والمقدم.
GetByteOpacity(int, int)يحصل على شفافية البكسل المحدد بدقة بايت.
Intersect(ImageGrayscaleMask)يحصل على تقاطع القناع الحالي مع المقدم.
Invert()يحصل على عكس القناع الحالي.
IsOpaque(int, int)يتحقق مما إذا كان البكسل المحدد معتمًا.
IsTransparent(int, int)يتحقق مما إذا كان البكسل المحدد شفافًا.
Subtract(ImageGrayscaleMask)يحصل على طرح القناع المقدم من القناع الحالي.
Union(ImageGrayscaleMask)اتحاد قناعين.
operator +اتحاد قناعين.
operator ^التفريق الحصري لقناعين.
operator !يعكس القناع.
operator *تقاطع قناعين.
operator -اطرح القناع الثاني من الأول.

أمثلة

يوضح المثال كيفية تحديد منطقة معقدة من صورة باستخدام أداة العصا السحرية والقدرة على التفاعل مع الأقنعة (عكس، اتحاد، طرح).

[C#]

var imageFilePath = "input.png"; 
using (RasterImage image = (RasterImage)Image.Load(inputFilePath))
{
    // أنشئ قناعًا جديدًا باستخدام أداة العصا السحرية بناءً على درجة اللون ولون البكسل (845, 128).
    MagicWandTool.Select(image, new MagicWandSettings(845, 128))
        // اتحاد القناع الموجود مع القناع المحدد الذي تم إنشاؤه بأداة العصا السحرية.
        .Union(new MagicWandSettings(416, 387))
        // اعكس القناع الموجود.
        .Invert()
        // اطرح القناع المحدد الذي تم إنشاؤه بأداة العصا السحرية مع العتبة المحددة من القناع الموجود.
        .Subtract(new MagicWandSettings(1482, 346) { Threshold = 69 })
        // اطرح أربعة أقنعة مستطيلة محددة من القناع الموجود واحدةً تلو الأخرى.
        .Subtract(new RectangleMask(0, 0, 800, 150))
        .Subtract(new RectangleMask(0, 380, 600, 220))
        .Subtract(new RectangleMask(930, 520, 110, 40))
        .Subtract(new RectangleMask(1370, 400, 120, 200))
        // تنعيم القناع بالإعدادات المحددة.
        .GetFeathered(new FeatheringSettings() { Size = 3 })
        // طبق القناع على الصورة.
        .Apply();
        
    // احفظ الصورة.
    image.Save(outputFilePath);
}

انظر أيضًا