.NET 4.x Как изменить цвет пикселей во всем изображении? - Visual Basic .NET
Формулировка задачи:
Всем знатокам доброго времени суток!
Вопрос, собственно, в заголовке. Условие задачи: Есть какое-то изображение. Требуется. 1) пройти по всем пикселям изображения, получить текущие значение цвета каждого пикселя 2) Изменить цвет указанных пикселей Спасибо за помощь и понимание.Решение задачи: «.NET 4.x Как изменить цвет пикселей во всем изображении?»
textual
Листинг программы
Imports System.Drawing.Imaging Imports System.IO Public Class Form6 Private src, bmp As Bitmap Private Sub Form6_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load bmp = New Bitmap(Path.Combine(Application.StartupPath, "clr1.jpg")) PictureBox1.Image = bmp End Sub Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click src = bmp.Clone toBW(TrackBar1.Value / 100) PictureBox2.Image = src End Sub Private Sub toBW(ByVal th As Single) Using gr As Graphics = Graphics.FromImage(src) Dim gray_matrix As Single()() = { New Single() {0.299F, 0.299F, 0.299F, 0, 0}, New Single() {0.587F, 0.587F, 0.587F, 0, 0}, New Single() {0.114F, 0.114F, 0.114F, 0, 0}, New Single() {0, 0, 0, 1, 0}, New Single() {0, 0, 0, 0, 1} } Dim ia As New System.Drawing.Imaging.ImageAttributes ia.SetColorMatrix(New System.Drawing.Imaging.ColorMatrix(gray_matrix)) ia.SetThreshold(th) Dim rc As New Rectangle(0, 0, src.Width, src.Height) gr.DrawImage(src, rc, 0, 0, src.Width, src.Height, GraphicsUnit.Pixel, ia) End Using End Sub End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д