2 votes

Le RibbonControl étire l'image

J'utilise le Microsoft.Windows.Controls.Ribbon dans mon application WPF, et il étire l'image du RibbonCommand plus grande qu'elle n'est censée l'être. L'image est insérée comme suit :

<r:RibbonApplicationMenu.Command>
     <r:RibbonCommand LargeImageSource="/Resources/Images/FSRibbon.png" />
</r:RibbonApplicationMenu.Command>

Voici FSRibbon.png : enter image description here Il s'agit d'un png 32x28 32 bit. J'ai également essayé un format 32 x 32 exactement, ainsi qu'un format 48 x 48 avec un remplissage vide autour. Quoi que je fasse, le ruban de contrôle s'affiche comme ceci :

enter image description here

Comme vous pouvez le voir, il est agrandi comme s'il était étiré sur une toile de 48x48. Mais si je fournis une image de 48x48, elle est tout aussi agrandie. La RibbonCommand ne permet pas de contrôler l'étirement de l'image. <Image/> de l'objet Stretch="None" que je dois définir. Que se passe-t-il ?


Tentatives

J'ai essayé ça : enter image description here

4voto

Alain Points 10079

Ce site Cette question m'a fait comprendre que WPF n'est pas si magique pour s'adapter aux différentes résolutions d'images (DPI / pixels par pouce, etc.). La question susmentionnée indiquait que la norme Windows est de 96 DPI, ce que j'ai supposé être un synonyme de pixels par pouce. L'image que j'ai téléchargée ci-dessus a une résolution de 72 pixels par pouce.

J'ai essayé de le convertir en 96 en utilisant 'scale image' dans GIMP (éditeur d'images open source), et comme par magie, il a commencé à être traité correctement.

enter image description here --> enter image description here

Comme si les modestes programmeurs que nous sommes étaient censés connaître ce genre de choses :p

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X