![]() |
Delphi Chromium Embedded - XE3
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
Beim Kompilieren der unit ceffmx.pas zeigt es einige Fehlermeldungen an. Kann mir jemand helfen, den Code für XE3 lauffähig zu machen? Zitat:
Delphi-Quellcode:
function CefGetBitmap(const browser: ICefBrowser; typ: TCefPaintElementType; Bitmap: TBitmap): Boolean;
var w, h, i: Integer; p, s: Pointer; begin browser.GetSize(typ, w, h); Bitmap.SetSize(w, h); GetMem(p, h * w * 4); try Result := browser.GetImage(typ, w, h, p); s := p; for i := 0 to h - 1 do begin Move(s^, Bitmap.ScanLine[i]^, w*4); Inc(Integer(s), w*4); end; finally FreeMem(p); end; end; Zitat:
Delphi-Quellcode:
Move(s^, Bitmap.ScanLine[i]^, w*4);
Zitat:
Delphi-Quellcode:
dst := @PByte(StartLine)[offset]; // StartLine ist vermutlich eine Eigenschaft von TBitmap
Zitat:
Delphi-Quellcode:
Move(src^, dst^, offset);
Zitat:
Delphi-Quellcode:
with AbsoluteToLocal(Platform.GetMousePos) do
|
AW: Delphi Chromium Embedded - XE3
Das Problem ist wohl, dass Pointer s keinen Datentyp hat.
Ungetestet (hab kein XE)
Delphi-Quellcode:
function CefGetBitmap(const browser: ICefBrowser; typ: TCefPaintElementType; Bitmap: TBitmap): Boolean;
var w, h, i: Integer; p : Pointer; s : PInteger; // Zeiger auf einen Integer mit 4 Byte begin browser.GetSize(typ, w, h); Bitmap.PixelFormat := pf32bit; // Wichtig Bitmap.SetSize(w, h); GetMem(p, h * w * 4); try Result := browser.GetImage(typ, w, h, p); s := PInteger(p); for i := 0 to h - 1 do begin Move(s^, Bitmap.ScanLine[i]^, w*4); Inc(s); end; finally FreeMem(p); end; end; |
AW: Delphi Chromium Embedded - XE3
|
AW: Delphi Chromium Embedded - XE3
Wenn du nicht FireMonkey nutzt, brauchst du die ceffmx.pas gar nicht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz