Ai mitä tällä tekee? No kuvan zoomaus kumpaakin suuntaan luulisi ainakin onnistuvan...
'tavallista kuvan venyttelyä varten Private 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 'näiden avulla sitten saadaankin jo parempi kuvanlaatu. Private Declare Function SetStretchBltMode Lib "gdi32" (ByVal hdc As Long, ByVal hStretchMode As Long) As Long Const STRETCHMODE = vbPaletteModeNone Public Sub Zoomaa() Dim z As Long 'tämän avulla saadaan parannettua kuvan laatua. 'jotta näet eron, kokeile ensin vain alemmalla rivillä ja sitten kummillakin. z = SetStretchBltMode(Form1.Suurennettu.hdc, STRETCHMODE) 'kopsaus ja zoomaus. z = StretchBlt(Form1.Suurennettu.hdc, 1, 1, 50, 50, Form1.Alkuperainen.hdc, 0, 0, 100, 100, vbSrcCopy) End Sub
tästähän on hyötyä! varsinkin omaan lensflare-efektiin :]
nyt siitäkin saa jopa lensflaren näköisen kun ei kaikki kuvat ole kokoaika samankokoisia :) täytyy koittaa soveltaa ja katsoa mites toimii :>
Hieno hommeli!
En omista VBtä, joten haluaisin tietää mikä arvo "vbPaletteModeNone" on. Siis mikä numero.
vbPaletteModeNone = 4
Arvelinkin sitä; antaa tosiaan paljon paremman kuvanlaadun. Tuon takia se ei sitten taida toimia Win95/98/ME -puolella.
Aihe on jo aika vanha, joten et voi enää vastata siihen.