Ail*_*lyn 3 javascript pdf jquery jspdf
我只使用 javascript 得到了一个新的 PDF 生成器,没有实现服务器代码。但是当我总是尝试运行代码时,文件总是会自动保存或下载,因此我没有机会查看或查看内容。使用jsPDF时如何查看 PDF 的内容?
var name = prompt('What is your name?');
var multiplier = prompt('Enter a number:');
multiplier = parseInt(multiplier);
var doc = new jsPDF();
doc.setFontSize(22);
doc.text(20, 20, 'Questions');
doc.setFontSize(16);
doc.text(20, 30, 'This belongs to: ' + name);
for(var i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ___');
}
doc.addPage();
doc.setFontSize(22);
doc.text(20, 20, 'Answers');
doc.setFontSize(16);
for(var i = 1; i <= 12; i ++) {
doc.text(20, 30 + (i * 10), i + ' x ' + multiplier + ' = ' + (i * multiplier));
}
doc.save('Test.pdf');Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.2/jspdf.debug.js"></script>Run Code Online (Sandbox Code Playgroud)
虽然window.open工作正常,但出于安全原因,新的 chrome 版本默认会阻止弹出窗口,因此我需要另一个解决方案。
受到以下页面的启发: https: //parall.ax/products/jspdf我得出以下解决方案:
HTML 代码(屏幕上的全尺寸 iframe):
<iframe id="main-iframe" style="width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 2; border: none;"></iframe>
Run Code Online (Sandbox Code Playgroud)
JavaScript 代码:
document.getElementById('main-iframe').setAttribute('src', doc.output('bloburl'));
Run Code Online (Sandbox Code Playgroud)