ImageAttributes.SetOutputChannel Метод

Определение

Устанавливает выходной канал CMYK (cyan-magenta-yellow-black или голубой-пурпурный-желтый-черный).Sets the CMYK (cyan-magenta-yellow-black) output channel.

Перегрузки

SetOutputChannel(ColorChannelFlag)

Устанавливает выходной канал CMYK (cyan-magenta-yellow-black или голубой-пурпурный-желтый-черный) для категории по умолчанию.Sets the CMYK (cyan-magenta-yellow-black) output channel for the default category.

SetOutputChannel(ColorChannelFlag, ColorAdjustType)

Устанавливает выходной канал CMYK (cyan-magenta-yellow-black или голубой-пурпурный-желтый-черный) для указанной категории.Sets the CMYK (cyan-magenta-yellow-black) output channel for a specified category.

SetOutputChannel(ColorChannelFlag)

Устанавливает выходной канал CMYK (cyan-magenta-yellow-black или голубой-пурпурный-желтый-черный) для категории по умолчанию.Sets the CMYK (cyan-magenta-yellow-black) output channel for the default category.

public:
 void SetOutputChannel(System::Drawing::Imaging::ColorChannelFlag flags);
public void SetOutputChannel (System.Drawing.Imaging.ColorChannelFlag flags);
member this.SetOutputChannel : System.Drawing.Imaging.ColorChannelFlag -> unit
Public Sub SetOutputChannel (flags As ColorChannelFlag)

Параметры

flags
ColorChannelFlag

Элемент ColorChannelFlag, который задает выходной канал.An element of ColorChannelFlag that specifies the output channel.

Примеры

В следующем примере кода показано, как использовать метод SetOutputChannel.The following code example demonstrates how to use the SetOutputChannel method. Чтобы выполнить этот пример, вставьте следующий код в форму Windows Forms.To run this example, paste the following code into a Windows Form. Обработайте событие Paint формы и вызовите ShowOutputChannels, передав e как PaintEventArgs.Handle the form's Paint event and call ShowOutputChannels, passing e as PaintEventArgs.

