在Javascript中转换图像到内存流数据
Convert Image to Memory Stream data in Javascript
我使用jquery生成qr码图像。qrcode图书馆。我得到了以下格式的图像。
<img src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7"/>
我想打印这个图像加上一些文本(因为这是一个qrcode)。我知道打印图像时,图像是从c#的后端绘制的。无论如何,我可以将此图像转换为内存流数据发送到c#,或者无论如何,当图像绘制时,我可以从Javascript打印?
使用ajax调用发送您的图像base64 url
c#端使用这个函数
public Image Base64ToImage(string base64String)
{
// Convert Base64 String to byte[]
byte[] imageBytes = Convert.FromBase64String(base64String);
MemoryStream ms = new MemoryStream(imageBytes, 0,
imageBytes.Length);
// Convert byte[] to Image
ms.Write(imageBytes, 0, imageBytes.Length);
Image image = Image.FromStream(ms, true);
return image;
}
你可以直接从JavaScript打印,你不需要转换或发送到c#。c#在后端,我相信你需要在前端(终端用户机器)打印
您可以使用IFRAME,并将图像和文本添加到其中。
之后可以打印IFRAME。
http://jsfiddle.net/8gcz0dw7/工作示例
iframe=document.createElement('iframe')
document.body.appendChild(iframe)
var co=iframe.contentDocument.body;
$(co).append('your text<img src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7"/>')
iframe.focus()
iframe.contentWindow.print()
相关文章:
- VBA加载网页并提取内存中的数据
- 将所有angular2捆绑包包含在index.html中会使导入从内存获取数据,而不是再次从服务器请求数据
- 如何在浏览器中触发另存为对话框,以便可以在内存中保存 json 数据
- 我应该如何在Node中管理内存中的数据
- 如何确保我的谷歌图表数据在Javascript中从内存中删除
- 在 KnockoutJS 中更改模型数据时出现 Javascript 内存泄漏
- 在 Emscripten'd C++ 程序中处理数据后,如何修复尝试从 Web worker 发回数据时的“内存不足”错
- 可以在恒定内存中对低维数据进行聚类
- 使用数据URI快速更新图像会导致缓存、内存泄漏
- javascript/nodejs:在大的、分块的数据集上同步调用一组类似的异步函数会导致内存泄漏
- 在appcelerator titanium中进行数据绑定并避免内存崩溃的最佳做法是什么
- NodeJS:你可以使用普通的Javascript对象作为内存中的数据存储吗
- 具有重复jQuery数据表AJAX调用的内存管理
- 在浏览器内存中加载的最大数据量
- Javascript中的内存布局——面向数据vs面向对象设计
- 在Javascript中转换图像到内存流数据
- 从用户那里收集JavaScript内存配置文件数据
- 是否有一个HTML5的方法显示tiff图像数据已经加载到内存
- jQuery.数据导致内存泄漏
- 有没有工具可以查看IE浏览器的内存数据,比如javascript数据