3

我正在使用 HTML 做一些工作,我想打印(在纸上)这些 HTML 文件,实际上,该文件不存在,所有内容都保存在一个字符串中,所有文本都保存在 HTML 中,但我想打印,已经格式化...

例如:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string HTML =
"<html>" +
"<head>" +
"    <style type=\"text/css\">" +
"    .title {" +
"        color: blue;" +
"        text-decoration: bold;" +
"        text-size: 1em;" +
"    }" +
"    .author {" +
"        color: gray;" +
"    }" +
"    </style>" +
"</head>" +
"<body>" +
"    <p>" +
"    <span class=\"title\">{0}</span>" +
"    <span class=\"author\">{1}</span>" +
"    </p>" +
"</body>" +
"</html>";

            // Just a sample of what I whant to do...
            // PseudoCode
            //Render the HTML code
            RenderHTML aa = new RenderHTML(string.Format(HTML, "Alexandre", "Bencz"));
            aa.PrintDocumentInPaper();
        }
    }
}

我发现:http: //msdn.microsoft.com/en-us/library/w290k23d.aspx

但是,我想知道是否有另一种方法可以做到这一点,更好的方法..?

4

1 回答 1

1

您在 webbrowser MSDN 课程上走在了正确的轨道上,我认为您可以很容易地做到这一点。

1)您需要通过(您的文本字符串的)流而不是保存的文件来填充其文档内容。 http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.documentstream%28v=vs.100%29.aspx

2)然后只需触发打印功能 http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.print%28v=vs.100%29.aspx

附上我提供的链接,我假设您使用的是 .Net 4.0。

于 2013-01-02T01:18:05.357 回答