VintaSoft Imaging .NET SDK 14.0: Документация для .NET разработчика
Vintasoft.Imaging Namespace / BlendingMode Enumeration
Синтаксис Члены типа Example Иерархия Требования Смотрите также
В этом разделе
    BlendingMode Перечисление
    В этом разделе
    Указывает доступные режимы смешивания цветов.
    Синтаксис
    'Declaration
    
    Public Enum BlendingMode
       Inherits System.Enum
    
    
    public enum BlendingMode : System.Enum
    
    
    __value public enum BlendingMode : public System.Enum
    
    
    public enum class BlendingMode : public System.Enum
    
    
    Члены типа
    Член типаОписание
    NormalВыбирает исходный цвет, игнорируя фон.
    MultiplyУмножает значения цвета фона и исходного цвета.
    ScreenУмножает дополнения значений цвета фона и источника, а затем дополняет результат.
    OverlayУмножает или экранирует цвета, в зависимости от значения цвета фона. Исходные цвета накладываются на фон, сохраняя при этом его светлые и темные участки. Цвет фона не заменяется, а смешивается с исходным цветом, чтобы отразить яркость или темноту фона.
    DarkenВыбирает более темный фоновый и исходный цвета.
    LightenВыбирает более светлый фоновый и исходный цвета.
    ColorDodgeОсветляет цвет фона, чтобы он отражал исходный цвет. Покраска черным цветом не дает никаких изменений.
    ColorBurnЗатемняет цвет фона, чтобы он отражал исходный цвет. Покраска белым цветом не приводит к изменениям.
    HardLightУмножает или экранирует цвета, в зависимости от значения исходного цвета. Эффект аналогичен резкому освещению фона.
    SoftLightТемнеет или осветляет цвета, в зависимости от значения исходного цвета. Эффект аналогичен освещению фона рассеянным прожектором.
    DifferenceВычитает более темный из двух составляющих цветов из более светлого.
    ExclusionОбеспечивает эффект, аналогичный эффекту режима "Разница", но с меньшей контрастностью. Рисование белым цветом инвертирует цвет фона; покраска черным цветом не дает никаких изменений.
    HueСоздает цвет с оттенком исходного цвета, а также насыщенностью и яркостью цвета фона.
    SaturationСоздает цвет с насыщенностью исходного цвета, а также оттенком и яркостью цвета фона. Рисование в этом режиме области фона чисто серого цвета (без насыщенности) не приводит к изменениям.
    ColorСоздает цвет с оттенком и насыщенностью исходного цвета и яркостью цвета фона. Это сохраняет уровни серого фона и полезно для раскрашивания монохромных изображений или тонирования цветных изображений.
    LuminosityСоздает цвет с яркостью исходного цвета, а также оттенком и насыщенностью цвета фона. Это дает эффект, обратный эффекту цветного режима.
    BrightnessВыбирает яркость фона и исходных цветов.
    ContrastВыбирает контрастность фона и исходных цветов.
    GammaВыбирает гамму фонового и исходного цветов.
    MinВыбирает минимум фонового и исходного цветов.
    MaxВыбирает максимальное количество фоновых и исходных цветов.
    SumСумма цветов фона и источника.
    SubДополнительный фоновый и исходный цвета.
    DivisionРазделяет значения цвета фона и источника.
    Пример

    Вот C#/VB.NET код, который демонстрирует, как загрузить изображение с диска, смешать цвета в указанной области изображения и сохранить результат в новый файл изображения.

    
    Class ColorBlendCommandExample
        Public Sub ProcessImage()
            ' [ do not forget to set your image file path here! ]
            ' create an image collection
            Using images As New Vintasoft.Imaging.ImageCollection()
                ' add image to the image collection
                images.Add("Flower.jpg")
                Try
                    ' create the image processing command
                    Dim command As New Vintasoft.Imaging.ImageProcessing.Color.ColorBlendCommand(Vintasoft.Imaging.BlendingMode.SoftLight, System.Drawing.Color.White)
    
                    ' subscribe to progress event of image processing command
                    AddHandler command.Progress, New System.EventHandler(Of Vintasoft.Imaging.ImageProcessing.ImageProcessingProgressEventArgs)(AddressOf command_Progress)
    
                    Try
                        ' for each image in image collection
                        For Each image As Vintasoft.Imaging.VintasoftImage In images
                            ' set the region-of-interest to the left part of the image
                            command.RegionOfInterest = New Vintasoft.Imaging.RegionOfInterest(0, 0, image.Width \ 2, image.Height)
                            ' apply the image processing command to the image
                            command.ExecuteInPlace(image)
                        Next
                    Catch ex As Vintasoft.Imaging.ImageProcessing.ImageProcessingException
                        ' show error message
                        System.Windows.Forms.MessageBox.Show(ex.Message)
                        Return
                    End Try
    
                    ' save the processed image collection to a new TIFF file
                    images.SaveSync("processed-image.tif")
                Finally
                    images.ClearAndDisposeItems()
                End Try
            End Using
    
        End Sub
    
        Private Sub command_Progress(sender As Object, e As Vintasoft.Imaging.ImageProcessing.ImageProcessingProgressEventArgs)
            ' update progress info using e.Progress property
            ' ...
    
            ' cancel execution of command using e.Cancel property if necessary
            ' ...
        End Sub
    End Class
    
    
    
    class ColorBlendCommandExample
    {
        public void ProcessImage()
        {
            // [ do not forget to set your image file path here! ]
            // create an image collection
            using (Vintasoft.Imaging.ImageCollection images = new Vintasoft.Imaging.ImageCollection())
            {
                // add image to the image collection
                images.Add("Flower.jpg");
                try
                {
                    // create the image processing command
                    Vintasoft.Imaging.ImageProcessing.Color.ColorBlendCommand command =
                        new Vintasoft.Imaging.ImageProcessing.Color.ColorBlendCommand(
                            Vintasoft.Imaging.BlendingMode.SoftLight,
                            System.Drawing.Color.White);
    
                    // subscribe to progress event of image processing command
                    command.Progress +=
                        new System.EventHandler<Vintasoft.Imaging.ImageProcessing.ImageProcessingProgressEventArgs>(command_Progress);
    
                    try
                    {
                        // for each image in image collection
                        foreach (Vintasoft.Imaging.VintasoftImage image in images)
                        {
                            // set the region-of-interest to the left part of the image
                            command.RegionOfInterest = new Vintasoft.Imaging.RegionOfInterest(0, 0, image.Width / 2, image.Height);
                            // apply the image processing command to the image
                            command.ExecuteInPlace(image);
                        }
                    }
                    catch (Vintasoft.Imaging.ImageProcessing.ImageProcessingException ex)
                    {
                        // show error message
                        System.Windows.Forms.MessageBox.Show(ex.Message);
                        return;
                    }
    
                    // save the processed image collection to a new TIFF file
                    images.SaveSync("processed-image.tif");
                }
                finally
                {
                    images.ClearAndDisposeItems();
                }
            }
    
        }
    
        void command_Progress(object sender, Vintasoft.Imaging.ImageProcessing.ImageProcessingProgressEventArgs e)
        {
            // update progress info using e.Progress property
            // ...
    
            // cancel execution of command using e.Cancel property if necessary
            // ...
        }
    }
    
    

    Иерархия наследования

    System.Object
       System.ValueType
          System.Enum
             Vintasoft.Imaging.BlendingMode

    Требования

    Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    Смотрите также