Autor Beitrag
Bergmann89
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1742
Erhaltene Danke: 72

Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
BeitragVerfasst: Do 16.08.07 19:04 
HI,

ich bau mr grad n Puzzlespiel und hab folgendes Problem:

wenn ich einfach die Height und die Width von der TImage änder, ändert sich die Auflösung nicht mit und wenn ich die Puzzleteile mithilfe der CopyRect Funktion gleich verkleiner,dann lässt die Quallität zu wünschen übrig.

Hat einer von euch ne Idee, die ich das lösen kann?
Schonmal Danke für die Hilfe.

MfG Bergmann.


Moderiert von user profile iconChristian S.: Überflüssige Zeilenumbrüche entfernt
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 866
Erhaltene Danke: 43

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: Do 16.08.07 22:18 
beim verkleinern muss man notgedrungen qualitätsverluste hinnehmen. hast dus schon mit image1.stretch:=true versucht?
Lossy eX
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1048
Erhaltene Danke: 4



BeitragVerfasst: Fr 17.08.07 09:53 
Wenn du CopyRect benutzt dann kannst du auch folgendes vorher machen.
ausblenden Delphi-Quelltext
1:
SetStretchBltMode(Bitmap.Canvas.Handle, HALFTONE);					

Damit weißt du Windows an das er das Bild resamplen soll. Das bedeutet, dass Pixel die zusammenfallen würden auch zusammen verrechnet werden (der Mittelwert gebildet). Ansonsten würde er nur irgendeines benutzen.

Das geht aber nur unter Windows XP. Wenn es auch früher laufen soll müsstest du das per Hand machen. Und du darfst davon ausgehen, dass per hand auch etwas langsamer sein dürfte.
www.swissdelphicente...showcode.php?id=2403

_________________
Nur die Menschheit ist arrogant genug, um zu glauben sie sei die einzige intelligente Lebensform im All. Wo nicht mal das nachhaltig bewiesen wurde.
Bergmann89 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1742
Erhaltene Danke: 72

Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
BeitragVerfasst: Fr 17.08.07 14:04 
HI,

sieht zwar n bisl besser aus, aber is auch nich grad gut! Siehe bild!

MfG Bergmann.
Einloggen, um Attachments anzusehen!
Lossy eX
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1048
Erhaltene Danke: 4



BeitragVerfasst: So 19.08.07 11:32 
Diesen Effekt kenne ich eigentlich nur wenn ein Video kleiner als 1:1 dargestellt wird und die Hardware keine sinnvolle Videobeschleunigung hat. Könnte mir gut vorstellen, dass die irgendwie auch drauf zurückgreift. Oder hast du rein zufällig 16 Bit Farbtiefe eingestellt?

Im Zweifel müsstest du es halt per Hand kleiner berechnen. Dazu ja auch der andere Link.

_________________
Nur die Menschheit ist arrogant genug, um zu glauben sie sei die einzige intelligente Lebensform im All. Wo nicht mal das nachhaltig bewiesen wurde.
Bergmann89 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1742
Erhaltene Danke: 72

Win7 x64, Ubuntu 11.10
Delphi 7 Personal, Lazarus/FPC 2.2.4, C, C++, C# (Visual Studio 2010), PHP, Java (Netbeans, Eclipse)
BeitragVerfasst: Mo 20.08.07 13:48 
Habs jetzt mit dem Code aus dem Link probiert, da gehts wirklich besser^^
danke!