25.04.2009, 15:42
|
#2 (Direktlink)
|
|
Super-Moderator
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.091
|
Hab deine Frage vorhin in Rolands Forum beantwortet, hat sich leider überschnitten. Also auch nochmal hier die Antwort:
Zitat:
Hallo Danny,
wie David schon geschrieben hat, biete ich Support für meine Dlls am liebsten in diesem Forum (http://www.paules-pc-forum.de/forum/dlls-includes-units-prozedur en/). Dort lese ich am häufigsten nach und so kann ich meine Sachen gut bündeln.
Zu deinem Anliegen:
SizeImage() nimmt ein Bild, verkleinert es und kopiert es in ein anderes Bild. Da du als Ziel für das neue Bild %HDC angegeben hast, wird das Bild verkleinert in das Profanfenster hinein gesetzt. Dann speichert du das Originalbild neu ab, das aber gar nicht verändert wurde...
Du könntest dein Bild nun einfach in das Originalbild bild& resizen. Das hätte aber den Nachteil, dass das verkleinerte Bild zwar dorthin kopiert würde, aber die Maße des Bilds würden sich nicht ändern und Reste des Originalbilds würden im Hintergrund mitgespeichert.
So solltest du vorgehen:
Ein neues Bild mit den neuen Maßen erstellen, verkleinertes Bild mit SizeImage dorthin kopieren und dann dieses neue Bild speichern.
Vom Code her würde das so aussehen:
Code:
Declare new&
new&=CreateImage(%hdc,@div(x&,2),@div(y&,2))
SizeImage(new&,0,0,@div(x&,2),@div(y&,2),bild&,0,0,x&,y&,0)
SaveImage(new&,addr(Verz$),1,8)
Hoffe, das war so verständlich.
|
Geändert von Frabbing (25.04.2009 um 15:44 Uhr)
|
|
|