A rich text control can contain custom formatted text or other items, such as tables, pictures and shapes, or other content controls.
Complete code
using System;
using System.Text;
using SautinSoft.Document;
using SautinSoft.Document.CustomMarkups;
using SautinSoft.Document.Drawing;
using System.IO;
namespace Example
{
class Program
{
static void Main(string[] args)
{
// Get your free 100-day key here:
// https://sautinsoft.com/start-for-free/
InsertRichText();
}
/// <summary>
/// Inserting a Rich text content control.
/// </summary>
/// <remarks>
/// Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/content-controls-insert-rich-text-net-csharp-vb.php
/// </remarks>
static void InsertRichText()
{
// Let's create a simple document.
DocumentCore dc = new DocumentCore();
// Create a rich text content control.
BlockContentControl rt = new BlockContentControl(dc, ContentControlType.RichText);
dc.Sections.Add(new Section(dc, rt));
// Add the content control properties.
rt.Properties.Title = "Rich text content control.";
rt.Properties.Color = Color.Blue;
rt.Properties.LockDeleting = true;
rt.Properties.LockEditing = true;
rt.Document.DefaultCharacterFormat.FontColor = Color.Orange;
// Add new paragraphs with formatted text.
rt.Blocks.Add(new Paragraph(dc, "Line 1"));
rt.Blocks.Add(new Paragraph(dc, "Line 2"));
rt.Blocks.Add(new Paragraph(dc, "Line 3"));
// Add a picture and shape to the block.
string pictPath = @"..\..\..\banner_sautinsoft.jpg";
Picture pict = new Picture(dc, InlineLayout.Inline(new Size(400, 100)), pictPath);
Shape shp = new Shape(dc, Layout.Inline(new Size(4, 1, LengthUnit.Centimeter)));
Paragraph im = new Paragraph(dc);
rt.Blocks.Add(im);
im.Inlines.Add(pict);
Paragraph sh = new Paragraph(dc);
rt.Blocks.Add(sh);
sh.Inlines.Add(shp);
rt.Blocks.Add(new Paragraph(dc, "Line 4"));
// Save our document into DOCX format.
string resultPath = @"result.docx";
dc.Save(resultPath, new DocxSaveOptions());
// Open the result for demonstration purposes.
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(resultPath) { UseShellExecute = true });
}
}
}
Imports System
Imports System.Text
Imports SautinSoft.Document
Imports SautinSoft.Document.CustomMarkups
Imports SautinSoft.Document.Drawing
Imports System.IO
Namespace Example
Friend Class Program
Shared Sub Main(ByVal args() As String)
InsertRichText()
End Sub
''' Get your free 100-day key here:
''' https://sautinsoft.com/start-for-free/
''' <summary>
''' Inserting a Rich text content control.
''' </summary>
''' <remarks>
''' Details: https://www.sautinsoft.com/products/document/help/net/developer-guide/content-controls-insert-rich-text-net-csharp-vb.php
''' </remarks>
Private Shared Sub InsertRichText()
' Let's create a simple document.
Dim dc As New DocumentCore()
' Create a rich text content control.
Dim rt As New BlockContentControl(dc, ContentControlType.RichText)
dc.Sections.Add(New Section(dc, rt))
' Add the content control properties.
rt.Properties.Title = "Rich text content control."
rt.Properties.Color = Color.Blue
rt.Properties.LockDeleting = True
rt.Properties.LockEditing = True
rt.Document.DefaultCharacterFormat.FontColor = Color.Orange
' Add new paragraphs with formatted text.
rt.Blocks.Add(New Paragraph(dc, "Line 1"))
rt.Blocks.Add(New Paragraph(dc, "Line 2"))
rt.Blocks.Add(New Paragraph(dc, "Line 3"))
' Add a picture and shape to the block.
Dim pictPath As String = "..\..\..\banner_sautinsoft.jpg"
Dim pict As New Picture(dc, InlineLayout.Inline(New Size(400, 100)), pictPath)
Dim shp As New Shape(dc, Layout.Inline(New Size(4, 1, LengthUnit.Centimeter)))
Dim im As New Paragraph(dc)
rt.Blocks.Add(im)
im.Inlines.Add(pict)
Dim sh As New Paragraph(dc)
rt.Blocks.Add(sh)
sh.Inlines.Add(shp)
rt.Blocks.Add(New Paragraph(dc, "Line 4"))
' Save our document into DOCX format.
Dim resultPath As String = "result.docx"
dc.Save(resultPath, New DocxSaveOptions())
' Open the result for demonstration purposes.
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(resultPath) With {.UseShellExecute = True})
End Sub
End Class
End Namespace
If you need a new code example or have a question: email us at support@sautinsoft.com or ask at Online Chat (right-bottom corner of this page) or use the Form below: