TCanvas вывод текста под углом

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
alu
новенький
Сообщения: 33
Зарегистрирован: 15.01.2007 11:54:14
Откуда: Саратов
Контактная информация:

TCanvas вывод текста под углом

Сообщение alu »

Как можно вывести текст под произвольным углом на TCanvas?
Аватара пользователя
alu
новенький
Сообщения: 33
Зарегистрирован: 15.01.2007 11:54:14
Откуда: Саратов
Контактная информация:

Сообщение alu »

Видимо нужно начать тему с вопроса
А возможно ли вывести текст под углом стандартным векторным шрифтом на TCanvas?
И только потом спрашивать - КАК?
Или нужно свою примочку делать, чтоб писать буквы линиями, потом загонять координаты в матрицу поворота?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Вот что я почерпнул из ответов на аналогичный вопрос в списке рассылки:
- вроде бы можно, если вызывать ф-ции из модуля LclIntf. Т.е. делаем все так же, как делали бы в Дельфи с WinAPI, только вместо модуля Windows подключаем LclIntf.
- Работать это будет не везде. GTK1 повернутый текст не поддерживает, GTK2 поддерживает только начиная с версии 1.16.
Аватара пользователя
alu
новенький
Сообщения: 33
Зарегистрирован: 15.01.2007 11:54:14
Откуда: Саратов
Контактная информация:

Сообщение alu »

Если я правильно понял, то в Linux такой поворот работать не будет. В LclIntf подключаются функции WinAPI...(
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

Не совсем так. Модуль LclIntf представляет собой эмуляцию части WinApi для не-Windows платформ. Теоретически все, что в нем, должно работать на всех платформах. Практически - многое не доделано...
Аватара пользователя
alu
новенький
Сообщения: 33
Зарегистрирован: 15.01.2007 11:54:14
Откуда: Саратов
Контактная информация:

Сообщение alu »

Ладно, откопаю в залежах програмку, где я свои векторные шрифты писал (ущербные конечно шрифты, но для задачи хватит).
Aleh
новенький
Сообщения: 53
Зарегистрирован: 08.08.2016 11:27:45

Сообщение Aleh »

Canvas.Font.Orientation:=round(d/pi*1800);//d-угол в радианах
Это что, в линуксах не работает?
Ответить