1 / 1 / 0
Регистрация: 30.04.2015
Сообщений: 34
1

Повернуть текст на 90 градусов при выводе на печать (на принтер) в VB6

22.01.2018, 13:00. Показов 4665. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Нужна помощь в выводе на печать средствами VB6. Мне нужно располагать строки на странице как горизонтально, так и вертикально (не в столбец, а повернуто на 90 град. по часовой стрелке и(или) против). Находил тут на форуме на VB.NET, вроде есть возможность только в одну сторону. А на VB6 получится это реализовать? Может есть какие варианты через API... Во общем второй день безрезультатно копаю интернет. У кого есть мысли на этот счет?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2018, 13:00
Ответы с готовыми решениями:

Как повернуть текст на 90 градусов в таблице?
Ребят, подскажите, как сделать чтобы в определённой ячейки таблицы текст отображался не слева на...

[C++ Builder XE] TcxSpreadSheetBook. Повернуть текст в ячейке на 90 градусов.
Здравствуйте! Подскажите возможно ли повернуть текст в ячейке компонента TcxSpreadSheetBook на...

Как в редакторе Dia повернуть текст на 90 градусов
Как в этом редакторе повернуть текст на 90, кто знает подскажите......

Вывести текст на канву вертикально (повернуть на 90 градусов)
Я рисую на канве в delphi, мне необходимо вывести текст вертикально (повернуть на 90 градусов), как...

4
70 / 62 / 19
Регистрация: 03.05.2013
Сообщений: 393
22.01.2018, 17:08 2
как вариант сохранять в картинки, и потом их печатать.
0
Модератор
9722 / 3683 / 871
Регистрация: 22.02.2013
Сообщений: 5,529
Записей в блоге: 78
22.01.2018, 18:03 3
Есть. Параметры lfEscapement и lfOrientation структуры LOGFONT.
Мб еще и матрицы трансформаций позволят (для текста не проверял)
2
1 / 1 / 0
Регистрация: 30.04.2015
Сообщений: 34
24.01.2018, 06:43  [ТС] 4
Цитата Сообщение от The trick Посмотреть сообщение
Есть. Параметры lfEscapement и lfOrientation структуры LOGFONT.
Мб еще и матрицы трансформаций позволят (для текста не проверял)
Извините, конечно за "вопиющую безграмотность", но как эту Сишную структуру можно использовать в VB6. Если не затруднит, маленький примерчик?
0
Модератор
9722 / 3683 / 871
Регистрация: 22.02.2013
Сообщений: 5,529
Записей в блоге: 78
24.01.2018, 10:27 5
Лучший ответ Сообщение было отмечено SPARKCom как решение

Решение

SPARKCom,
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Option Explicit
 
Private Const LF_FACESIZE As Long = 32
 
Private Type LOGFONT
    lfHeight            As Long
    lfWidth             As Long
    lfEscapement        As Long
    lfOrientation       As Long
    lfWeight            As Long
    lfItalic            As Byte
    lfUnderline         As Byte
    lfStrikeOut         As Byte
    lfCharSet           As Byte
    lfOutPrecision      As Byte
    lfClipPrecision     As Byte
    lfQuality           As Byte
    lfPitchAndFamily    As Byte
    lfFaceName          As String * LF_FACESIZE
End Type
 
Private Declare Function CreateFontIndirect Lib "gdi32" _
                         Alias "CreateFontIndirectA" ( _
                         ByRef lpLogFont As LOGFONT) As Long
Private Declare Function SelectObject Lib "gdi32" ( _
                         ByVal hdc As Long, _
                         ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" ( _
                         ByVal hObject As Long) As Long
 
Private Sub Form_Load()
    Dim tLF         As LOGFONT
    Dim hFont       As Long
    Dim hPrevFont   As Long
    
    Me.AutoRedraw = True
    Me.FontName = "Arial"
    
    tLF.lfEscapement = -900
    tLF.lfHeight = (Me.FontSize * -20) / Screen.TwipsPerPixelY
    tLF.lfQuality = 2
    tLF.lfWeight = Me.Font.Weight
    tLF.lfFaceName = Me.FontName & vbNullChar
    
    hFont = CreateFontIndirect(tLF)
    
    If hFont = 0 Then
        MsgBox "Error " & Err.LastDllError
    Else
        
        hPrevFont = SelectObject(Me.hdc, hFont)
        Me.CurrentX = 400
        Me.CurrentY = 100
        Me.Print "Vertical Font"
        SelectObject Me.hdc, hFont
        DeleteObject hFont
        
    End If
    
End Sub
2
24.01.2018, 10:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2018, 10:27
Помогаю со студенческими работами здесь

При выводе в PDF или выводе на печать, не видно часть чертежа!
Прошу помощи! Не видно часть чертежа. Точно точно дело не слоях.

Как при клике повернуть картинку на 45 градусов?
Привет всем ! Подскажите как мне сделать чтобы при клике на картинку, она поворачивалась на 45% по...

Неточность при выводе на печать
При выводе линии 5 см по горизонтали выводится точно, а по вертикали 4.9 см. Если по вертикали...

Ошибка при выводе на печать
Доброго времени суток При выводе на печать вываливается ошибка названия для печати должны...

Ошибка при выводе на печать
Создаю код для вывода на печать картинки из файла. Взял за основу рабочий пример. Вот мой, немного...

Масштаб формы при выводе на печать
Всем привет! Есть форма с выводом информации про конкретного клиента. Её нужно вывести на печать....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru