![]() |
[firemonkey] - Pixeldichte erhöhen
Ich habe hier ein Gerät mit 720 x 1280 Pixeln. (echten physischen Bildpunkten)
Dennoch hab ich in meiner Firemonkey Anwendung nur 360x615 Bildpunkte zur Verfügung. (self.width x self.heigth) Bilder und Schriften sind dadurch unnötig unscharf, was nicht sein müsste. Jetzt findet man im Netz an 2 Stellen eine dubiose 160 ppi, welche Firemonkey maximal untestützten würde. Was ich mir aber nicht vorstellen kann, dann wäre das ganze Firemonkey Framework eigentlich recht ungeeignet für noch neuere Gerätegenerationen. Weiß jemand, wie man die Pixeldichte höher einstellen kann? Recht vielen Dank! |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Firemonkey arbeitet immer mit Auflösung 1... Bedeutet, wenn Du ein Image auf Vollbild machst brauchst Du die Auflösung 360x615 dieses wird dann hochskalliert. Damit das nicht passiert, kannst Du das gleiche bild in doppelter 2x auch noch hinlegen. (1.5x,2.5x,3.0x) geht natürlich auch... FMX nimmt dann das Bild welches am besten passt. Das gleiche gilt auf für die Styles die gibt es in 1x 2x 3x (XE8) Deine Clientwidth ändert sich nicht... Das ist für die Interne Berechnung immer gleich... Mavarik |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Hier näheres zur Thematik unter native Android. ![]() Der interne Firemonkey Scale Faktor ist mir dabei erstmal unwichtig. Wenn ich ein Bild mit 1024 x 800 Punkten habe, kann ich das nicht in hochauflösender Darstellung auf dem Bildschirm bringen, da ich ja nur 360 x 615 Bildpunkte habe. Es geht auch hauptsächlich um Schriften, die im Firemonkey mit 160 ppi nicht so gestochen scharf dargestellt werden, wie mit einer Android Anwendung. Delphi würde demnach nur mdpi unterstützen, hdpi, xhdpi usw. würden gänzlich fehlen. ldpi (low) ~120dpi mdpi (medium) ~160dpi hdpi (high) ~240dpi xhdpi (extra-high) ~320dpi xxhdpi (extra-extra-high) ~480dpi xxxhdpi (extra-extra-extra-high) ~640dpi |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Nochmal... Deine 360x615 ist lediglich eine interne Rechengrundlage. Wenn Du eine native Auflösung hast die 4x hoher ist, musst Du die Grafiken auch 4x so groß hin legen... Die werden dann auch verwendet... Da die Styles auch "nur" Grafiken sind gilt das hier auch! Welche Delphi Version verwendest Du? |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Zitat:
Streich einfach mal den Firemonkey Scale Faktor kurzzeitig aus Deinem Kopf. Das ist nur dazu da, wenn man eine App für ein Handy entwickelt, dass diese nicht verschwommen auf einem Tablet aussehen würde, wenn man einfach hochscaliert. Nimm einfach ein TImage, setz einen Button drauf, und gib Dir die Höhe und Breite des Bildes aus, selbst ein Bild mit 720x1280 Punkten wird runtergerechnet auf 360 x 615. Eben halt auf mdpi. Android stellt nur virtuelle Pixel zur Verfügung, je nach ppi Dichte, die man haben möchte bzw das gerät überhaupt unterstützen kann. Und genau das möchte ich nicht, da heutige Displays viel höher auflösen können, als noch vor 3 Jahren. |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Zitat:
|
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
das Betriebssystem wäre mir in der Tat egal, aber das technische Gerät darunter interessiert mich dann allerdings schon. "Der Unterschied zwischen Theorie und Praxis ist in der Praxis weit höher als in der Theorie." Zitat:
Oder ich suche nach Lösungen, die unzulänglichkeit zu beheben? Was hälst Du davon? Ich stellte doch lediglich die Frage, welche Möglichkeiten es gibt, die Pixeldichte zu erhöhen. . |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Vergiss doch mal den VCL-Quark ein Image ist so groß wie die Dimension des Images... Deswegen nennt sich das ja MultiResBitmap... Weil Du da ein Image mit der doppelten Größer oder einem Vielfachen angeben kannst und dann werden die Pixel nativ angesprochen... |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Dachte das wäre klar, dass man unter Android keine VcL zum laufen bringt. Und muss ich Dir wirklich erst mit einem nativen Android Screenshot beweisen, und ein Treppchen Bild malen, damit du dann gezoomt die effektiven Pixel auszählen kannst, damit Du glaubst, dass Du auf dem Holzweg bist? aber richtig gewaltig auf dem Holzweg. und warum hat dann das gleiche TImage unter Windowas viel mehr effektive Pixel? Das sollte Dir zu denken geben. Was ist denn überhaupt Dein Gerät mit der höchsten ppi Dichte, damit du das mal testen kannst? PPI = Pixel pro Inch Deine von Dir gern aber leider falsch zitierten Multiresbitmaps haben damit gar nix zu tun, sondern diese kommen lediglich zum Tragen, wenn Du mit den Scale Faktoren arbeitest (und/oder mit TLayouts) |
AW: [firemonkey] - Pixeldichte erhöhen
vielleicht machts ja mit folgedem Beispiel "klick"?
wenn also mein TImage eine Dimension von 360 x 615 Punkten hat, mein Gerät aber bei einem 5 Zoll Display eine Auflösng von 1280 x 720 Nun .. da sollte eigentlich ersichtlich sein, dass da Punkte fehlen. Oder wie würdest du den 361 sten Bildpunkt von Hand rot darstellen wollen? oder den 500 sten? und wo lägen die Punkte vor allen Dingen dann? |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
![]() Der erste Satz ist dabei sehr interessant Zitat:
Zitat:
|
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
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:
. |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
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. |
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) ![]() Und da heißt es zudem Zitat:
|
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:
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. |
AW: [firemonkey] - Pixeldichte erhöhen
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
.. und siehe da, Dein 2560x1600 Bild hat nur 1280 x 800 Bildpunkte !!! (Jetzt verstanden) ? |
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: |
AW: [firemonkey] - Pixeldichte erhöhen
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Im Anhang die Original-Bilder als ZIP |
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:
mit 400x400!
TImage
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 |
AW: [firemonkey] - Pixeldichte erhöhen
Wie kommst Du denn auf die 160 ppi?
|
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
Ich habe aufgegeben es Ihm zu erklären... |
AW: [firemonkey] - Pixeldichte erhöhen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:05 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