Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 打印fabricjs画布?_Javascript_Html_Canvas_Fabricjs - Fatal编程技术网

Javascript 打印fabricjs画布?

Javascript 打印fabricjs画布?,javascript,html,canvas,fabricjs,Javascript,Html,Canvas,Fabricjs,几周来,我一直在努力创建能够打印fabricjs画布的功能。我尝试过这些方法,但运气不好。我可以进入打印对话框,但是,除了标题和页面信息之外,它是空白的。谁能给我指出正确的方向吗 我目前正在使用: // Trying to print function printCanvas() { var dataUrl = document.getElementById('c').toDataURL(); //attempt to save base64 string to server u

几周来,我一直在努力创建能够打印fabricjs画布的功能。我尝试过这些方法,但运气不好。我可以进入打印对话框,但是,除了标题和页面信息之外,它是空白的。谁能给我指出正确的方向吗

我目前正在使用:

// Trying to print
function printCanvas()  
{  
    var dataUrl = document.getElementById('c').toDataURL(); //attempt to save base64 string to server using this var  
    var windowContent = '<!DOCTYPE html>';
    windowContent += '<html>'
    windowContent += '<head><title>Print canvas</title></head>';
    windowContent += '<body>'
    windowContent += '<img src="' + dataUrl + '">';
    windowContent += '</body>';
    windowContent += '</html>';
    var printWin = window.open('','','width=340,height=260');
    printWin.document.open();
    printWin.document.write(windowContent);
    printWin.document.close();
    printWin.focus();
    printWin.print();
    printWin.close();
}
//正在尝试打印
函数printCanvas()
{  
var dataUrl=document.getElementById('c').toDataURL();//尝试使用此var将base64字符串保存到服务器
var windowContent='';
windowContent+=“”
windowContent+=“打印画布”;
windowContent+=“”
windowContent+='';
windowContent+='';
windowContent+='';
var printWin=window.open('','',宽度=340,高度=260');
printWin.document.open();
printWin.document.write(windowContent);
printWin.document.close();
printWin.focus();
printWin.print();
printWin.close();
}

打印

加载内容后,您需要执行打印操作。下面的代码应该可以工作

function printCanvas() {
    var dataUrl = document.getElementById('c').toDataURL(); //attempt to save base64 string to server using this var  
    var windowContent = '<!DOCTYPE html>';
    windowContent += '<html>'
    windowContent += '<head><title>Print canvas</title></head>';
    windowContent += '<body>'
    windowContent += '<img src="' + dataUrl + '" onload=window.print();window.close();>';
    windowContent += '</body>';
    windowContent += '</html>';
    var printWin = window.open('', '', 'width=340,height=260');
    printWin.document.open();
    printWin.document.write(windowContent);
}
函数printCanvas(){ var dataUrl=document.getElementById('c').toDataURL();//尝试使用此var将base64字符串保存到服务器 var windowContent=''; windowContent+=“” windowContent+=“打印画布”; windowContent+=“” windowContent+=''; windowContent+=''; windowContent+=''; var printWin=window.open('','',宽度=340,高度=260'); printWin.document.open(); printWin.document.write(windowContent); }
您知道是否可以增大从DataURL捕获的图像的大小吗?如果你愿意,我可以提出一个新问题。谢谢在你的另一个问题上,我无法尝试给你一个解决方案。如果有帮助,请告诉我!非常感谢。:)
function printCanvas() {
    var dataUrl = document.getElementById('c').toDataURL(); //attempt to save base64 string to server using this var  
    var windowContent = '<!DOCTYPE html>';
    windowContent += '<html>'
    windowContent += '<head><title>Print canvas</title></head>';
    windowContent += '<body>'
    windowContent += '<img src="' + dataUrl + '" onload=window.print();window.close();>';
    windowContent += '</body>';
    windowContent += '</html>';
    var printWin = window.open('', '', 'width=340,height=260');
    printWin.document.open();
    printWin.document.write(windowContent);
}