powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Печать VB
8 сообщений из 8, страница 1 из 1
Печать VB
    #32938334
NikolsoN83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите как в Visual Basic при выводе на печать сжать текст?

Буду презнателен!!!
...
Рейтинг: 0 / 0
Печать VB
    #32942370
Шогал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Сжать текст" - это как? Уменьшить шрифт что ли?
Сейчас у меня нет VB чтобы проверить, но насколько я помню - что-то типа Printer.FontSize = ...
...
Рейтинг: 0 / 0
Печать VB
    #32945782
NikolsoN83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет дело не в шрифте, уменьшить или увеличить я знаю как... Дело в том что при шрифте 8 текст вмещается на страницу, я хочу сделать шрифт 12 и чтобы текст вмещался на страницу также... ТО ЕСТЬ УЖИМАЛСЯ....
...
Рейтинг: 0 / 0
Печать VB
    #32946071
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Думаю единственный способ сделать это - уменьшение межбуквенного расстояния.
Для этого нужно получить ссылку на Font и с помощью АПИ задать необходимые свойства. На данный момент примеров под рукой нет. Данные манипуляции хорошо описаны в книге Эплмана Win32API и Visual Basic.

Magnus
...
Рейтинг: 0 / 0
Печать VB
    #32946204
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М.б., использовать другой шрифт?
Типа Narrow,Condensed...
...
Рейтинг: 0 / 0
Печать VB
    #32946488
NikolsoN83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Magnus!!! Будь так добр вышли пример хоть небольшой на nikolson@ua.fm !!!

Буду признателен!!!
...
Рейтинг: 0 / 0
Печать VB
    #32946565
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня сейчас Васика нет, поэтому не уверен тот ли это пример. Вытащил с диска.
Там должны быть примеры манипуляций со шрифтами. Конечно кое-что тебе придется доработать применительно к твоему случаю.
Идеальный вариант был бы - вместе с примерами почитать эту главу книги, там очень толково написано, советую найти.
Вообще очень полезная штука. Dan Appleman "WIn32 APi и Visual Basic для профессионалов". Оригинальное название "Visual Basic Programmer's Guide to the Win32 API "

Magnus
...
Рейтинг: 0 / 0
Печать VB
    #32947162
NikolsoN83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть пример:

Const ETO_OPAQUE = 2

Private Declare Function ExtTextOut Lib "gdi32" _
Alias "ExtTextOutA" (ByVal hdc As Long, ByVal x As Long, _
ByVal y As Long, ByVal wOptions As Long, _
ByVal lpRect As Any, ByVal lpString As String, _
ByVal nCount As Long, lpDx As Long) As Long

Private Sub Form_Paint()
Dim Arr(0 To 50) As Long
Const mStr = "Всем привет"
Me.ScaleMode = vbPixels
'Устанавливаем расстояние между символами
For x = 0 To 50
If x Mod 2 = 0 Then
Arr(x) = 7
Else
Arr(x) = 7
End If
Next x
'Вызываем ExtTextOut
ExtTextOut Me.hdc, 1, 1, ETO_OPAQUE, ByVal 0&, mStr, Len(mStr), Arr(0)
End Sub

На экране текст из файла ужимает но на печатает остается так как есть...
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Печать VB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]