AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[FMX] UI wird nicht sauber gezeichnet

Ein Thema von Darlo · begonnen am 14. Okt 2016 · letzter Beitrag vom 8. Nov 2016
Antwort Antwort
Seite 3 von 3     123   
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#21

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 13:46
Ich wüsste aber langsam auch gerne wie man aus der Nummer wieder herauskommt. Es ist ja anscheinend dass er die einzelnen Teile des "Bitmap-Stil-Designers" nicht so ganz richtig aufeinanderlegt. Im Anhang einmal ein Beispiel mit einem TButton. Ich denke mal das ist einfach so und man kann nichts dagegen tun, oder?
Das ist die Sache, die für mich nicht nachvollziehbar ist, dass genau dieser Fehler nicht immer auftaucht. Mal wird es in einer View richtig angezeigt mal wieder nicht...
Philip
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#22

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 15:18
Ich denke es tritt per se auf, nur manchmal deutlich sichtbar, manchmal weniger deutlich. Hast du nochmal ein Quellcodebeispiel? Bei mir reicht es ein TScaledLayout zu nehmen und einen Button reinzustecken.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#23

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 17:29
Ich wüsste aber langsam auch gerne wie man aus der Nummer wieder herauskommt. Es ist ja anscheinend dass er die einzelnen Teile des "Bitmap-Stil-Designers" nicht so ganz richtig aufeinanderlegt. Im Anhang einmal ein Beispiel mit einem TButton. Ich denke mal das ist einfach so und man kann nichts dagegen tun, oder?
Hier hatte ich mal einen WorkAround dazu gepostet:

http://www.delphipraxis.net/179890-u...itfeldern.html
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#24

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 17:47
Nein, ich meinte nicht die Edit-Geschichte.

Ich habe (zumindest bislang) keine komischen Linien in Edit-Feldern. Ich habe dass, wenn man genau hinschaut, bei starker Vergrößerung sieht wie die Komponenten aus einzelnen Bitmaps zusammengesetzt werden. Das sollte die Abbildung des Buttons weiter oben zeigen.
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#25

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 17:57
Wäre hilfreich, wenn Du mal einen Beispiel-Code posten würdest, bislang habe ich nur Bilder und Exe-Dateien gefunden (so kann ich nicht nachvollziehen, welche Komponenten-Zusammenstellung Du da letztlich genau verwendest), oder habe ich was übersehen?

Davon abgesehen, halte ich es aber nicht für ausgeschlossen, dass es die gleiche Problematik wie bei den Edit, ComboBox, Buttons, Listbox usw. -Controls sein könnte. Zumindest der Button in Deiner Beispiel-Exe hat bei mir blaue Linien (siehe anliegenden Screenshot).
Miniaturansicht angehängter Grafiken
blueline.jpg  

Geändert von Harry Stahl ( 8. Nov 2016 um 18:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#26

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 17:59
Im Prinzip nutzt FMX auch in der HD-Variante eine 3D-Grafikengine und die arbeitet halt nicht mit ganzen Pixeln ... da kann schonmal bissl was 'nen Hauch verrutschen und schon hat man unscharfe Kanten, unscharfe Schrift, komische Linien und wer weiß was sonst noch.

Du bauchst einfach nur 'en UltraHD-Display mit megavielen DPI ... da fallen dann diese kleinen Fehler nicht mehr auf, wenn sie nur 'nen Pixel breit sind.

PS: Sowas bitte nicht als JPEG ... nehmt doch bitte PNG oder ein anderes verlustfreies Format.
Sonst sieht man mehr Fehler/Unschärfen, als es gibt.
$2B or not $2B

Geändert von himitsu ( 8. Nov 2016 um 18:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 18:16
Im Prinzip nutzt FMX auch in der HD-Variante eine 3D-Grafikengine und die arbeitet halt nicht mit ganzen Pixeln ... da kann schonmal bissl was 'nen Hauch verrutschen und schon hat man unscharfe Kanten, unscharfe Schrift, komische Linien und wer weiß was sonst noch.

Du bauchst einfach nur 'en UltraHD-Display mit megavielen DPI ... da fallen dann diese kleinen Fehler nicht mehr auf, wenn sie nur 'nen Pixel breit sind.

PS: Sowas bitte nicht als JPEG ... nehmt doch bitte PNG oder ein anderes verlustfreies Format.
Sonst sieht man mehr Fehler/Unschärfen, als es gibt.
OK, stimmt, anliegend noch mal als verlustfreies PNG.
Miniaturansicht angehängter Grafiken
blueline2.png  
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#28

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 18:41
Anbei einmal ein komplettes Sample. Einfach neue Anwendung und diesen Code einfügen:
Delphi-Quellcode:
implementation uses FMX.Layouts, FMX.StdCtrls, FMX.Styles;

{$R *.fmx}

procedure TForm1.FormCreate(Sender: TObject);
var
   newLayout:      TScaledLayout;
   paddingRect:   TRectF;
   newButton:      TTextControl;
begin
   ClientWidth := 80; ClientHeight := 60;

   newLayout := TScaledLayout.Create(self);
   newLayout.Parent := self;
   newLayout.Size.Size := TSizeF.Create(ClientWidth, ClientHeight);
   newLayout.OriginalWidth := ClientWidth;
   newLayout.OriginalHeight := ClientHeight;
   newLayout.Align := TAlignLayout.Fit;

   paddingRect := newLayout.Margins.Rect;
   paddingRect.Offset(6, 6);
   newLayout.Margins.Rect := paddingRect;

   newButton := TButton.Create(self);
   newButton.Parent := newLayout;
   newButton.Align := TAlignLayout.Client;
   newButton.Text := 'FMX';
   newButton.OnClick := handleButtonClick;
end;

procedure TForm1.handleButtonClick(Sender: TObject);
var
   openDialog: TOpenDialog;
begin
   openDialog := TOpenDialog.Create(nil);
   try
      if openDialog.Execute() then
         TStyleManager.SetStyleFromFile(openDialog.FileName);
   finally
      openDialog.Destroy();
   end;
end;
Wenn man auf den Button drückt kann man eine FMX-Style-Datei einladen und anwenden. Das zeigt wohl: FMX an sich macht alles richtig, es sind wohl die Styles selber. Oder irgendetwas darin.

Anbei zwei Bilder: Sie zeigen einfach nur zwei unterschiedliche Styles. Der erste sieht in jeder Lebenslage traumhaft aus (!), beim zweiten sieht man leider überdeutlich diese komischen Linien.
Miniaturansicht angehängter Grafiken
fmx2.png   fmx1.png  
  Mit Zitat antworten Zitat
Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.538 Beiträge
 
Delphi 11 Alexandria
 
#29

AW: [FMX] UI wird nicht sauber gezeichnet

  Alt 8. Nov 2016, 19:37
Schon mal eins dazu: Wenn der Button im Gradient-Style gemalt wird, ist alles OK.

Probleme gibt es wohl nur bei dem normalen Zeichenstil. Ich fürchte, man müsste sich mal genau ansehen, wie FMX hier die Zeichenausgabe macht, da wird es ein Rundungsproblem geben oder ein Clipping-Problem (falsche Grenzen).
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz