Как задать свои параметры RTF? - VB
Формулировка задачи:
Подскажите пожалуйста как в RichTextBox задать текст в ртф формате по своему (с нуля, начиная с заголовка)?
Дело в том, что я задаю текст в свойство TextRTF, но оно не задает заголовок и другие опции:
Вот ртф, который я задаю:
А в итоге в RTB.TextRTF содержится такой текст:
Решение задачи: «Как задать свои параметры RTF?»
textual
Листинг программы
Option Explicit Private Declare Sub InitCommonControls Lib "comctl32.dll" () Private Declare Function LoadLibrary Lib "kernel32" Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long Private Declare Function FreeLibrary Lib "kernel32" (ByVal hLibModule As Long) As Long Private hLib As Long Private Sub Command1_Click(Index As Integer) With RichTextBox1 Select Case Index Case 0 .SelBold = Not .SelBold Case 1 .SelItalic = Not .SelItalic Case 2 ' 'Вставляем полученный RTF в буфер обмена после чего его можно присвоить константе rtf 'Заменяем служебный символ новой строки на свой символ "[vbCrLf]" ' With Clipboard .Clear .SetText Replace(RichTextBox1.TextRTF, vbCrLf, "[vbCrLf]") End With End Select End With End Sub Private Sub Form_Load() ' 'Вставка кода RTF в поле RichTextBox1 ' Const rtf = "{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fswiss\fcharset204{\*\fname Arial;}Arial CYR;}{\f1\fswiss\fcharset0 Arial;}{\f2\fnil\fcharset204 MS Sans Serif;}}[vbCrLf]{\*\generator Msftedit 5.41.15.1517;}\viewkind4\uc1\pard\b\f0\fs17\'ca\'ee\'ef\'e8\'f0\'f3\'e5\'ec \b0\i\'ef\'ee\'eb\'f3\'f7\'e5\'ed\'ed\'fb\'e9 \lang1033\b\f1 RTF\lang1049\b0\i0\f2\par[vbCrLf]}[vbCrLf]" RichTextBox1.TextRTF = Replace(rtf, "[vbCrLf]", vbCrLf) End Sub Private Sub Form_Initialize() hLib = LoadLibrary("shell32.dll") InitCommonControls End Sub Private Sub Form_Unload(Cancel As Integer) FreeLibrary hLib End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д