Thunderbo1t 58 Posted April 21, 2013 (edited) Итак, начиналось всё обычно. Я занимался капитальной пересборкой конфига для XVM и оставалось всего-ничего - засунуть отображение статистики в окошко загрузки вместо названия танков. Желаемый HTML-код уже был отлажен на окошке инфы по TAB-у, заготовлена древняя дамаг-панель вешающая клиент на этапе загрузки, код прописан в конфиг и запущен реплей. Я надеялся закончить с этим до полуночи. А вот хренушки. Код упорно не желал выглядеть как положено. Я только час с лишним убил экспериментируя со шрифтами и постепенно доходя до мысли что положенный там быть $FieldFont aka Zurich Condensed упорно не желает туда вставать. Любые другие шрифты - запросто, а вот этот - фих. Ни в какой из своих 3 ипостасей из FontConfig.xml, а также по прямому указанию имени оного в винде и в игре. И ладно бы только это - так еще и с отступами творилось нечто странное - табличка которая в естественном виде должна была влазить в 155 точек с запасом, упорно раздувалась по ширине до более чем 180. И тут в процессе очередного разбирания на запчасти кода флешки пришло озарение. Как оказалось, всё из-за этого: Sprite 15 (Right Item Renderer): text14, vehicleField, 83.4, 5.0, Scale[1.200, 1.000] Rotate[0.0, -0.0] Sprite 19 (Left Item Renderer): text18, vehicleField, 259.4, 5.0, Scale[1.200, 1.000] Rotate[0.0, -0.0] Ну а дальше уже дело техники. Под спойлером исправленные коды для применения в SWiX. MaxX="1572", MinX="-48" <DefineEditText Id="14" FontId="9" FontHeight="260" Color="a2927eff" Align="Left" LeftMargin="0" RightMargin="0" Indent="0" Leading="40" VarName=""> <Bounds MaxX="1572" MaxY="367" MinX="-48" MinY="-40" /> <BitsField AutoSize="false" ReadOnly="true" Password="false" Multiline="false" WordWrap="false" UseOutlines="true" HTML="false" WasStatic="false" Border="false" NoSelect="true" /> <InitialText> <![CDATA[]]> </InitialText> </DefineEditText> ScaleX="1" <DefineSprite Id="15" FrameCount="1"> // ... // ... тут много нужного кода, не выкидывайте его // ... <PlaceObject3 PlaceObject2Value="38" ExtendedValue="1" Depth="9" CharacterId="14" Name="vehicleField"> <Matrix> <Translate TranslateX="1668" TranslateY="100" /> <Scale ScaleX="1" ScaleY="1" /> </Matrix> <FilterList> <DropShadowFilter DropShadowColor="4278190080"> <BitsField Passes="3" InnerShadow="1" Knockout="0" CompositeSource="0" /> <BlurX High="0" Low="2" /> <BlurY High="0" Low="2" /> <Angle High="37407" Low="1" /> <Distance High="37407" Low="1" /> <Strength High="51" Low="0" /> </DropShadowFilter> </FilterList> </PlaceObject3> <ShowFrame /> </DefineSprite> MaxX="1572", MinX="-48" <DefineEditText Id="18" FontId="9" FontHeight="260" Color="a2927eff" Align="Right" LeftMargin="0" RightMargin="0" Indent="0" Leading="40" VarName=""> <Bounds MaxX="1572" MaxY="367" MinX="-48" MinY="-40" /> <BitsField AutoSize="false" ReadOnly="true" Password="false" Multiline="false" WordWrap="false" UseOutlines="true" HTML="false" WasStatic="false" Border="false" NoSelect="true" /> <InitialText> <![CDATA[]]> </InitialText> </DefineEditText> TranslateX="5798" ScaleX="1" <DefineSprite Id="19" FrameCount="1"> // ... // ... тут много нужного кода, не выкидывайте его // ... <PlaceObject3 PlaceObject2Value="38" ExtendedValue="1" Depth="9" CharacterId="18" Name="vehicleField"> <Matrix> <Translate TranslateX="5798" TranslateY="100" /> <Scale ScaleX="1" ScaleY="1" /> </Matrix> <FilterList> <DropShadowFilter DropShadowColor="4278190080"> <BitsField Passes="3" InnerShadow="1" Knockout="0" CompositeSource="0" /> <BlurX High="0" Low="2" /> <BlurY High="0" Low="2" /> <Angle High="37407" Low="1" /> <Distance High="37407" Low="1" /> <Strength High="51" Low="0" /> </DropShadowFilter> </FilterList> </PlaceObject3> <ShowFrame /> </DefineSprite> Ну и для тех кому это сложно или лень - готовый SWF от XVM 3.5.0 в архиве: battleloading.rar Учитывая то что данная фигня совсем неочевидная, было бы неплохо чтобы эти правки файла, приводящие пропорции и размеры настраиваемого текста в норму в этом файле были использованы в последующих релизах XVM. Edited April 21, 2013 by Thunderbo1t 2 Quote Share this post Link to post Short link Share on other sites
nemoW 84 #58168 Posted April 21, 2013 Вы предлагаете править баг картошки в XVM или я неправильно понял? Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58185 Posted April 21, 2013 А почему бы и нет. Я посмотрю, что там, давно уже проблема с ресайзом при загрузке висит. Из-за этого, в частности, искажаются иконки танков, хорошо видно на иконках с мелким текстом - HARDicons, например - они смазаны получаются. MaxX="1572", MinX="-48" ScaleX="1" Внес твои изменения, что-то у меня съехал текст справа Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58208 Posted April 21, 2013 (edited) Внес твои изменения, что-то у меня съехал текст справаСправа или слева ?Я вижу что слева. И выше прописано что слева надо править не только текст но и сам спрайт - т.к. выравнивание текста по правому краю, он после изменения ScaleX оказывается левее чем был, несмотря на то что ширина поля без изменений. Попытался угадать сколько добавить к TranslateX в спрайте, не угадал (а в AdobeFlash размер текстового поля вообще на удивление маленький), поэтому поступил просто - по скрину снял размер смещения в пикселах, умножил на 20 и добавил к оригинальному TranslateX. В итоге вышло: <DefineSprite Id="19" FrameCount="1"> // ... <Translate TranslateX="5798" TranslateY="100" />и всё снова на месте. Вы предлагаете править баг картошки в XVM или я неправильно понял?Это не баг, а хитрая дизайнерская фича, которая мешает кастомизации. Из-за нее $FieldFont выглядит абсолютно непохожим на самого себя и ни разу не Narrow, да еще и отступы по tabstops плывут. А раз эта фича нам мешает - почему бы ее не выключить ? А без модов смотрится вполне ок. Edited April 21, 2013 by Thunderbo1t 1 Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58210 Posted April 21, 2013 Да, слева. Спасибо, поправил. Вот исправленый swf, проверь. Если все нормально, закоммичу в основную ветку. А без модов смотрится вполне ок. Кстати, интересно сравнить до и после правки. battleloading.swf.zip Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58213 Posted April 21, 2013 (edited) Спасибо, поправил. Вот исправленый swf, проверь. Если все нормально, закоммичу в основную ветку. Кстати, интересно сравнить до и после правки. С иконками там без изменеий ? А то ты напомнил, а я уже полез искать где там они по ScaleY делаются 0.9~0.95 примерно :) Сравнение моей флешки - выше в посте, твою сейчас гляну. Спасибо за то что считаешь это изменение нужным для переноса в XVM. UPD: по текстам твоя флешка работает также как и та что я выкладывал выше, всё ок. Тем временем разбираюсь с иконками... Edited April 21, 2013 by Thunderbo1t Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58215 Posted April 21, 2013 С иконками там без изменеий ? А то ты напомнил, а я уже полез искать где там они по ScaleY делаются 0.9~0.95 примерно :) Сравнение моей флешки - выше в посте, твою сейчас гляну. Спасибо за то что считаешь это изменение нужным для переноса в XVM. Не, иконки не трогал. Тебе спасибо, что указал где и что надо править, без этого я бы не взялся. :) Еще интересно сравнить на чистом клиенте, без статы. Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58224 Posted April 21, 2013 Еще интересно сравнить на чистом клиенте, без статы.Если клиент чистый - то там этого battleloading.swf не будет. А если стоит XVM - то там вроде как по умолчанию в конфиге есть какие-то изменения. Так что в чем смысл такого сравнения ? А вот так это выглядит если отображать в этом поле только названия танков: Вполне нормально, ничего ужасного. И всетаки насчет иконок... Вот так они грузятся в PlayersPanel (уши): import assets3, iconLoader, 416.0, 1.0, Scale[0.800, 0.240] Rotate[0.0, -0.0] Вот так в StatisticForm (TAB): import assets2, iconLoader, 334.0, 0.0, Scale[0.800, 0.240] Rotate[0.0, -0.0] Вот так в BattleLoading: import assets4, iconLoader, 339.0, 1.0, Scale[8.000, 2.400] Rotate[0.0, -0.0] По идее с пропорциями всё в норме. Но почему блин они по высоте меньше чем надо на 1-2 пиксела ? Quote Share this post Link to post Short link Share on other sites
mooseyaka 58 #58236 Posted April 21, 2013 (edited) Парни, вот за это - отдельно большое спасибо, блин, сколько я маялся со шрифтами, чтоб они не "плыли" при загрузке!.. Теперь можно будет выставить одинаковый размер и не парить, ура. П.С. Проверил, теперь сильно ужимаются по ширине. Для сравнения картинка Шрифт: RittswoodRedStar_8 , размер - 8 Настройки шрифта идентичные(): картинка Конфиг, на всякий случай Edited April 21, 2013 by mooseyaka Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58242 Posted April 21, 2013 (edited) П.С. Проверил, теперь сильно ужимаются по ширине.Если шрифт после старого кажется "ужатым" - попробуй через <font face='...' ...> подставить другой шрифт, который не Narrow/Condensed. Сейчас наоборот шрифты НЕ растягиваются, и это правильно с точки зрения удобства настройки. И всётаки что-то надо сделать с иконками... Вот скрин с тем что там не так, оригинальная иконка подкрашена в желтый и стоит правее, для сравнения. Изменение scale с 8х2.4 на 0.8х0.24 - результата 0. Откусывание у одной из иконок 2 нижних строк чтобы она стала 80х22 - результата 0, всё также жмется по высоте и как результат - плывет четкость надписей. Edited April 21, 2013 by Thunderbo1t Quote Share this post Link to post Short link Share on other sites
mooseyaka 58 #58248 Posted April 21, 2013 Если шрифт после старого кажется "ужатым" - попробуй через <font face='...' ...> подставить другой шрифт, который не Narrow/Condensed. Сейчас наоборот шрифты НЕ растягиваются, и это правильно с точки зрения удобства настройки. И всётаки что-то надо сделать с иконками... Вот скрин с тем что там не так, оригинальная иконка подкрашена в желтый и стоит правее, для сравнения. Icons.png Я искренне прошу прощения, не знаю, нарроу\конденсед шрифт или нет. Знаю что он пиксельный, и при размере 8 - он отображается точка в точку, если его не изменять дополнительно. Кстати, использование этого(или любого другого) шрифта возможно поможет увидеть искажения, потому что на таких шрифтах сразу видно искажается он или нет, и довольно просто сравнить с эталоном, если что. То есть мы знаем, что символ "0"(конкретно в этом шрифте) - всегда 5х8 пикселей при размере "8" - вот от этого и стоит плясать, ИМХО, естественно. Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58261 Posted April 21, 2013 Я искренне прошу прощения, не знаю, нарроу\конденсед шрифт или нет. Знаю что он пиксельный, и при размере 8 - он отображается точка в точку, если его не изменять дополнительно. Кстати, использование этого(или любого другого) шрифта возможно поможет увидеть искажения, потому что на таких шрифтах сразу видно искажается он или нет, и довольно просто сравнить с эталоном, если что. То есть мы знаем, что символ "0"(конкретно в этом шрифте) - всегда 5х8 пикселей при размере "8" - вот от этого и стоит плясать, ИМХО, естественно. Вот сразу бы со скринами написал - было бы понятно. Так и правда вижу нечто странное. У меня шрифт не пиксельный, и с ним такой проблемы нет. Quote Share this post Link to post Short link Share on other sites
mooseyaka 58 #58263 Posted April 21, 2013 Вот сразу бы со скринами написал - было бы понятно. Так и правда вижу нечто странное. У меня шрифт не пиксельный, и с ним такой проблемы нет. Прости уж, сначала написал, потом сделал скрины, и исправил, и только потом увидел про "нарроу" и прочее. Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58272 Posted April 21, 2013 И всётаки что-то надо сделать с иконками... Вот скрин с тем что там не так, оригинальная иконка подкрашена в желтый и стоит правее, для сравнения. Icons.png Изменение scale с 8х2.4 на 0.8х0.24 - результата 0. Откусывание у одной из иконок 2 нижних строк чтобы она стала 80х22 - результата 0, всё также жмется по высоте и как результат - плывет четкость надписей. Да, я в свое время с этим уже мучился, так и не победил. Вроде оно плывет из-за того, что вообще вся строка ужимается по вертикали. Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58273 Posted April 21, 2013 Вообще вот тут что-то странное - уж очень много непропорциональных размеров. Quote Share this post Link to post Short link Share on other sites
Mr A 750 #58274 Posted April 21, 2013 Если клиент чистый - то там этого battleloading.swf не будет А оригинальный как же? res/packages/gui.pkg/flash/battleloading.swf Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58275 Posted April 21, 2013 А оригинальный как же? res/packages/gui.pkg/flash/battleloading.swf Он имеет в виду, что не будет измененного. Quote Share this post Link to post Short link Share on other sites
Thunderbo1t 58 #58277 Posted April 21, 2013 Прости уж, сначала написал, потом сделал скрины, и исправил, и только потом увидел про "нарроу" и прочее.Да нничего, всё ок. Для окончательного разбора с этой фигней ты не мог бы выложить шрифт который используется у тебя в конфиге ? Есть пара мыслей что с этим можно сделать. Quote Share this post Link to post Short link Share on other sites
sirmax 5,499 #58278 Posted April 21, 2013 (edited) Вообще вот тут что-то странное - уж очень много непропорциональных размеров. Sprite34.png Может нужно всю строку где-то расширить? Да нничего, всё ок. Для окончательного разбора с этой фигней ты не мог бы выложить шрифт который используется у тебя в конфиге ? Есть пара мыслей что с этим можно сделать. Хороший мелкий шрифт изпользует __Say__ с еврофорума, на нем идеально тестировать. http://forum.worldoftanks.eu/index.php?/topic/71558-075-say-s-complete-mod/ шрифт: http://www.mediafire.com/?ygtii31nlwtkyd8 Edited April 21, 2013 by sirmax Quote Share this post Link to post Short link Share on other sites
mooseyaka 58 #58285 Posted April 21, 2013 (edited) Да нничего, всё ок. Для окончательного разбора с этой фигней ты не мог бы выложить шрифт который используется у тебя в конфиге ? Есть пара мыслей что с этим можно сделать. запросто, конечно! Могу выложить подборку пиксельных шрифтов, если понадобится. П.С.при всем уважении, СирМакс, это не самый удобный шрифт для тестирования, он по умолчанию болдовый, и не всегда можно будет увидеть где он "поплыл". ИМХО оптимальным будет пиксельный с шириной черты в 1 пиксель при написании в стандартном его размере. Не именно тот что у меня, их много, в принципе. Edited April 21, 2013 by mooseyaka Quote Share this post Link to post Short link Share on other sites