Forum: Win32/Win64 API (native code)
by Schwedenbitter,
2. Dez 2010
So. Ich habe mir jetzt mal ausgehend von BUMMI's Änderungen am Quellcode von EWeiss die Procedure nachgebaut. Danke für die Tipps! Sie sieht jetzt so aus:Procedure StretchGdip(Var Bitmap: TBitmap; Const NewWidth, NewHeight: Integer;
Smoothing : SmoothingMode = SmoothingModeNone;
Interpolation: InterpolationMode = InterpolationModeDefault;
PixelOffset : PixelOffsetMode =...
Forum: Win32/Win64 API (native code)
by Schwedenbitter,
30. Nov 2010
Genau so. Ich bekomme Bilder von einem Scanner geliefert mit 300 oder 400 dpi. Unser System arbeitet Fax-konform (jedenfalls aus Sicht unseres Faxes) mit 200 dpi. Das reicht auch zum lesen. Die Bilder sehen nur nicht sehr schön aus, wenn ich das mit StretchBlt() verkleinere.
Außerdem drucken wir auch. Die Drucker arbeiten alle mit 600 dpi, so dass das Bild vergrößern muss. Und da ich "Blut...
Forum: Win32/Win64 API (native code)
by Schwedenbitter,
30. Nov 2010
Ich komme genau bis hierher und dann nicht mehr weiter. Ich habe ein TBimap erstelle, dorthinein eine Datei geladen und dann GdipCreateFromHDC(TBitmap.Canvas.Handle, graphics); aufgerufen.
Das bekomme ich eben nicht hin :wall:.
Ich übergebe jetzt graphics mit GdipSetInterpolationMode(graphics, 7), wobei gilt:
Type
GdipGraphics = Pointer;
GdipInterpolationMode = Integer;
Function...
Forum: Win32/Win64 API (native code)
by Schwedenbitter,
29. Nov 2010
Folgender Code funktioniert bei mir:Procedure TBitmapEx.StretchGDI(Const NewWidth, NewHeight: Integer);
Var
ScaleDown : Boolean;
W, H : Integer;
oldW, oldH : Integer;
Begin
If (self.Empty) Or
((NewWidth = 0) And (NewHeight = 0)) Or
((NewWidth = self.Width) And (NewHeight = self.Height)) Then
Exit;
Forum: Win32/Win64 API (native code)
by Schwedenbitter,
25. Nov 2010
Danke. Das bringt mich schon einmal auf Kurs!
Ich möchte keine fertige Klasse verwenden. Und ja, die Größe spielt bei uns eine Rolle, weil mein fertiges Programm aus bestimmten Gründen regelmäßig neu geladen und gestartet werden muss. Bei uns hängen mehrere Leute an einem VPN. Wenn ich die Datei größer mache, gibt es mit denen Ärger.
Außerdem experimentiere ich gern :lol:
Könntest Du das...