IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Presentation Foundation Discussion :

Ribbon - Pixellisation des images


Sujet :

Windows Presentation Foundation

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut Ribbon - Pixellisation des images
    Bonjour,
    je suis en train de tester le microsoft ribbon avec VS2010, mais voilà : j'ai créé un RibbonButton en indiquant comme LargeImageSource une image PNG de 64x64 pixels. A l'affichage, cette dernière apparaît plus petite et fortement pixelisée. Je suis tombé sur ce post.
    J'ai essayé d'appliquer la méthode proposée (en Xaml), mais une erreur apparaît :
    DrawingBrushSource est un type non défini.
    Actuellement, voici le Xaml de mon bouton :
    Code xaml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <ribbon:RibbonButton Height="Auto" HorizontalAlignment="Left" Margin="10,10,0,0"
    Name="RibbonBtnMembres" VerticalAlignment="Top" Width="Auto" Content="Infos"
    LargeImageSource="/Images/Outils.png" Label="Paramètres" HorizontalContentAlignment="Center"
    Comment adapter la solution proposée par IKEAS à ceci ?
    En outre, la taille des images du ribbon est-elle limitée ? Peut-on utiliser des images de 128x128px par ex. ?

  2. #2
    Membre éprouvé
    Avatar de Crooby
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2011
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 65
    Par défaut
    bonjour,
    si tu utilise des images trop grandes effectivement il y aura une pixellisation et plus ton image sera grande plus elle le sera importante. Pour un RibbonButton la LargeImageSource correspond à du 32 x 32 (ou peut-être du 48 x 48) mais utilise de préférence des images correspondantes à ces tailles


  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Alors j'ai essayé avec des images PNG de 48x48, puis de 32x32, et l'effet de pixellisation est toujours là... J'ai également modifié la résolution de mes images de 72 à 96 dpi, comme lu sur certains forums qui disent que WPF travaillent à cette résolution. Rien n'y fait !
    En outre, en observant le ruban d'applications comme Word, j'ai bien l'impression que certaines icônes font plus que 48x48.
    J'ai inséré dans mon ruban un contrôle Image contenant la même image utilisée pour un bouton, et là, tout est net, aucune pixellisation (c'est bien exactement la même image, même taille, même résolution...)
    Dès qu'elle est affichée dans un RibbonButton, tout se dégrade...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Pour en avoir le cœur net, j'ai chargé mon projet dans Blend. J'ai édité le Template du RibbonButton, et là, je me suis rendu compte que le contrôle Image qui contient l'icône du bouton a sa propriété Stretch défini à Uniform ; si je mets cette dernière à None, la pixellisation est toujours là !
    Cependant, la taille du contrôle Image du template est définie à Auto et, bizarrement, ne s'adapte pas à la taille de l'image : j'ai changé sa taille pour du 48x48 (la même que mon image de test), et là, plus de pixellisation, tout est net !

    Bon, cela ne résout rien, mais je comprends mieux d'où vient la pixellisation.
    Quelque soit la taille de l'image (16x16, 32x32, 48x48), elle pixellise systématiquement, à moins de modifier le template manuellement pour chaque taille d'image comme ci-avant.

    Maintenant, comment remédier à tout ça et obtenir de belles icônes bien lisses comme dans le ruban de Word ou autres ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Bon, après un nouveau test, je me rends compte, en effectuant la modification du template comme décrit précédemment, que la pixellisation ne disparaît qu'au moment du design sous Blend ; dès que le projet est exécuté, elle réapparaît. C'est à n'y rien comprendre !!

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Pour illustrer la situation, voici une image de ce que j'obtiens en mode design, puis en mode Run, après modification du Template décrit (définition de la taille du contrôle Image à la taille de l'image, soit 48x48)


  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    J'ai trouvé ce qui provoquait, en grande partie, cette pixellisation : dans le Template, j'ai décoché l'option SnapsToDevicePixel du contrôle Image, et là l'image est mieux, même si certains pixels résiduels laissent à désirer, je ne sais trop pourquoi...

  8. #8
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    Salut,

    Tu utilises ce Ribbon ?
    Car je n'ai absolument pas de problème de ce genre

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Tout à fait ! Comment se fait-il que ça n'arrive pas chez toi ? Tu utilises des images de quelle taille/résolution ?

  10. #10
    Membre émérite Avatar de yonpo
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2010
    Messages
    617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 617
    Par défaut
    J'utilise des images 32x32 96dpi de type png.
    J'ai essayé sur XP mais pas sur 7.
    D'après les captures tu es sur Vista/7, non?
    J'espère que cela ne vient pas de l'OS utilisé.

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Oui, je suis sous Windows 7, mais bon, je ne vois pas pourquoi le problème viendrait de l'OS...

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 582
    Par défaut
    Bon, alors après de nouveaux tests avec des images PNG 32x32, 96dpi, cela s'affiche effectivement correctement...
    Il me semble pourtant que certaines icônes dans d'autres applications, semblent plus grande. Effet d'optique ?...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher des images sous directX
    Par cyberlewis dans le forum DirectX
    Réponses: 17
    Dernier message: 12/07/2004, 12h07
  2. Permutter des images dans ImageList ?
    Par GoustiFruit dans le forum Composants VCL
    Réponses: 2
    Dernier message: 19/12/2003, 09h07
  3. Interbase 6 et le type des images?
    Par AnestheziE dans le forum InterBase
    Réponses: 6
    Dernier message: 30/10/2003, 10h48
  4. question sur le format des images ..
    Par vbcasimir dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 28/08/2003, 12h08
  5. [TP][MULTI-PROBLEME]Comment afficher des images pcx
    Par mikoeur dans le forum Turbo Pascal
    Réponses: 7
    Dernier message: 24/10/2002, 13h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo