我为新的属性添加后我有c#动态aspx页面我为记录小册子创建了
http://veneristurkey.com/admin/Brochure.aspx?Admin=PropertiesBrochureA4&id=36
但我希望这个转换图像文件我在互联网上搜索,但所有与webbrowser和Windows窗体。我需要在页面加载显示不css类型也图像文件。 jpg,png或tiff我怎么能做到这一点。我需要查看示例代码..
将aspx页面保存为图像2
答案 0 :(得分:1)
正如我在评论中提到的,最好的办法是选择尝试将HTML呈现给图像。
以下是允许您将html渲染为图像的库的链接:
http://htmlrenderer.codeplex.com/
以下代码完全符合您的要求:
http://amoghnatu.wordpress.com/2013/05/13/converting-html-text-to-image-using-c/
现在你剩下的就是获取html,因为我假设你不希望在生成这个图像之前将它渲染到浏览器 - 你应该考虑从aspx页面上抓取渲染的html返回之前服务器,然后只返回图像。要呈现页面:
https://stackoverflow.com/a/647866/1017882
排序。
答案 1 :(得分:0)
如果您不介意使用命令行工具,可以查看wkhtmltopdf。该软件包包含一个wkhtmltoimage组件,可用于将HTML转换为图像,使用
wkhtmltoimage [URL] [Image Path]
Codaxy还通过NuGet包管理器编写了一个wkhtmltopdf c# wrapper。我不确定是否包含了wkhtmltoimage组件,但它应该很容易弄清楚它们如何包装wkhtml组件。
答案 2 :(得分:0)
我用截屏机器API修复了我的问题,他们是我的代码..
public void resimyap() {
var procad = WS.Satiliklars.Where(v => v.ForSaleID == int.Parse(Request.QueryString["id"])).FirstOrDefault();
var imageBytes = GetBytesFromUrl("http://api.screenshotmachine.com/?key=xxxxxx&size=F&url=http://xxxxxxx.com/a4.aspx?id=" + procad.ForSaleID);
string root = Server.MapPath("~/");
// clean up the path
if (!root.EndsWith(@"\"))
root += @"\";
// make a folder to store the images in
string fileDirectory = root + @"\images\a4en\";
// create the folder if it does not exist
if (!System.IO.Directory.Exists(fileDirectory))
System.IO.Directory.CreateDirectory(fileDirectory);
WriteBytesToFile( fileDirectory + + procad.ForSaleID + ".png", imageBytes);
答案 3 :(得分:0)
是的我也尝试wkhtmltopdf c#wrapper但是在pdf或图像转换时间我的电脑迷goin crayz。我也必须上传服务器exe文件,我的托管公司不支持他们