![]() |
|
![]() ![]() ![]() |
|
voov |
|
|||
![]() Патамушта мы пилоты ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 29.11.2007 Репутация: 8 Всего: 8 |
Нужно нарисовать строку по вертикали (повернутую на 90 градусов против часовой стрелки), используя библиотеку GDI+. Какими способами можно это сделать?
|
|||
|
||||
voov |
|
|||
![]() Патамушта мы пилоты ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 29.11.2007 Репутация: 8 Всего: 8 |
Неужели совсем нет вариантов?
Я нашел следующий способ.
Но я не уверен, что этот способ оптимальный. Может кто сможет предложить способ получше? |
|||
|
||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Насчет GDI+ не скажу, а через "чистый" GDI делается так: создаешь фонт с "повернутыми" символами (просто угол наклона символа в структуре LOGFONT ставишь) и рисуешь через DrawText, указывая, конечно, соответствующий RECT.
Наверняка в GDI+ можно найти аналоги. -------------------- ... |
|||
|
||||
Rapalex |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 732 Регистрация: 20.1.2006 Где: Украина -> Ник олаев Репутация: 6 Всего: 8 |
Самое простое повернуть систему координат, и да и всё.
-------------------- In vitium ducit culpae fuga. Желание избежать ошибки вовлекает в другую. (Horatius) |
|||
|
||||
voov |
|
||||
![]() Патамушта мы пилоты ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 29.11.2007 Репутация: 8 Всего: 8 |
Пробовал. Брал рабочий пример на Делфи с таким способом. Делал аналогично - Не получилось. Может есть пример на С с GDI, о котором ты говоришь?
Это как? |
||||
|
|||||
Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 87 Всего: 183 |
Примера под рукой нет -давно когда-то делала, так что точно работает, но вполне могут быть какие-то тонкости...
Попробуй пошарить на codeproject -------------------- ... |
|||
|
||||
voov |
|
|||
![]() Патамушта мы пилоты ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 29.11.2007 Репутация: 8 Всего: 8 |
Нашел еще такую штуку как StringFormatFlags. Если ему установить StringFormatFlagsDirectionVertical, то строка рисуется вертикально, но повернутая на 90 градусов по часовой стрелке.
А чтобы строка была повернута на 90 градусов против часовой, используется TranslateTransform и RotateTransform из класса Graphics вкупе с StringFormatFlags - это на codeproject. |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |