Как изменить яркость изображения в WPF просмотрщике изображений?
В этом разделе
Для обработки (например, изменения яркости) изображения в просмотрщике изображений необходимо выполнить следующие действия:
- Создать экземпляр класса WpfImageViewerProcessingTool - визуальный инструмента, который позволяет обрабатывать прямоугольную область в просмотрщике изображений.
- Указать команду обработки изображения, которая должна использоваться визуальным инструментом для обработки области изображения в просмотрщике изображений.
- Установить визуальный инструмент в качестве текущего инструмента в просмотрщике изображений.
Вот C#/VB.NET код, который демонстрирует, как изменить яркость видимой области в
WpfImageViewer:
/// <summary>
/// Adds the visual tool, which changes brightness of visible area of image viewer, to the image viewer.
/// </summary>
/// <param name="imageViewer">The image viewer.</param>
/// <param name="imageBrightness">The image brightness value in percents. Valid values are from -100 to 100.</param>
public void AddVisualToolForProcessingVisibleAreaInImageViewer(
Vintasoft.Imaging.Wpf.UI.WpfImageViewer imageViewer,
int imageBrightness)
{
// create command for changing of image brightness
Vintasoft.Imaging.ImageProcessing.Color.ChangeBrightnessCommand changeBrightness =
new Vintasoft.Imaging.ImageProcessing.Color.ChangeBrightnessCommand();
// set the command parameters
changeBrightness.Brightness = imageBrightness;
// create an instance of the ImageViewerProcessingTool class
Vintasoft.Imaging.Wpf.UI.VisualTools.WpfImageViewerProcessingTool viewerProcessingTool =
new Vintasoft.Imaging.Wpf.UI.VisualTools.WpfImageViewerProcessingTool();
// specify that visual tool must use the command for processing visible area in image viewer
viewerProcessingTool.ProcessingCommand = changeBrightness;
// set the tool as the current tool of the ImageViewer
imageViewer.VisualTool = viewerProcessingTool;
}
''' <summary>
''' Adds the visual tool, which changes brightness of visible area of image viewer, to the image viewer.
''' </summary>
''' <param name="imageViewer">The image viewer.</param>
''' <param name="imageBrightness">The image brightness value in percents. Valid values are from -100 to 100.</param>
Public Sub AddVisualToolForProcessingVisibleAreaInImageViewer(imageViewer As Vintasoft.Imaging.Wpf.UI.WpfImageViewer, imageBrightness As Integer)
' create command for changing of image brightness
Dim changeBrightness As New Vintasoft.Imaging.ImageProcessing.Color.ChangeBrightnessCommand()
' set the command parameters
changeBrightness.Brightness = imageBrightness
' create an instance of the ImageViewerProcessingTool class
Dim viewerProcessingTool As New Vintasoft.Imaging.Wpf.UI.VisualTools.WpfImageViewerProcessingTool()
' specify that visual tool must use the command for processing visible area in image viewer
viewerProcessingTool.ProcessingCommand = changeBrightness
' set the tool as the current tool of the ImageViewer
imageViewer.VisualTool = viewerProcessingTool
End Sub