.Net RTF(或)HTML to Image

时间:2009-12-31 13:17:56

标签: .net html rtf system.drawing

在.Net(C#)服务器进程中,我想生成包含大量富文本(带段落,字体样式等)的图像。可以使用RTF或HTML来描述richtext。

有没有办法将RTF / HTML转换为图像?由于它是一个服务器进程,我想避免使用Windows窗体控件。

5 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

不确定你要做什么。

如果它像在服务器上自动生成一个用户的通行证书然后可以打印出来然后我会使用通用处理程序.ashx并在内存中构建图像然后将其写入响应。

如果最终用户将文本等放入他们的浏览器并回发,那么请查看webbrowser控件,或者如果您愿意,它是activex的前身(这是功能更丰富的IMO)。我知道你想要远离Forms的一面,但你可以在内存中创建和使用其中一个控件。我认为可以在浏览器中呈现返回的html(您可能必须使用一些javascript和隐藏字段来获取没有viewstate问题的纯HTML)。从那里可以抓取或打印屏幕(或者如果控件实际显示在屏幕上会出现什么)!我确定我以前在某个地方使用了这个闪避。

再给我一些细节,我会一起为你准备一些例子。

答案 2 :(得分:0)

答案 3 :(得分:0)

您可以查看Snowbound Rastermaster(商业SDK)。也许他们会为你做任务。

http://snowbound.com/rastermaster_net/net_overview.html

答案 4 :(得分:0)

phantomjs(无头WebKit浏览器)可用于将呈现的HTML页面转换为图像。

http://phantomjs.org/download.html安装它并从命令行执行以下示例脚本:

./phantomjs ../examples/rasterize.js http://www.panoramio.com/photo/76188108 test.jpg

它将在JPEG文件中创建给定页面的屏幕截图。