Модератор: BV
Public Const ILLUMINANT_A = 1
Public Const HALFTONE = 4
Public Type COLORADJUSTMENT
caSize As Integer
caFlags As Integer
caIlluminantIndex As Integer
caRedGamma As Integer
caGreenGamma As Integer
caBlueGamma As Integer
caReferenceBlack As Integer
caReferenceWhite As Integer
caContrast As Integer
caBrightness As Integer
caColorfulness As Integer
caRedGreenTint As Integer
End Type
Public Declare Function StretchBlt Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long
Public Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal nStretchMode As Long) As Long
Public Declare Function GetColorAdjustment Lib "gdi32" (ByVal hdc As Long, lpca As COLORADJUSTMENT) As Long
Public Declare Function SetColorAdjustment Lib "gdi32" (ByVal hdc As Long, lpca As COLORADJUSTMENT) As Long
Public Declare Function GetStretchBltMode Lib "gdi32" (ByVal hdc As Long) As Long
Public Sub Mylt(ByRef Source As PictureBox, ByVal HScroll1 As Long, ByVal filt As Integer)
Dim CA As COLORADJUSTMENT
GetColorAdjustment Source.hdc, CA
CA.caSize = Len(CA)
Select Case filt
Case 1: CA.caColorfulness = HScroll1 ' Насыщенность
Case 2: CA.caBrightness = HScroll1 ' яркость
Case 3 ' контрастность
CA.caBrightness = -HScroll1 * 2
CA.caContrast = HScroll1
End Select
CA.caIlluminantIndex = ILLUMINANT_A
If GetStretchBltMode(Source.hdc) <> HALFTONE Then
SetStretchBltMode Source.hdc, HALFTONE
End If
SetColorAdjustment Source.hdc, CA
Source.ScaleMode = vbPixels
StretchBlt Source.hdc, 0, 0, Source.ScaleWidth, Source.ScaleHeight, Source.hdc, 0, 0, Source.ScaleWidth, Source.ScaleHeight, vbSrcCopy
End Sub
2, при размытии рисунок сдвигается вправо+вниз на 1-2 пикселя(не проверял наскока)
пока всё
Naked писал(а):думаю что надо исходники добавить
GAGArin писал(а):Может не совсем по теме, но давно хотел найти исходник параметрической Flare.
GAGArin писал(а):Не только при размытии. Emboss действует аналогично (до сих пор)
Mikle писал(а):Для 1. размеры, кратные 2, не критичны ,
а ограничение радиуса можно и исправить.
--=GAMER=-- писал(а):Сохранение - запись файлов тоесть в *.bmp или *.jpg иначе программа не имеет смысла
BV писал(а):И всё-таки сделать сохранение?
--=GAMER=-- писал(а):ОДНОЗНАЧНО ДА
--=GAMER=-- писал(а):Добавь фильтры свечения !
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10