Peter Huber, CodeProject 19.05.2023, 09:30 Uhr

WPF: Die richtige Bildgröße

WPF hat versucht, schlauer zu sein als Windows und hat DIP, geräteunabhängige Pixel, eingeführt, die dafür sorgen sollen, dass ein Bild unabhängig von der Größe des Monitors in der gleichen Größe (Zoll) angezeigt wird.
(Quelle: CodeProject.com)
Was sich wie eine Verbesserung anhört, könnte in Wirklichkeit ein Nachteil sein. Wenn ein Bild, das auf einem Laptop-Bildschirm angezeigt wird, x Zoll einnimmt, sollte es weder auf einem Mobiltelefon noch auf einem Fernseher die gleiche Zollgröße haben. Dieser von Entwickler Peter Huber auf CodeProject hinterlegte Artikel zeigt, wie man WPF dazu bringt, sich mehr wie Windows zu verhalten.
Die Problematik: WPF verwendet die dpi-Informationen der Bilddatei für die Anzeige auf dem Monitor. Wenn die Datei 96 Pixel breit ist und einen DPI-Wert von 96 hat, versucht WPF, sie auf einem 96-dpi-Monitor und einem 192-dpi-Monitor mit einer Länge von 1 Zoll anzuzeigen. Im ersten Fall werden 96 Monitorpixel verwendet, im zweiten Fall 192. Leider ist dem Benutzer in vielen Fällen die tatsächliche Größe egal, er will das ganze Bild sehen, egal ob er auf einen kleinen Telefonbildschirm, einen Laptop-Bildschirm oder einen riesigen Fernsehbildschirm schaut. Was nützt es, wenn das Bild mit 1 Zoll auf einem 100-Zoll-Fernseher angezeigt wird?
In diesem Artikel erklärt Entwickler Peter Huber, wie man Code schreibt, damit WPF mit Bildern so umgeht, wie es Windows tut. Die Lösung ist tatsächlich einfach, aber so sagt Huber "ich habe einen Monat gebraucht, um sie herauszufinden."


Das könnte Sie auch interessieren