Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   [firemonkey] - Pixeldichte erhöhen (https://www.delphipraxis.net/184668-%5Bfiremonkey%5D-pixeldichte-erhoehen.html)

Sir Rufo 16. Apr 2015 18:23

AW: [firemonkey] - Pixeldichte erhöhen
 
Zitat:

Zitat von stoxx (Beitrag 1298043)
vielleicht machts ja mit folgedem Beispiel "klick"?

Evtl. macht es ja auch klick (bei wem auch immer) wenn man einen Blick in die Dokumentation wirft.

MultiResBitmap-Editor

Der erste Satz ist dabei sehr interessant
Zitat:

Mit dem MultiResBitmap-Editor können Sie beim Entwurf die Eigenschaften von Bitmaps mit Mehrfachauflösung bearbeiten. Ein Bitmap mit Mehrfachauflösung ist eine Bitmap-Sammlung, die für jeden Skalierungsfaktor ein Bitmap enthält. Beispielsweise benötigt eine iOS-App Bilder für festgelegte Retina- und Nicht-Retina-Geräte. Die verschiedenen Bitmap-Elemente können aus denselben oder unterschiedlichen Quellbilddateien stammen.
und weiter heißt es
Zitat:

Auf dem jeweiligen Gerät ruft TImage zur Laufzeit das geeignetste Bitmap für die Anzeige aus der Bitmap-Sammlung in TFixedMultiResBitmap ab. Die erhaltene Skalierung des Bitmaps sollte am besten für den Bildschirm passen, auf dem das Bitmap angezeigt wird.
Wenn es jetzt immer noch kein Besuch von Susanne Klicker-Klacker da war, dann hilft einfach nur noch ausprobieren, so wie in dem Link gezeigt.

stoxx 16. Apr 2015 18:35

AW: [firemonkey] - Pixeldichte erhöhen
 
Zitat:

Zitat von Sir Rufo (Beitrag 1298044)

Evtl. macht es ja auch klick (bei wem auch immer) wenn man einen Blick in die Dokumentation wirft.

MultiResBitmap-Editor

warum muss man denn immer gleich frech werden, vor allen Dingen, wenn man einen Sachverhalt noch nicht verstanden hat?
Das ist alles nicht das Thema.

Anleitung zum Verstehen:


Nochmal ..
Bitte ein TImage auf ein Formular packen.
Vollbild.
alClient ...
Physikalische Auflösung in der Bedienungsanleitung des eigenen Gerätes nachschauen.

z.b. 5 Zoll Gerät und feststellen, es kann 1280 x 720 Bildpunkte darstellen.

Dann ein Bild bei google suchen
(einfach 720 x 1280) eingeben, dann auf Bildersuche.
Bild raussuchen, dann auf TImage packen.
Einen Button auf die Anwendung packen.
Die Dimension des TImage ausgeben

(self.width und self.height = formular Dimensionen)
(img1.width und img1.height = Dimension vom TImage)

Anwendung auf das mobile Gerät bringen.
ohje .. feststellen, dass das Bild viel kleiner als 1280 x 720 Bildpunkte ist.

Außerdem sieht man das bei Schriften.
Ich wollte ja nur scharfe Schriften, (also gestochen scharfe)
Da das nicht ging, bin ich dem Thema auf dem Grund gegangen.
Ich hab nie nach Multiresbitmaps gefragt!!!!!


Zitat:

Zitat von Sir Rufo (Beitrag 1298044)
Wenn es jetzt immer noch kein Besuch von Susanne Klicker-Klacker da war

Ich glaub, das wird Dir noch peinlich sein....
.

stoxx 16. Apr 2015 18:53

AW: [firemonkey] - Pixeldichte erhöhen
 
Zitat:

Auf dem jeweiligen Gerät ruft TImage zur Laufzeit das geeignetste Bitmap für die Anzeige aus der Bitmap-Sammlung in TFixedMultiResBitmap ab. Die erhaltene Skalierung des Bitmaps sollte am besten für den Bildschirm passen, auf dem das Bitmap angezeigt wird.

ja, da steht nur, was am besten passen würde.
Und ist nur wirklich wichtig, wenn Du für ein kleines handy entwickelst, und dann auf einmal die gleiche Anwendung auf ein Tablet hochziehst.
unter Android kannst du auch IMMER hoch aufgelöste Bilder hinterlegen, also gleich fürs Tablet entwickeln, die dann klein gerechnet werden, wenn die Anwendung auf einem handy läuft (und du den Scale faktor benutzt)
Nur Apple scheint das aus Performance technischen Gründen nicht zu mögen, und möchte verschiedenen Bilder hinterlegt haben.

Da steht also nur, was am besten passen würde.
Meine Frage war aber, dass scheinbar 160 PPI das Maximum (unter firemonkey) zu sein scheint.
Und wie ich dieses erhöhen könne.
Mehr hab ich nicht gefragt.

Sir Rufo 16. Apr 2015 19:17

AW: [firemonkey] - Pixeldichte erhöhen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Wie groß machst du denn das Formular zur Entwurfszeit?

Sag jetzt bitte nicht "So groß wie die physikalische Dimension des Ziel-Device."

Denn das ist absolut falsch, denn (ein weiterer Link aus der Dokumentation)
http://docwiki.embarcadero.com/RADSt...aufl%C3%B6sung

Und da heißt es zudem
Zitat:

Skalierung: FireMonkey verwendet logische Koordinaten und logische Größen. Bei Bitmaps mit Mehrfachauflösung schätzt FireMonkey mithilfe der Eigenschaft Scale (Skalierung) die Beziehung zwischen logischen Einheiten und physikalischen Einheiten ein.
Ich habe es übrigens gerade mit einem Samsung GALAXY Note 10.1 (2560x1600 phys./1280x800 log.) ausprobiert und dort in eine Form (1280x800) ein TImage geklatscht (so groß wie das Formular) und dann zwei Bilder dort hinterlegt.
  • Scale 1.0 = 1280x800
  • Scale 2.0 = 2560x1600
Die exakte Dimension habe ich vorher noch als Text in das Bild gelegt. Und siehe da, obwohl die Form und die Image-Komponente nur eine Größe von 1280x800 haben wird mir (gestochen scharf) das Bild mit der Auflösung 2560x1600 angezeigt.

stoxx 16. Apr 2015 19:30

AW: [firemonkey] - Pixeldichte erhöhen
 
Ich weiß gerade nicht mehr, wie ich es erklären soll.

Natürlich wählt Firemonkey das entsprechende Bild mit der dazu passenden Skalierung aus.
Es stellt es aber NICHT SO HOCHAUFLÖSEND DAR. sondern nämlich nur mit 160 ppi.
Dein Bildschirm hat laut Internetangaben 299 ppi.

Zitat:

Zitat von Sir Rufo (Beitrag 1298066)
Wie groß machst du denn das Formular zur Entwurfszeit?

Sag jetzt bitte nicht "So groß wie die physikalische Dimension des Ziel-Device."

doch, zum Test sollst Du das ja sogar so machen.


Wenn ich es schaffe, mach ich morgen nochmal ein Beispiel Bild und mache DANN ein Screenshot mit dem Gerät.
Dann vergrößern wir das in einem Bildbearbeitungsprogramm.
Dann sollte es verständlicher sein.

Oder geb Dir doch endlich mal TImage.width aus !!
Das ist EIN Button klick.

stoxx 16. Apr 2015 19:37

AW: [firemonkey] - Pixeldichte erhöhen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Sir Rufo (Beitrag 1298066)
Die exakte Dimension habe ich vorher noch als Text in das Bild gelegt. Und siehe da, obwohl die Form und die Image-Komponente nur eine Größe von 1280x800 haben wird mir (gestochen scharf) das Bild mit der Auflösung 2560x1600 angezeigt.



.. und siehe da, Dein 2560x1600 Bild hat nur 1280 x 800 Bildpunkte !!!
(Jetzt verstanden) ?

Sir Rufo 16. Apr 2015 19:39

AW: [firemonkey] - Pixeldichte erhöhen
 
Vielleicht muss ich es größer und fetter schreiben:

Die TImage-Komponente hat die Größe 1280x800, was aber zu erwarten ist, da ich hier die logischen Werte bekomme, da FMX mit den logischen Werten arbeitet :roll:

Sir Rufo 16. Apr 2015 19:43

AW: [firemonkey] - Pixeldichte erhöhen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von stoxx (Beitrag 1298072)
Zitat:

Zitat von Sir Rufo (Beitrag 1298066)
Die exakte Dimension habe ich vorher noch als Text in das Bild gelegt. Und siehe da, obwohl die Form und die Image-Komponente nur eine Größe von 1280x800 haben wird mir (gestochen scharf) das Bild mit der Auflösung 2560x1600 angezeigt.



.. und siehe da, Dein 2560x1600 Bild hat nur 1280 x 800 Bildpunkte !!!
(Jetzt verstanden) ?

Nein hat es nicht ... das war die Foren-Software (hatte mich schon gewundert, warum das Bild so klein von der Datengröße war).

Im Anhang die Original-Bilder als ZIP

Sir Rufo 16. Apr 2015 20:30

AW: [firemonkey] - Pixeldichte erhöhen
 
Liste der Anhänge anzeigen (Anzahl: 4)
Hier haben wir nun 2 Bilder in der Auflösung
400x400
Anhang 42961
und 800x800
Anhang 42962

Auf eine Form lege ich nun 2x
Delphi-Quellcode:
TImage
mit 400x400!
Mit dem MultiResBitmap-Editor füge ich bei dem Image1 nur das 400x400 Bild (Scale 1.0) ein.
Image2 bekommt das 400x400 Bild (Scale 1.0) sowie das 800x800 Bild (Scale 2.0).

Und das kommt dann dabei heraus (Screenshot als zip)
Anhang 42963

Darlo 16. Apr 2015 20:32

AW: [firemonkey] - Pixeldichte erhöhen
 
Wie kommst Du denn auf die 160 ppi?


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:54 Uhr.
Seite 2 von 3     12 3      

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