RibbonToggleButton — иконка повреждена

У меня есть приложение на основе ленты, и на его кнопках-переключателях я размещаю значки PNG - 32x32, 32 бита. Но когда я запускаю приложение, изображение на кнопке ленты выглядит поврежденным. Просто для проверки я создал простую кнопку с таким же изображением на ней - и она выглядит нормально. см. скриншот здесь - http://i.imgur.com/0zct9cf.jpg Я попытался добавить RenderOptions.BitmapScalingMode="HighQuality" и RenderOptions.EdgeMode="Aliased" в тег окна моего приложения - не повезло. Может кто-нибудь объяснить, почему RibbonToggleButton портит изображения на нем? Спасибо!


person user1873711    schedule 06.11.2014    source источник


Ответы (1)


Попробуйте сохранить изображение с помощью программы, которая поддерживает настройку DPI в метаданных, например IrfanView. У меня была аналогичная проблема, и изменение DPI изображений в соответствии с экраном исправило ее для меня.

  1. Откройте изображение в IrfanVIew и нажмите shift+i, чтобы открыть диалоговое окно с информацией об изображении Открыть пункт меню

  2. Измените DPI в соответствии с вашим экраном Change DPI

  3. Сохранить изображение

Я не проверял это на экране с другим DPI, поэтому я понятия не имею, будет ли это выглядеть еще более ужасно неправильно.

person Tinsa    schedule 06.11.2014
comment
Привет Tinsa, вообще у меня есть несколько вариантов моих иконок с разным DPI - так что да, я нашел иконки с нужными мне DPI. Но здесь я столкнулся с другой проблемой: как настроить кнопки ленты, переключатели и т. д., чтобы иметь разные значки для разных DPI. Мне понравилась эта статья от MS - msdn.microsoft.com/en-us/library/windows/desktop/ — но в моем коде я не могу указать Command.LargeImages внутри тегов ‹ribbon:RibbonMenuItem.Command›‹/ribbon:RibbonMenuItem.Command› - person user1873711; 07.11.2014
comment
Привет, кто-нибудь пытался сделать то, что описано в этой статье MSDN для элементов ленты? - person user1873711; 12.11.2014