我有一个场景,我正在创建动态html内容,我需要导出/保存html内容到一个图像文件与PHP,jQuery和JavaScript [或任何其他如果可能]。从html内容保存/导出图像文件?
回答
毕竟我已经决定使用的代码 PHP
GD and Image Functions
http://php.net/manual/en/ref.image.php
与此, 我有在图像的特定位置创建特定的html元素。
谢谢大家的贡献。
您可以使用HTML5画布和toDataURL方法。例如:
var capture = function() {
var root = document.documentElement;
var canvas = document.createElementNS('http://www.w3.org/1999/xhtml', 'html:canvas');
var context = canvas.getContext('2d');
var selection = {
top: 0,
left: 0,
width: root.scrollWidth,
height: root.scrollHeight,
};
canvas.height = selection.height;
canvas.width = selection.width;
context.drawWindow(
window,
selection.left,
selection.top,
selection.width,
selection.height,
'rgb(255, 255, 255)'
);
return canvas.toDataURL('image/png', '');
};
您可以调整顶部,左侧,宽度和高度以仅捕获网页的一部分。
结果是数据URI字符串。你可以把它发送到您的服务器,或者借鉴其他画布:
var canvas = document.getElementById('captured');
var ctx = canvas.getContext('2d');
var image = new Image();
image.src = capture();
// the image is not immediately usable
$(image).load(function() { // jquery way
canvas.width = image.width;
canvas.height = image.height;
ctx.drawImage(image, 0, 0);
});
你的插件可能使用这种方法。你也可以检查它的源代码。
编辑:它使用jQuery发送到你的服务器,你可以做这样的事情:
$("#send-capture-button").click(function() {
$.post("/url-to-send-image-to", {image_data: capture()})
});
在服务器端,你就必须对数据进行解码URL。
基于 “迈克尔Witrant” 答案 看看: Compile/Save/Export HTML as a PNG Image using Jquery
感谢您的回复! [不用于wid画布]我在测试文件中夹住这个脚本,为此我在顶部包含了js文件。 [以w3s为例] 。但它给错误 - “安全错误 'rgb(255,255,255)'”,你可以检讨吗? – 2012-01-31 10:33:27
Uncaught TypeError:Object#
确保您使用的版本支持HTML5,作为一个建议,您可以尝试使用Firebug进行调试的Firefox 9,对不起,我没有时间为您测试它 – Sypress 2012-01-31 11:29:35
我自己放了画布,并没有使用createElement
线以上 您可能需要在drawWindow()
之前添加此行才能获得用户的安全权限。见http://murfy.de/read/webgl-drawWindow
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
如果你想将图像保存为PNG等,我发现在一个有用的脚本: http://www.nihilogic.dk/labs/canvas2image/
- 1. 将图像内容保存在html文件中
- 2. 将内容保存为html文件
- 3. 将文本文件内容保存为图像
- 4. 导出/保存jLabel内容到新文件夹
- 5. 保存内容与文件放内容
- 6. 用MS Paint保存后图像文件更改内容
- 7. 将DIV内容保存为图像
- 8. 保存wxPython的scrolledcanvas内容图像
- 9. 将WebBrowser控件内容保存为HTML
- 10. HTML:当页面被保存有图像/文件没有保存
- 11. 图像内容类型输出HTML标记导致问题
- 12. 将图像从位图保存到jpeg而不保存文件
- 13. 从Android保存图像文件
- 14. 使用Jquery编译/保存/导出HTML为PNG图像
- 15. 导出并保存图像对话框
- 16. 保存图像导出到另一个
- 17. 从sql导出图像到文件
- 18. 从JDeveloper导出图像文件
- 19. 如何保存<HTML CONTENTEDITABLE>内容为文本文件
- 20. PHP保存图像文件
- 21. xamarin.forms保存文件/图像
- 22. 从html导出图像到jsPDF
- 23. 缓存图像/ js/css从来没有HTML内容
- 24. 保存图像文件在本地存储和检索图像从文件路径html cordova apps
- 25. 保存html canvas图像
- 26. 将dom的内容导出到html文件中chrome
- 27. ASP.NET写出HTML文件的内容?
- 28. 保存的UITextView内容doc文件
- 29. 从ForEach-Object导出内容
- 30. 从URL或从HTML获取所有图像命名并保存在文件夹
您好,欢迎计算器。你是说在图像文件中编写一些文本(在这种情况下是HTML页面的来源)?一般来说,可以使用PHP。 – 2012-01-31 07:21:15
如果你的意思是呈现的HTML,这不是一个微不足道的任务......也许一些关于这个问题的更多信息会有所帮助?也许有更好的方法来达到你的最终目标。 – Corbin 2012-01-31 07:21:35
你想将html内容保存为图像文件(jpg/png)吗?你能否清楚 – run 2012-01-31 07:24:50