Страница 1 из 1

Вертикальный текст

Добавлено: 20 окт 2004, 18:32
Marjan
Привет!
Не знаешь как вывести текст вертикально. Пробовал CDC::TextOut, ExtTextOut, DrawText не получилось.

Добавлено: 20 окт 2004, 20:07
Kolinus
Естессно
есть функции задавания ориентации осей - посмотри мот они помогут - SetViewPort по моему так называется или SetOrigin
Еще можно написать то что надо в контексте памяти а потом попиксельно перенести туда куда тебе надо и так как надо

Добавлено: 21 окт 2004, 01:28
Eugie
есть функции задавания ориентации осей
Кажется, у CDC таких методов нет. А на чистом API можно: CreateFont() и указать нужные углы в параметрах nOrientation и nEscapement (не работает для растровых фонтов типа MS Sans Serif).

Добавлено: 21 окт 2004, 11:55
Kolinus
Есть в CDC такие функции (во всяк случае в мсдн написано)
плюс из CDC можно выдрать его hdc и использовать АПИ

Добавлено: 21 окт 2004, 16:45
Marjan
Нету функции SetViewPort в CDC. А то что ти читал в msdn относится к Visual Basic :) В msdn НЕ ТОЛЬКО с++ но и большое количество инних продуктов от microsoft документировано :) ). Правда есть ф-я SetViewportExt но она предназначена для ввода коефициентов предназначених для перехода от клиентских координат до координат дисплея! А апишние функции попробую. Правда не знаю сработает ли. Ведь я не "пишу" текст а ресую его! (функция TextOut). Спасибо ВСЕМ. Буду пробовать.

Добавлено: 21 окт 2004, 18:18
Kolinus
Если ты будешь ВНИМАТЕЛЬНО читать то все будет ок - я написал по-моему так а начит поищи что-то близкое.
А лучше открой Петзольда программирование для вынь95 и та 100% есть про задание ориентации осей и размеров пикселя.
Все остальные графические функции используют уже установленные настройки.
То есть если ты сможешь настроить ориентацию нужным тебе образом то твой текст аут введет вертикально все.
PS а в настройках установки MSDN можно указать что ставить а что нет ;)

Добавлено: 22 окт 2004, 12:47
Romeo
Я, в своё время, делал вертикальный текст с помощью установок фонта. В CDC такого точно нет, можешь даже не искать. Было бы нелогично программистам Microsoft добавлять подобные API функции для контекста рисования, если он, контекст, использует фонт, а фонт настраиваем. Получается дублирование, что не есть хорошо.

Так что идеология Microsoft такова: контекст "знает" куда рисовать текст, а вот как именно этот текст будет выглядеть - "знает" фонт. Всё строго и логично.