private void ShowOutputChannels(PaintEventArgs e)
{
    //Create a bitmap from a file.
    Bitmap bmp1 = new Bitmap("c:\\fakePhoto.jpg");

    // Create a new bitmap from the original, resizing it for this example.
    Bitmap bmp2 = new Bitmap(bmp1, new Size(80, 80));

    bmp1.Dispose();

    // Create an ImageAttributes object.
    ImageAttributes imgAttributes = new ImageAttributes();

    // Draw the image unaltered.
    e.Graphics.DrawImage(bmp2, 10, 10);

    // Draw the image, showing the intensity of the cyan channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelC,
        System.Drawing.Imaging.ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(100, 10, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the magenta channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelM,
        ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(10, 100, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the yellow channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelY,
        ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(100, 100, bmp2.Width, bmp2.Height), 0, 0,
        bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the black channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelK,

        System.Drawing.Imaging.ColorAdjustType.Bitmap);
    e.Graphics.DrawImage(bmp2, new Rectangle(10, 190, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    //Dispose of the bitmap.
    bmp2.Dispose();
}
Private Sub ShowOutputChannels(ByVal e As PaintEventArgs)

    'Create a bitmap from a file.
    Dim bmp1 As New Bitmap("c:\fakePhoto.jpg")

    ' Create a new bitmap from the original, resizing it for this example.
    Dim bmp2 As New Bitmap(bmp1, New Size(80, 80))

    bmp1.Dispose()

    ' Create an ImageAttributes object.
    Dim imgAttributes As New System.Drawing.Imaging.ImageAttributes()

    ' Draw the image unaltered.
    e.Graphics.DrawImage(bmp2, 10, 10)

    ' Draw the image, showing the intensity of the cyan channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelC, ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(100, 10, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the magenta channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelM, ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(10, 100, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the yellow channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelY, _
        ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(100, 100, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the black channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelK, _
        ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(10, 190, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    'Dispose of the bitmap.
    bmp2.Dispose()

End Sub

Комментарии

Можно использовать метод SetOutputChannel для преобразования изображения в цветовое пространство CMYK и проверки интенситиес одного из цветовых каналов CMYK.You can use the SetOutputChannel method to convert an image to a CMYK color space and examine the intensities of one of the CMYK color channels. Например, предположим, что вы создаете объект ImageAttributes и устанавливаете для него выходной канал вывода ColorChannelC.For example, suppose you create an ImageAttributes object and set its bitmap output channel to ColorChannelC. Если в метод DrawImage передается путь к этому объекту ImageAttributes, вычисляется голубой компонент каждого пикселя, а каждый пиксель в готовом изображении является оттенком серого, указывающим интенсивность его голубого канала.If you pass the path of that ImageAttributes object to the DrawImage method, the cyan component of each pixel is calculated, and each pixel in the rendered image is a shade of gray that indicates the intensity of its cyan channel. Аналогичным образом можно визуализировать изображения, указывающие на интенситиесие пурпурного, желтого и черного каналов.Similarly, you can render images that indicate the intensities of the magenta, yellow, and black channels.

Объект ImageAttributes сохраняет параметры цвета и оттенков серого для пяти категорий корректировки: по умолчанию, точечный рисунок, кисть, перо и текст.An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. Например, можно указать выходной канал для категории по умолчанию и другой выходной канал для категории точечных рисунков.For example, you can specify an output channel for the default category and a different output channel for the bitmap category.

Параметры коррекции цвета и оттенков серого по умолчанию применяются ко всем категориям, которые не имеют собственных параметров настройки.The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. Например, если для категории точечных рисунков не заданы никакие параметры настройки, параметры по умолчанию применяются к категории точечных рисунков.For example, if you never specify any adjustment settings for the bitmap category, the default settings apply to the bitmap category.

SetOutputChannel(ColorChannelFlag, ColorAdjustType)

Устанавливает выходной канал CMYK (cyan-magenta-yellow-black или голубой-пурпурный-желтый-черный) для указанной категории.Sets the CMYK (cyan-magenta-yellow-black) output channel for a specified category.

public:
 void SetOutputChannel(System::Drawing::Imaging::ColorChannelFlag flags, System::Drawing::Imaging::ColorAdjustType type);
public void SetOutputChannel (System.Drawing.Imaging.ColorChannelFlag flags, System.Drawing.Imaging.ColorAdjustType type);
member this.SetOutputChannel : System.Drawing.Imaging.ColorChannelFlag * System.Drawing.Imaging.ColorAdjustType -> unit
Public Sub SetOutputChannel (flags As ColorChannelFlag, type As ColorAdjustType)

Параметры

flags
ColorChannelFlag

Элемент ColorChannelFlag, который задает выходной канал.An element of ColorChannelFlag that specifies the output channel.

type
ColorAdjustType

Элемент ColorAdjustType, указывающий категорию, для которой задается выходной канал.An element of ColorAdjustType that specifies the category for which the output channel is set.

Примеры

В следующем примере кода показано, как использовать метод SetOutputChannel.The following code example demonstrates how to use the SetOutputChannel method. Чтобы выполнить этот пример, вставьте следующий код в форму Windows Forms.To run this example, paste the following code into a Windows Form. Обработайте событие Paint формы и вызовите ShowOutputChannels, передав e как PaintEventArgs.Handle the form's Paint event and call ShowOutputChannels, passing e as PaintEventArgs.

private void ShowOutputChannels(PaintEventArgs e)
{
    //Create a bitmap from a file.
    Bitmap bmp1 = new Bitmap("c:\\fakePhoto.jpg");

    // Create a new bitmap from the original, resizing it for this example.
    Bitmap bmp2 = new Bitmap(bmp1, new Size(80, 80));

    bmp1.Dispose();

    // Create an ImageAttributes object.
    ImageAttributes imgAttributes = new ImageAttributes();

    // Draw the image unaltered.
    e.Graphics.DrawImage(bmp2, 10, 10);

    // Draw the image, showing the intensity of the cyan channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelC,
        System.Drawing.Imaging.ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(100, 10, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the magenta channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelM,
        ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(10, 100, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the yellow channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelY,
        ColorAdjustType.Bitmap);

    e.Graphics.DrawImage(bmp2, new Rectangle(100, 100, bmp2.Width, bmp2.Height), 0, 0,
        bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    // Draw the image, showing the intensity of the black channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelK,

        System.Drawing.Imaging.ColorAdjustType.Bitmap);
    e.Graphics.DrawImage(bmp2, new Rectangle(10, 190, bmp2.Width, bmp2.Height),
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes);

    //Dispose of the bitmap.
    bmp2.Dispose();
}
Private Sub ShowOutputChannels(ByVal e As PaintEventArgs)

    'Create a bitmap from a file.
    Dim bmp1 As New Bitmap("c:\fakePhoto.jpg")

    ' Create a new bitmap from the original, resizing it for this example.
    Dim bmp2 As New Bitmap(bmp1, New Size(80, 80))

    bmp1.Dispose()

    ' Create an ImageAttributes object.
    Dim imgAttributes As New System.Drawing.Imaging.ImageAttributes()

    ' Draw the image unaltered.
    e.Graphics.DrawImage(bmp2, 10, 10)

    ' Draw the image, showing the intensity of the cyan channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelC, ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(100, 10, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the magenta channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelM, ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(10, 100, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the yellow channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelY, _
        ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(100, 100, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    ' Draw the image, showing the intensity of the black channel.
    imgAttributes.SetOutputChannel(ColorChannelFlag.ColorChannelK, _
        ColorAdjustType.Bitmap)

    e.Graphics.DrawImage(bmp2, New Rectangle(10, 190, bmp2.Width, bmp2.Height), _
        0, 0, bmp2.Width, bmp2.Height, GraphicsUnit.Pixel, imgAttributes)

    'Dispose of the bitmap.
    bmp2.Dispose()

End Sub

Комментарии

Можно использовать метод SetOutputChannel для преобразования изображения в цветовое пространство CMYK и проверки интенситиес одного из цветовых каналов CMYK.You can use the SetOutputChannel method to convert an image to a CMYK color space and examine the intensities of one of the CMYK color channels. Например, предположим, что вы создаете объект ImageAttributes и устанавливаете для него выходной канал вывода ColorChannelC.For example, suppose you create an ImageAttributes object and set its bitmap output channel to ColorChannelC. Если в метод DrawImage передается путь к этому объекту ImageAttributes, вычисляется голубой компонент каждого пикселя, а каждый пиксель в готовом изображении является оттенком серого, указывающим интенсивность его голубого канала.If you pass the path of that ImageAttributes object to the DrawImage method, the cyan component of each pixel is calculated, and each pixel in the rendered image is a shade of gray that indicates the intensity of its cyan channel. Аналогичным образом можно визуализировать изображения, указывающие на интенситиесие пурпурного, желтого и черного каналов.Similarly, you can render images that indicate the intensities of the magenta, yellow, and black channels.

Объект ImageAttributes сохраняет параметры цвета и оттенков серого для пяти категорий корректировки: по умолчанию, точечный рисунок, кисть, перо и текст.An ImageAttributes object maintains color and grayscale settings for five adjustment categories: default, bitmap, brush, pen, and text. Например, можно указать выходной канал для категории по умолчанию и другой выходной канал для категории точечных рисунков.For example, you can specify an output channel for the default category and a different output channel for the bitmap category.

Параметры коррекции цвета и оттенков серого по умолчанию применяются ко всем категориям, которые не имеют собственных параметров настройки.The default color-adjustment and grayscale-adjustment settings apply to all categories that do not have adjustment settings of their own. Например, если для категории точечных рисунков не заданы никакие параметры настройки, параметры по умолчанию применяются к категории точечных рисунков.For example, if you never specify any adjustment settings for the bitmap category, the default settings apply to the bitmap category.

Как только вы укажете параметр настройки цвета или оттенки серого для определенной категории, параметры настройки по умолчанию больше не применяются к этой категории.As soon as you specify a color-adjustment or grayscale-adjustment setting for a certain category, the default adjustment settings no longer apply to that category. Например, предположим, что вы указали коллекцию параметров настройки для категории по умолчанию.For example, suppose you specify a collection of adjustment settings for the default category. Если задать выходной канал для категории точечных рисунков, передав Bitmap методу SetOutputChannel, ни один из параметров настройки по умолчанию не будет применяться к точечным рисункам.If you set the output channel for the bitmap category by passing Bitmap to the SetOutputChannel method, none of the default adjustment settings will apply to bitmaps.

Применяется к