![]() |
AW: Delphi XE3?
Zitat:
|
AW: Delphi XE3?
Zitat:
So wie ich jetzt alles verstehe was über XE3 und Mobile Studio geschrieben wurde, werden im Mobile Studio ja nur unwichtige Desktop-Funktionen deaktiviert, Reports gehören ja hoffentlich nicht zu diesem unwichtigen Desktop-Zeugs ;-) |
AW: Delphi XE3?
@MEissing: Vielen Dank für das Angebot, im Prinzip war das aber nichts anderes als folgendes:
Code:
Das Rendern des Grids dauert unter GDI+ 2-10ms, mit D2D 30-100ms und auf OSX knapp 500ms. In unserem Anwendungsfall darf das nur <10ms kosten. Ich habe das mittels eines Font Rasterizers gelöst, da hat man eine 1Bit Textur für den Font und zeichnet das dann auf den Framebuffer. So gehts dann auch unter 4ms. Das andere Problem ist wesentlich schlimmer. function GetTickCount: Cardinal; {$IFDEF MACOS} begin Result := AbsoluteToNanoseconds(UpTime) div 1000000; end; {$ENDIF MACOS} {$IFDEF MSWINDOWS} begin Result := Winapi.Windows.GetTickCount; end; {$ENDIF} function TForm1.RenderPane: Cardinal; var Row, Col: integer; w, h, x, y: integer; begin Result := GetTickCount; try w := 30; h := 25; FBackBuffer.Canvas.BeginScene; FBackBuffer.Canvas.Clear($FF000000); FBackBuffer.Canvas.Font.Size := 30; FBackBuffer.Canvas.Fill.Color := $FFFFFFFF; for Row := 0 to 24 do begin y := Row * h; for Col := 0 to 39 do begin x := Col * w; FBackBuffer.Canvas.FillText(RectF(x, y, x + w, y + h), FGrid[Row, Col], false, $FF, [], TTextAlign.taLeading); end; end; FBackBuffer.Canvas.EndScene; finally Result := GetTickCount - Result; end; end; Wenn man eine einfache Listbox mit ein paar hundert Einträgen erstellt und scrollt, habe ich hier eine Rechenlast von >60% auf dem Mac. Peter |
AW: Delphi XE3?
Zitat:
Was für ein Typ ist FBackBuffer Was FGrid? |
AW: Delphi XE3?
FBackBuffer ist ein TBitmap und FGrid in dem Beispiel ein Array [0 .. 24, 0 .. 39] of Char;
Bei der Gelegenheit: In TCanvasQuartz.Filltext und Measuretext fehlen am Ende ein CFRelease(str). Peter |
AW: Delphi XE3?
Ich vermute mal, dass das besser funktionieren wird, wenn du MEissing eine kleine Demo (kompilier-)fertig machst.
Man hat ja auch nicht immer die Gelegenheit, so direkt supported zu werden :mrgreen: |
AW: Delphi XE3?
Das ist die neue Compiler-Generation in XE3: HLC - Human-Live-Compiler. Gibt's nur in der Personal-Edition.
:mrgreen: |
AW: Delphi XE3?
*grins* Was für eine SA brauche ich dafür?
|
AW: Delphi XE3?
Lebensversicherung :stupid:
|
AW: Delphi XE3?
Liste der Anhänge anzeigen (Anzahl: 1)
Nun gut, anbei mal 2 Demos.
Das erste ist ein einfaches Bitmap-Beispiel und das zweite ist ein kleines Spiel. Übrigens die D7 Variante davon läuft auf einem Uralt-PC problemlos. Der XE2 FMX Port nicht wirklich :) Ich weiß der Code ist nicht aufgeräumt, aber wer ihn nutzen will: Ich veröffentliche das ganze mal als Public Domain.. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:47 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 by Thomas Breitkreuz