要在 WinForm 中打印 HTML 标签,你可以使用 WebBrowser 控件。下面是一个简单的示例:

首先,在 WinForm 中添加一个 WebBrowser 控件。

然后,在代码中使用以下代码加载和打印 HTML 标签:

private void PrintHtmlTags()
{
    // 创建一个 WebBrowser 控件实例
    WebBrowser browser = new WebBrowser();
    
    // 添加一个事件处理程序以在文档加载完成后执行打印操作
    browser.DocumentCompleted += Browser_DocumentCompleted;
    
    // 加载 HTML 标记
    browser.DocumentText = '<html><body><h1>Hello, World!</h1></body></html>';
}

private void Browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    // 创建一个 PrintDocument 实例
    PrintDocument doc = new PrintDocument();
    
    // 设置打印页边距
    Margins margins = new Margins(50, 50, 50, 50);
    doc.DefaultPageSettings.Margins = margins;
    
    // 设置打印内容为 WebBrowser 控件的文档
    doc.DocumentName = 'HTML Tags';
    doc.PrintPage += (s, ev) =>
    {
        // 获取 WebBrowser 控件的内容
        using (Graphics graphics = ev.Graphics)
        {
            Rectangle bounds = ev.MarginBounds;
            browser.Bounds = bounds;
            browser.RenderToBitmap(bitmap, new Rectangle(0, 0, browser.Width, browser.Height));
            graphics.DrawImage(bitmap, bounds);
        }
    };
    
    // 执行打印操作
    doc.Print();
}

在上面的示例中,我们首先创建了一个 WebBrowser 控件的实例,并将 HTML 标记加载到该控件中。然后,在文档加载完成后,我们创建了一个 PrintDocument 实例,并将 WebBrowser 控件的内容设置为要打印的内容。最后,我们执行打印操作。

请注意,上述示例中的代码片段是一个简化的示例,实际情况中可能需要进行更多的错误处理和适应性调整。

C# WinForm 打印 HTML 标签内容

原文地址: https://www.cveoy.top/t/topic/mY8D 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录