WIX: выбрать разные файлы изображений для разных настроек DPI?

Известная проблема с WIX заключается в том, что, например. изображение бокового баннера, хорошо выглядящее при настройке 100% DPI, плохо масштабируется, когда система имеет настройку 125%, 150% или любую другую.

Я попытался изменить размер изображения бокового баннера на 150%, чтобы увидеть, уменьшается ли оно лучше, чем увеличивается, но это не так. На 150% теперь выглядит отлично, но ужасно на 125% и 100%.

Можно ли изменить скрипт wix, чтобы он заставлял установщик выбирать разные файлы изображений с разными размерами в зависимости от настройки DPI или каким-то другим образом определять размер диалога и выбирать изображение бокового баннера наиболее подходящего размера?

Таким образом, я бы покрыл 100%, 125% и 150%, которые обычно используются.


person user1006720    schedule 28.11.2014    source источник


Ответы (2)


Не существует такого понятия, как «скрипт wix». WiX — это декларативный XML, который преобразуется в декларативные табличные данные установщика Windows. В этом нет ничего императивного/процедурного/сценарного.

Все ограничения пользовательского интерфейса находятся в базовом установщике Windows и вообще не связаны с WiX. Я знаю о многих ограничениях, но я никогда не слышал о том, о котором вы упомянули. Я не могу воспроизвести это на своих установках. Можете ли вы предоставить снимки экрана того, что вы видите?

Можно иметь несколько элементов управления изображением и использовать условия управления, чтобы сделать их взаимоисключающими. Но я не уверен, что это необходимо в данной ситуации. Кроме того, если для вас важна полировка пользовательского интерфейса, вероятно, пришло время подумать о развертывании внешнего обработчика пользовательского интерфейса вместо использования собственного пользовательского интерфейса.

person Christopher Painter    schedule 28.11.2014
comment
Да, я знаю, что это не скрипт, который запускается во время установки, поэтому нужно определить XML-код WIX, чтобы разрешить разные изображения в зависимости от настройки DPI в целевой системе. - person user1006720; 01.12.2014
comment
На изображении ниже я иллюстрирую проблему. Я создал две настройки, в одной из которых размер изображения соответствует размеру, ожидаемому в системе с разрешением 100 % DPI (B), и оно выглядит корректно с настройкой DPI 100 %, но при работе с настройкой DPI 150 % оно плохо растягивается. (A) с другой стороны, изображение создается в правильном размере, когда для параметра установлено значение 150% DPI, но затем при настройке 100% DPI оно плохо уменьшается. Изображение можно найти здесь: postimg.org/image/gd6wut3hp - person user1006720; 01.12.2014
comment
Почему ваше диалоговое изображение 740x468? Это должно быть 493x312, если вы используете расширение пользовательского интерфейса. - person Christopher Painter; 01.12.2014
comment
Согласно этому изображению, это 493x312, что делает его нормальным при 100% DPI, но плохим при растяжении при 150% DPI. Изменение размера изображения на 740x469 (что соответствует увеличению размера на 150%) заставляет его выглядеть нормально при 150% DPI, но затем выглядит плохо при уменьшении масштаба при 100% DPI. Вот в чем дело - хотелось бы иметь два изображения и заставить установщика выбрать либо 492x312 при 100% DPI, либо 740x468 при 150% DPI. - person user1006720; 01.12.2014
comment
Можете ли вы опубликовать свои изображения, чтобы я мог попытаться воспроизвести? Я всегда использую изображение 492x312, и я никогда не видел этой проблемы. - person Christopher Painter; 01.12.2014
comment
Я сделал макет с ромбом и попытался изменить настройки DPI и перезагрузить компьютер, чтобы они вступили в силу. Мой ноутбук решил дать мне ошибку загрузки BCD, и мне не нужно восстанавливаться. У меня, вероятно, не будет времени, чтобы продолжить это некоторое время. - person Christopher Painter; 01.12.2014

Так что да, будет некоторое масштабирование при использовании разных настроек DPI. Но я думаю, что результаты могут быть достойными, когда используется правильно спроектированная и реализованная графика. Я просмотрел вашу ссылку на postimg.org, и ваши примеры были увеличены еще больше и показали какое-то странное сглаживание строк.

Я думаю, что диагональные линии — довольно экстремальный пример, но вот как это может выглядеть: Маленькие настройки: SmallБольшие настройки: Большой

Наконец, вот исходный образ, который использовался для сборки установщика: введите здесь описание изображения

person Christopher Painter    schedule 01.12.2014
comment
Это выглядит хорошо, но почему? Это только тот факт, что вы выбрали поворот на 45 градусов, который делает масштабирование добрым. s3.postimg.org/b2bg0vmcz/shapes.jpg Это изображение было просто примером , на самом деле это касается логотипа продукта, который более проработан и включает в себя красную форму без угла 45 градусов с черным контуром. Будет ли вывод заключаться в том, чтобы использовать внешний обработчик пользовательского интерфейса, как упоминалось ранее? - person user1006720; 03.12.2014
comment
Я выбрал красный и черный бриллиант, потому что это то, что вы показали в своем образце. Ваш образец казался не очень чистым в первую очередь, и что вы затем взорвали его на уровне DPI, а затем снова на уровне захвата экрана / масштабирования. Лично я бы остался со стандартной схемой пользовательского интерфейса WiX и просто поговорил бы с художником-графиком об очистке логотипа, чтобы он лучше масштабировался. Я уверен, что у него были бы некоторые трюки. В противном случае да, внешний обработчик пользовательского интерфейса, отображающий масштабируемую векторную графику, был бы вашим лучшим выбором. Но это не то, что я бы стал делать для обычного установщика. - person Christopher Painter; 03.12.2014