在C#中,RichTextBox控件用于顯示和編輯多行文本,其中包含格式化文本、圖像和其他富文本元素。要在打印時處理RichTextBox中的內容,您可以按照以下步驟操作:
GetText()
方法獲取純文本內容,或者使用GetFormattedText()
方法獲取格式化文本內容。string plainText = richTextBox1.GetText();
richTextBox1.GetFormattedText(out FormattedText formattedText);
Font printFont = new Font("Arial", 12);
Color printColor = Color.Black;
PrintDocument
對象,并在其PrintPage
事件處理器中處理文本的繪制。PrintDocument printDoc = new PrintDocument();
printDoc.PrintPage += new PrintPageEventHandler(PrintPageHandler);
PrintPageHandler
方法中,使用Graphics
對象的DrawString()
方法繪制文本。void PrintPageHandler(object sender, PrintPageEventArgs e)
{
Graphics g = e.Graphics;
g.Font = printFont;
g.DrawString(plainText, printFont, printColor, e.MarginBounds);
}
PrintDocument
對象的Print()
方法打印文檔。printDoc.Print();
這樣,您就可以在打印時處理RichTextBox中的內容了。如果您還需要處理格式化文本,可以在PrintPageHandler
方法中使用DrawString()
方法的另一個重載版本,該版本接受formattedText
參數。