Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "KOL";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];

Вниз

FontOrientation или текст под углом   Найти похожие ветки 

 
Bmouradov   (2007-04-08 16:48) [0]

Хочу сообщить о найденной мной ошибке (?) при выводе на canvas текста под углом:

Canvas.Font.FontHeight := 20;
Canvas.Font.FontName := "Arial";
Canvas.Brush.BrushStyle := bsClear;

Canvas.Font.FontOrientation := 0;
Canvas.TextOut(100, 100, "один");

Canvas.Font.FontOrientation := -450; // минус 45 градусов
Canvas.TextOut(100, 150, "два");

Canvas.Font.FontOrientation := 0;
Canvas.TextOut(100, 200, "три");

При этом третий текст печатается под углом -45 градусов, хотя не должен.
Однако, если во втором случае написать
Canvas.Font.FontOrientation := 3150; // минус 45 градусов
тогда всё будет правильно. Возможно, отрицательный угол как-то неправильно обрабатывается.


 
D[u]fa ©   (2007-04-08 18:00) [1]

наверное все что "-" конвертируется в "+"


 
Bmouradov   (2007-04-08 18:56) [2]

Если бы конвертировался в плюс, то было бы так:
 второй текст под +45, а третий 0.
А получается:
 второй под -45, и третий -45.
А должно быть:
 второй под -45, третий 0.


 
Vladimir Kladov   (2007-04-08 19:55) [3]

Скорее всего, проблема в этой строчке в SetFontOrientation:

Value := Value mod 3600;

В принципе, можно было бы написать
if Value < 0 then Value := -( (-Value) mod 3600 ) else Value := Value mod 3600;

Попробуйте эту строчку подставить в KOL.pas (строка ~ 15242). Если заработает правильно, так и оставим.


 
Bmouradov   (2007-04-08 20:14) [4]

Проверил. В PAS_VERSION этой ошибки вообще нет. Выходит, ошибка в KOL_ASM.pas. Также проверил следующее - в режиме PAS_VERSION в Kol.pas заменил SetFontOrientation на версию из KOL_ASM, ошибка вновь появилась. Значит, ошибка находится в KOL_ASM.pas в SetFontOrientation.


 
Vladimir Kladov   (2007-04-12 19:58) [5]

Причину нашел. Исправление будет скоро.



Страницы: 1 вся ветка

Форум: "KOL";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.045 c
2-1192618151
sydenis
2007-10-17 14:49
2007.11.11
rasdial


15-1191796932
Альберт Мобайл
2007-10-08 02:42
2007.11.11
посоветуйте


2-1192915547
Falcon
2007-10-21 01:25
2007.11.11
Получить дату без года в формате текущих региональных настроек


2-1192877256
P'ero
2007-10-20 14:47
2007.11.11
Как произвести поиск по всему компьютеру (конкретный вайл)?


8-1168924619
Kuzma
2007-01-16 08:16
2007.11.11
VST плагины и Delphi ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский