Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Mit welcher Icongröße würde man ein Programm (auch für 4k) bebildern?
Stu42
myCSharp.de - Member



Dabei seit:
Beiträge: 506
Herkunft: Aus dem Norden

Themenstarter:

Mit welcher Icongröße würde man ein Programm (auch für 4k) bebildern?

beantworten | zitieren | melden

Hallo,

mit welcher Icongröße würde man performant ein Programm bebildern, welches auch auf
einem 4k-Bildschirm, bzw. bei höherer dpi gut aussieht?

Normalerweise binde ich Bilder in 96 dpi in meine WPF Programme ein. D.h wenn ich ein 32 wpf-unit Icon "Slot" habe, nehme ich ein 32 px icon.

Wenn ich nun aber möchte, dass das eingebundene Bild auf höheren DPI-Einstellungen gut aussieht, müsste ich ja ein Bild mit höherer Auflösung bzw. einfach mehr Pixeln nehmen.
Also z.B. für ein 16 wpf-unit icon ein 64 px icon.

Das Problem ist dann nur, dass wenn das WPF-Programm auf 96 dpi läuft, das zu große Bild herunterskaliert wird, was je nach qualität performance benötigt.

Wenn ich nun z.B. ein Tree-View mit viele Elementen (z.B. 5000) habe, wobei jedes Item ein Bild enthällt, ist es dann ratsam größere Bilder zu verwenden die man dann runterskalieren lässt?

Schöne Grüße, Stu
private Nachricht | Beiträge des Benutzers
pinki
myCSharp.de - Member

Avatar #avatar-4072.jpg


Dabei seit:
Beiträge: 704
Herkunft: OWL

beantworten | zitieren | melden

Hallo Stu,
ich selbst nutze, sofern vorhanden, Vektorgrafiken, damit das Problem nicht entsteht.

Gruß
Micha
private Nachricht | Beiträge des Benutzers
Stu42
myCSharp.de - Member



Dabei seit:
Beiträge: 506
Herkunft: Aus dem Norden

Themenstarter:

beantworten | zitieren | melden

Man kann ja z.B. Illustrator-Dateien auch als XAML speichern, die Ausgabe ist dann ein Resource-Dictionary mit "einigen" Elementen.
Ich hätte jetzt gedachte, dass das Rendern von diesen Vektorgrafiken noch viel länger dauert und mehr Speicher einnimmt.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16147

beantworten | zitieren | melden

Zitat von Stu42
Wenn ich nun z.B. ein Tree-View mit viele Elementen (z.B. 5000) habe, wobei jedes Item ein Bild enthällt
Niemand würde ein TreeView mit 5000 Einträgen sofort laden, sondern nur diese, die direkt sichtbar sind und den Rest dynamisch nachladen.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
pinki
myCSharp.de - Member

Avatar #avatar-4072.jpg


Dabei seit:
Beiträge: 704
Herkunft: OWL

beantworten | zitieren | melden

Dank Virtualisierung könnten nur die Grafiken gerendert werden, die auch wirklich angezeigt werden sollen.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von pinki am .
private Nachricht | Beiträge des Benutzers
Stu42
myCSharp.de - Member



Dabei seit:
Beiträge: 506
Herkunft: Aus dem Norden

Themenstarter:

beantworten | zitieren | melden

Virtualisierung ist aktiviert, ich schaue mal nach wie gut das geht, bisher aber keine Probleme.
Anscheinend benutzt VS2015 ja auch Vektorgrafiken, welche man übrigens auch in der VS2015 Image Library einsehen kann.

Danke für eure Antworten.
private Nachricht | Beiträge des Benutzers