![]() |
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум | ![]() |
![]() |
Лисоводы всех стран, объединяйтесь !!! |
Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Владимир Максимов Автор Сообщений: 13871 Откуда: Москва |
Есть мое приложение созданное лет 6 назад (т.е. все исходники есть), которое написано на FPW2.6 и скомпилировано в среде Win3.11
Собственно, это приложение я давно переписал на VFP6, но тут один клиент захотел установить его на WinXP. Результат отображен в прилагаемом файле. Это я в дизайнере формочку открыл, но в приложении эффект тот же. Ясно, что проблема со шрифтами. Ясно, что "по хорошему", надо бы ручками подвинуть все объекты, чтобы они заняли надлежащее место и перекомпилить проект в WinXP. Но. Формочек в этом приложении более 200. Это приложение предствляет собой иерархию EXE и APP (надо еще вспомнить "кто на ком стоял"). Есть ли возможность как-то обойтись без ручной подгонки и перекомпиляции проекта? Да, всем объектам явно назначен шрифт. В большинстве случаев, это Arial Cyr, 10. Хотя кое-где используются также Times New Roman и Courier New Cyr. Шрифт по умолчанию для самих форм я установил - Courier New Cyr, 10. Раздел реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes менять пробовал. Не помогает. Или я не те шрифты пытался ассоциировать. Commdlg.dll из поставки Win3.11 подсовывал - без результата. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
piva Сообщений: 18600 Откуда: Курган |
Попробуй все-таки поменять основной фонт формы - все в fpw 2.6 строится от его метрики - у меня подобное было - причем слетали именно Courier New CYR - лечилось заменой на стандарnный Courier или Courier New без CYR
------------------ Часто бывает так, что есть над чем задуматься, а нечем. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Лариса Сообщений: 398 Откуда: Calgary |
Может это поможет:
в классе формы на событие INIT написать код dodefault() thisform.SetAll("FontSize",8) ------------------ Listen and forget. Read and remember. Do and understand. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
piva Сообщений: 18600 Откуда: Курган |
Лариса - это FPW 2.6 там нету thisform.setall
![]() ------------------ Часто бывает так, что есть над чем задуматься, а нечем. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Лариса Сообщений: 398 Откуда: Calgary |
Тогда, ой!
Я так поняла, что приложение уже переписано на VFP6. ------------------ Listen and forget. Read and remember. Do and understand. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Владимир Максимов Автор Сообщений: 13871 Откуда: Москва |
Цитата:Интересно. Странный эффект. Если я подтверждаю ранее установленный на форме шрифт, например, был Courier New Cyr, 10 я нажимаю кнопку Font и ничего не меняя нажимаю кнопку "Ок". Происходит модификация размеров ряда объектов. Таких как набор кнопок. Все остальное остается без изменений. Т.е. также все "в кучку". Дальнейшее изменение шрифта формы уже просто игнорируется. В общем, не помогло... ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Владимир Максимов Автор Сообщений: 13871 Откуда: Москва |
Цитата:Да. Перписано. Но заказчик хочет себе поставить именно старую версию, написанную на FPW 2.6. Вот теперь и мучаюсь... ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Alex Roublev Сообщений: 3695 Откуда: Ярославль |
А ежели все формочки открывать как таблицы и программно циклом прописывать нужный шрифт и т.д. в поле свойств объектов?
![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Владимир Максимов Автор Сообщений: 13871 Откуда: Москва |
Цитата:Уже. Структура файлов SCX в FPW 2.6 несколько отличается от структуры файлов SCX в VFP. Они скорее напоминают структуру файлов FRX (отчетов). Т.е. есть поля VPOS, HPOS, Height, Width. В них указана координаты, но не в пикселах, а в "фокселах" (один "фоксел" - это средний размер буквы в указанном шрифте). Есть поле Fontface, Fontstyle, Fontsize - это имя шрифта, тип и номер соответственно. Так вот, имя шрифта у меня указано у ВСЕХ объектов. Проблема именно в том, как определяется размер этого самого "фоксела" в Win3.11 и WinXP. Видимо, как-то принципиально по разному. Отсюда такие проблемы. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
AlexSSS Сообщений: 6110 Откуда: Tallinn, Estonia |
а фоксель случайно берется не с основного шрифта _screen?
![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
piva Сообщений: 18600 Откуда: Курган |
По любому - в FPW 2/6 надо все равно формы открывать руками - одиной замено фонтов в файле ничего не добится - уж не знаю как там сделано - но после того как тыкнеш в контрол - он приобретает новые очертания - так что боюсь что простой заменой фонтов в SCX файле не обойтись
![]() ------------------ Часто бывает так, что есть над чем задуматься, а нечем. ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Владимир Максимов Автор Сообщений: 13871 Откуда: Москва |
Цитата:В FPW 2.6 еще не было такого понятия. Был шрифт по умолчанию, но я задавал все шрифты явно. Как у самой формы, так и у всех используемых объектов. В данном случае произошла адекватная замена. Т.е. допустим текст, написанный шрифтом Arial Cyr,10 занимал в длину, 10.1234 "фокселя". Он столько по прежнему и занимает. Т.е. если это был просто текст (Label), то все символы вполне умещаются в отведенный размер. Однако в Win3.11 10.1234 "фокселя" занимало, допустим, около 1/2 экранного дюйма, то в WinXP те же 10.1234 "фокселя" занимают уже примерно 3/4 экранного дюйма. Кроме того, похоже, что координаты самих объектов вычисляются не в "фокселях" шрифта формы, а именно в "фокселях" шрифта самих объектов. По крайней мере изменение шрифта формы никак не влияет на относительное расположение объектов. В общем, похоже без вариантов. Придется заново все объекты на всех формочках расставлять ![]() ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
AlexSSS Сообщений: 6110 Откуда: Tallinn, Estonia |
> В FPW 2.6 еще не было такого понятия. Был шрифт по умолчанию
Значит не _screen Точно помню, что можно было изменить шрифт по умолчанию у системного окна фокса. Возможно это можно было сделать через MODIFY WINDOW SCREEN FONT cFontName, nFontSize по умолчанию он вроде бы брался из системных, а системными в Win3.11 были растровые фонты FON (какой-нибудь MS Sans Serif) к сожалению, FPW под рукой нет, проверить не могу. Попробую найти ссылки в инете ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
AlexSSS Сообщений: 6110 Откуда: Tallinn, Estonia |
может что-то прояснит
users.aol.com support.microsoft.com support.microsoft.com Converter: How the Position of Screens Is Converted support.microsoft.com Отредактировано (27.11.05 22:53) ------------------ Чудес не бывает, бывают кривые руки ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Влад Колосов Сообщений: 22664 Откуда: Ростов-на-Дону |
А если установить в виндовс кириллические шрифты от 3.1? Такой вид из-за подстановки шрифтов скорее всего.
![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Igor Korolyov Сообщений: 34002 |
Hi Владимир!
Да уж, я предполагал что одноименные шрифты на разных версиях ОС отличаются, но что НАСТОЛЬКО ![]() Возможно тебе удастся определить "пропорцию", подобрать новый (помельче) шрифт, и потом заменой подправить как шрифт, так и размеры. P.S. FPW рядом нет, тока FPD ![]() ------------------ WBR, Igor ![]() |
||
Re: Совместимость шрифтов FPW2.6 созданного в Win3.11 на WinXP | |||
---|---|---|---|
Влад Колосов Сообщений: 22664 Откуда: Ростов-на-Дону |
Помнится для 98-го я переписывал специально шрифты от 3.11. Гемор тот еще был.
![]() |
||
© 2000-2021 Fox Club  |