因此,我试图打印一个Base64文件,但我不确定为什么它不打印该文件。
function convertToBase64() {
var selectedFile = document.getElementById("inputFile").files;
if (selectedFile.length > 0) {
    var fileToLoad = selectedFile[0];
    var fileReader = new FileReader();
    var base64;
    fileReader.onload = function (fileLoadedEvent) {
        base64 = fileLoadedEvent.target.result;
        const pdfBlob = new Blob([base64], { type: "application/pdf" });
        const url = URL.createObjectURL(pdfBlob);
        printJS({
            printable: url,
            type: "pdf",
            base64: true
        });
    };
    fileReader.readAsDataURL(fileToLoad);
}}
我将它传递给我选择的pdf文件,并将其转换为Base64。现在,我想使用Base64打印Print.js,但我无法让它工作。
发布于 2022-02-21 23:45:09
您的代码实际上不是将base64数据传递给打印函数,而是传递一个URL。
如果要保留当前代码,只需从打印参数中移除base64标志即可。
printJS({
  printable: url,
  type: 'pdf',
});否则,您可以将base64变量传递给print函数,而不需要创建blog和url,打印库将为您处理这个问题。
前:
假设base64Data是一个具有有效base64数据的变量。
printJS({
  printable: base64Data,
  type: 'pdf',
  base64: true
});https://stackoverflow.com/questions/71206508
复制相似问题