从pdf . js pdf转换为画布标签获得base64 png
Getting a base64 png from a PDF.JS pdf converted to a canvas tag?
我正试图从画布中获得一个base64编码的png值,该画布是通过将pdf与Mozilla的pdf . js库转换而创建的。
所以我有一个base64编码的PDF,我把它转换成HTML画布。现在需要将HTML画布转换为base64编码的png值,以便与正确显示的HTML img标记一起使用。
我尝试了HTMLCanvasElement.toDataURL(),但是它不显示任何东西。我试着用同样的方法在画布上画一些绿色的盒子,它工作得很好,这意味着base64编码的pdf转换成画布只是不想用这种方法工作。
我尝试过的解决方案有其他解决方案或变通方案吗?
**我需要在我的JS代码中使用我的HTML。
function convertDataURIToBinary() {
var raw = window.atob(BASE64 OF PDF);
var rawLength = raw.length;
var array = new Uint8Array(new ArrayBuffer(rawLength));
for(var i = 0; i < rawLength; i++) {
array[i] = raw.charCodeAt(i);
}
return array;
}
var pdfAsArray = convertDataURIToBinary();
PDFJS.workerSrc = "http://mozilla.github.io/pdf.js/build/pdf.worker.js";
var canvas = _el.querySelector(".insertHere");
PDFJS.getDocument(pdfAsArray).then(function getPdfHelloWorld(pdf) {
pdf.getPage(1).then(function getPageHelloWorld(page) {
var scale = 1.5;
var viewport = page.getViewport(scale);
var context = canvas.getContext("2d");
canvas.height = viewport.height;
canvas.width = viewport.width;
var renderContext = {
canvasContext: context,
viewport: viewport
};
page.render(renderContext);
canvas = _el.querySelector(".insertHere");
var imgSrc = canvas.toDataURL("image/png");
var img = new Image();
img.src = imgSrc;
_el.querySelector(".insertImageLabel").appendChild(img);
});
});
您没有等待render()返回的承诺来完成异步操作。参见https://github.com/mozilla/pdf.js/blob/master/examples/learning/prevnext.html#L76如何等待完成:
...
var renderTask = page.render(renderContext);
// Wait for rendering to finish
renderTask.promise.then(function () {
// Page rendered, now take snapshot.
});
...
相关文章:
- 在<页眉>标签
- 如何使用javascript或html下载PDF格式的填写表单
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- 如何将PDF作为二进制文件传递到window.open()
- iframe正在添加标签,需要删除它们
- javascript.点击显示嵌入的pdf
- 如何自动调整标签的高度以适应内容
- Javascript/Jquery Blob not showing Chrome PDF
- Jquery标签插件粘贴问题
- Twitter引导程序Typeahead-Id&标签
- Chrome 原生 PDF 阅读器在新标签页中打开超链接
- PDF 中的锚标签在 Firefox 和 safari 中不可点击
- 如何检查PDF Form/Javascript中按钮的文本/标签
- 在c#中下载html文本区域标签的内容为word或pdf文件
- 从pdf . js pdf转换为画布标签获得base64 png
- 使用JavaScript将PDF标签提取为CSV文件
- 需要在新标签中加载pdf/doc文件,而不是下载,只是想在浏览器中阅读
- 如何下载PDF到一个新的标签/窗口没有弹出阻止
- HTML表渲染为PDF.Pdf格式的内容不是标签格式
- 自动添加图像到PDF链接在WooCommerce产品标签