PictureBox изменить яркость и контрастность картинки - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Элемент управления PicterBox как задать программно сохранение картинки с параметрами яркость, контрастность и другие характеристики при редактировании изображения? Спасибо.

Решение задачи: «PictureBox изменить яркость и контрастность картинки»

textual
Листинг программы
  1. Imports System.Drawing.Imaging
  2. Public Class Form2
  3.     Private bmp, bmp2 As Bitmap
  4.     Private rr, gg, bb, gm As Single
  5.     Private isLoad As Boolean
  6.     Private Sub Form2_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  7.         bmp = loadBitmap("tst3.jpg")
  8.         If bmp IsNot Nothing Then
  9.             bmp2 = bmp.Clone
  10.             PictureBox1.Image = bmp
  11.             PictureBox2.Image = bmp2
  12.             TrackBar1.Minimum = 0
  13.             TrackBar1.Maximum = 50
  14.             TrackBar1.Value = 10
  15.             TrackBar2.Minimum = 1
  16.             TrackBar2.Maximum = 50
  17.             TrackBar2.Value = 10
  18.             isLoad = True
  19.         End If
  20.     End Sub
  21.     Private Function loadBitmap(ByVal fileName As String) As Bitmap
  22.         If Not IO.File.Exists(fileName) Then Return Nothing
  23.         Using bm As Bitmap = New Bitmap(fileName)
  24.             Return New Bitmap(bm)
  25.         End Using
  26.     End Function
  27.     Private Sub TrackBar1_ValueChanged(sender As System.Object, e As System.EventArgs) Handles TrackBar1.ValueChanged
  28.         rr = TrackBar1.Value / 10
  29.         Label2.Text = rr.ToString
  30.     End Sub
  31.     Private Sub BrightnessGamma_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
  32.         PictureBox2.Image = colorProcessing(bmp2, rr, rr, rr, gm)
  33.     End Sub
  34.     Private Function colorProcessing(ByVal img As Bitmap, ByVal rr As Single, ByVal gg As Single, ByVal bb As Single, ByVal Gamma As Single) As Bitmap
  35.         Dim copy As Bitmap = New Bitmap(img.Width, img.Height)
  36.         Dim ia As ImageAttributes = New ImageAttributes
  37.         Dim myColorMatrix As New ColorMatrix
  38.         With myColorMatrix
  39.             .Matrix00 = rr
  40.             .Matrix11 = gg
  41.             .Matrix22 = bb
  42.             .Matrix33 = 1.0
  43.             .Matrix44 = 1.0
  44.         End With
  45.         ia.SetColorMatrix(myColorMatrix)
  46.         ia.SetGamma(Gamma)
  47.         Dim g As Graphics = Graphics.FromImage(copy)
  48.         g.DrawImage(img, New Rectangle(0, 0, img.Width, img.Height), 0, 0, img.Width, img.Height, GraphicsUnit.Pixel, ia)
  49.         g.Dispose()
  50.         Return copy
  51.     End Function
  52.     Private Sub TrackBar2_ValueChanged(sender As System.Object, e As System.EventArgs) Handles TrackBar2.ValueChanged
  53.         gm = TrackBar2.Value / 10
  54.         Label3.Text = gm.ToString
  55.     End Sub
  56. End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы