Вниз
Скачать: CL | DM;

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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
2-1192695391
Lebedev
2007-10-18 12:16
2007.11.11
Как в своей процедуре создать динамический объект?


2-1192450912
неугомонный
2007-10-15 16:21
2007.11.11
канвас в гриде


15-1191508929
Ega23
2007-10-04 18:42
2007.11.11
Рыдал


2-1192969619
Lebedev
2007-10-21 16:26
2007.11.11
Caption RadioGroup должен переходить на новую строку.


2-1192899324
Виктор007
2007-10-20 20:55
2007.11.11
Изменение цвета контрола с использованием манифеста XP




   Наверх