| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Вывод текста на принтер |
| Автор: Гость_Oleg 8.1.2004, 17:47 |
| Для вывода текста на экран и на принтер использую ::SetMapMode(m_DC,MM_TWIPS); ............................... TextOut(m_DC,.....); Размер шрифта задаю в миллиметрах и пересчитываю её в логические единицы как рекомендуется в документации. Всё отображается правильно. Но, и это указанно в книгах, размер строки получается разный на экране и на принтере. Это видно когда текст вписывается в заданный горизонтальный размер и этот размер почти равен длине строки. На экране строка умещается в заданные границы, а на принтере происходит перенос последнего слова. Автоматическое деление текста на строки заложено в программе и работает верно. А как Word делает точное соответствие экранной и «твёрдой» копии? Может есть способ более точной подстройки размера шрифта? |
| Автор: Гость_Oleg IT 2.12.2004, 14:02 |
| Товарищи программисты, неужели ни кто не знает от чего появляется небольшая разница в размере текста на экране и на принтере? И как с эти борется например WORD? |
| Автор: Mad 2.12.2004, 14:15 |
| Пересчитывать в логические необходимо с использованием свойств контекста (для экрана и для принтера могут получиться разные). P.S. для простоты расчетов попробуй режими MM_LOMETRIC и MM_HIMETRIC |