Forums Neueste Beiträge
 

Problem mit Resize bei GDIPlus

21/02/2010 - 16:52 von Jürgen Schulz | Report spam
Hallo NG,
ich habe ein Problem bei dem ich nicht weiterkomme. Ich benutze das
Modul Bildfunktionen mit dem GDIPlus-API (GDIP) von Sascha Trowitzsch
01/2006. (Access 2003)

Wenn ich die Sub TestBildResize mehrfach aufrufe wird das Ursprungsbild
(2952*1944 / 1.116 KB) einmal mit 14 KB (so ist es richtig) und einmal
mit 5 KB (grob gepixelt) gespeichert. Ich kann das ganze aber nicht
immer nachvollziehen. Manchmal funktioniert es wenn ich irgendwo was
geàndert habe, freue mich, und dann funzt es danach irgendwann doch
nicht mehr.

Vielleicht hat ja einer von Euch ne Idee?

Jürgen

'-

Sub TestBildResize()
Dim sBild As String
Dim sName As String
Dim bol As Boolean
sBild = "C:\100_1272.jpg"
sName = "C:\Test_100_1272.jpg"
bol = BildResize(sBild, sName, 450, 337)
End Sub

'

Function BildResize(strBild As String, strNewName As String, lngBreite
As Long, lngHoehe As Long) As Boolean
Dim myPic As StdPicture
Dim myNewPic As StdPicture
Dim bol As Boolean

InitGDIP
Set myPic = LoadPictureGDIP(strBild)
Set myNewPic = ResampleGDIP(myPic, lngBreite, lngHoehe)
bol = SavePicGDIPlus(myNewPic, strNewName, pictypeJPG, 80)
ShutDownGDIP
Set myPic = Nothing
Set myNewPic = Nothing
BildResize = bol
End Function

'
 

Lesen sie die antworten

#1 Jürgen Schulz
22/02/2010 - 10:10 | Warnen spam
Hallo NG,
habe es jetzt rausgefunden (rausgegoogelt :-) )
siehe
http://www.meinews.net/bildaufl-t209591.html?t 9591

Zitat (Sascha Trowitzsch):
Ändere mal die Prozedurdeklaration von SavePicGDIPlus:

Function SavePicGDIPlus(ByVal Image As StdPicture, _
sFile As String, _
PicType As PicFileType, _
Optional Quality As Long = 80) As Boolean

Also Quality As Long statt Byte. Byte ist falsch.
Zitat Ende






Jürgen Schulz wrote:
Hallo NG,
ich habe ein Problem bei dem ich nicht weiterkomme. Ich benutze das
Modul Bildfunktionen mit dem GDIPlus-API (GDIP) von Sascha Trowitzsch
01/2006. (Access 2003)

Wenn ich die Sub TestBildResize mehrfach aufrufe wird das
Ursprungsbild (2952*1944 / 1.116 KB) einmal mit 14 KB (so ist es
richtig) und einmal mit 5 KB (grob gepixelt) gespeichert. Ich kann
das ganze aber nicht immer nachvollziehen. Manchmal funktioniert es
wenn ich irgendwo was geàndert habe, freue mich, und dann funzt es
danach irgendwann doch nicht mehr.

Vielleicht hat ja einer von Euch ne Idee?

Jürgen

'-

Sub TestBildResize()
Dim sBild As String
Dim sName As String
Dim bol As Boolean
sBild = "C:\100_1272.jpg"
sName = "C:\Test_100_1272.jpg"
bol = BildResize(sBild, sName, 450, 337)
End Sub

'

Function BildResize(strBild As String, strNewName As String, lngBreite
As Long, lngHoehe As Long) As Boolean
Dim myPic As StdPicture
Dim myNewPic As StdPicture
Dim bol As Boolean

InitGDIP
Set myPic = LoadPictureGDIP(strBild)
Set myNewPic = ResampleGDIP(myPic, lngBreite, lngHoehe)
bol = SavePicGDIPlus(myNewPic, strNewName, pictypeJPG, 80)
ShutDownGDIP
Set myPic = Nothing
Set myNewPic = Nothing
BildResize = bol
End Function

'

Ähnliche fragen