Сообщество программистов Autodesk в СНГ
ADN Club => Адаптация AutoCAD и вертикальных приложений => Тема начата: Дмитрий Загорулькин от 16-04-2014, 17:26:21
-
Здравствуйте!
Подскажите, как можно поменять большое изображение кнопки (32х32) без потери качества картинки, если названия старой и новой картинки совпадают?
Проблема в том, что картинка сохраняется внутри CUIX и при простой попытке указать другую картинку с таким же именем как внешний файл, она подменяется той, которая уже есть в CUIX. А если пробовать через импорт это делать - то картинка ужимается до 16 х 16 и выглядит очень неприглядно.
Про распаковку-редактирование-запаковку CUIX я знаю, так и выкручиваюсь. Более цивилизованный способ кто-нибудь знает?
-
Я вижу пару вариантов (ни один на практике не применял)
1. Удалить старую картинку из CUIX-файла (это zip-архив, так что с этим проблем быть не должно), а вместо неё туда поместить новую.
2. Через интерфейс в два этапа - сначала на картинку с другим именем и сохранить CUIX-файл, затем картинку с нужным именем, но уже новую.
-
Первый способ работает - им и пользуюсь.
А второй - нет. При переназначении картинки, старая из CUIX файла не удаляется.
-
Тоже с этим мучился - если добавить сначала картинку 16х16, а потом 32х32 с тем же именем, то имеем проблему, т.к. отображается только 16х16 и не красиво. Пришлось давать разные имена картинкам на 16 и 32, т.к. через интерфейс Cuix так и не удалось добиться чтобы отображалась картинка 32х32 после обновления картинки 32х32.
Видимо остался только вариант №1.
-
Можно попробовать картинку через "адаптацию" удалить. У меня получилось.
-
Это оно! Спасибо :)
-
Дим, а ты при пересоздании cuix файлы mnr / mnc удалял?
-
Нет, не удалял. Так ведь я не пересоздаю CUIX, я просто картинку внутри него меняю.
-
Возможно, я ошибаюсь, и мое мнение основывается на использовании ресурсных dll.
mnr / mnc - компилированные файлы ресурсов меню, их сам ACAD создает при первом обращении к файлу меню, и потом уже обращается к ним. Если эти файлы удалить, то ACAD их пересоздает и все равно обращается уже к ним. Я на эту тему рассуждал здесь: http://autolisp.ru/2011/09/23/about_corporatemenu/ и http://autolisp.ru/2013/11/19/partial-menu-loading/ (поиск по странице по слову mnr)
P.S. Сейчас вынужден работать под ACAD2009, а там cuix'a еще не было ))) Тем не менее: файлы *.mnr создаются и для 2010-2015 версий.