Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#21

AW: BITBLT cross platform variante für FMX / LINUX

  Alt 2. Nov 2018, 10:30
So wird das nichts.
Du musst eine High Level Lösung finden, die dir solche Details wie Aufrufparameter wegkapselt, wenn du nur ein Bitmap auf einen Canvas/anderes Bitmap malen willst.
Dito!
So wie ich das verstehe will er folgendes verwirklichen.

Delphi-Quellcode:
function BitBltWrapper(DC: HDC; x, y, cx, cy: Integer; srcDC: HDC; x1, x2: Integer; rop: DWORD): BOOL;
var
  IsWindows, IsUnix: BOOL // muss außen definiert werden nur ein Beispiel
begin

  Result := false;

  if IsWindows then
    Result := BitBlt(DC, x, y, cx, cy, srcDC, x1, x2, rop)
  else
  if IsUnix then
    Result := MyUnixBitBlt(DC, x, y, cx, cy, srcDC, x1, x2, rop);
end;
Das Problem ist nun für UNIX den vergleich zu finden.
Wie er sich das DC und die anderen Parameter im weiteren verlauf holt mag mal dahingestellt sein.

Zitat:
Warum nicht gleich überall die Version nehmen, die überall funktioniert?
Will er ja nur er möchte das Format (den Aufruf von BitBlt) erhalten!
Da sehe ich nichts falsches dran.

gruss

Geändert von EWeiss ( 2. Nov 2018 um 10:47 Uhr)
  Mit Zitat antworten Zitat