当用户点击GeneratePDF按钮时,我需要将html页面导出为PDF文件.我成功将HTML页面导出为PDF文件,但只有第一次点击我才能将数据下载到PDF中,但是从第二次点击我无法将数据下载到PDF文件.我不确定我在代码中出错了.
请在这里查看代码:
$(function() {
var doc = new jsPDF();
var specialElementHandlers = {
'#editor': function(element, renderer) {
return true;
}
};
$('#cmd').click(function() {
doc.fromHTML($('#target').html(), 15, 15, {
'width': 170,
'elementHandlers': specialElementHandlers
});
doc.save('sample-file.pdf');
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="https://code.jquery.com/ui/1.12.0-beta.1/jquery-ui.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.1.135/jspdf.min.js"></script>
<script type="text/javascript" src="http://cdn.uriit.ru/jsPDF/libs/adler32cs.js/adler32cs.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/2014-11-29/FileSaver.min.js
"></script>
<script type="text/javascript" src="libs/Blob.js/BlobBuilder.js"></script>
<script type="text/javascript" src="http://cdn.immex1.com/js/jspdf/plugins/jspdf.plugin.addimage.js"></script>
<script type="text/javascript" src="http://cdn.immex1.com/js/jspdf/plugins/jspdf.plugin.standard_fonts_metrics.js"></script>
<script type="text/javascript" src="http://cdn.immex1.com/js/jspdf/plugins/jspdf.plugin.split_text_to_size.js"></script>
<script type="text/javascript" src="http://cdn.immex1.com/js/jspdf/plugins/jspdf.plugin.from_html.js"></script>
<script type="text/javascript" src="js/basic.js"></script>
<body id="target">
<div id="content">
<h3>Hello, this is a H3 tag</h3>
<a class="upload">Upload …Run Code Online (Sandbox Code Playgroud)我想将网页直接保存为PDF.
我所做的是 -
<form>
<input type=button name=print value="Print" onClick="window.print()">
</form>Run Code Online (Sandbox Code Playgroud)
但它为我提供了打印选项或将页面保存为PDF.
但我想要的是当我点击按钮时,它直接将页面保存为PDF而不显示任何选项.
JavaScript中有任何解决方案吗?
在此先感谢您的帮助.
我正在使用Ajax功能来检索我的内容,我需要成功导出PDF jQuery.ajax().我怎样才能做到这一点?
我做了一个语法荧光笔,我想要一个保存为 PDF 的选项。我看过这个 SO question,但下载它不会保留 CSS 样式,这破坏了下载突出显示文件的意义。有没有办法pre在保持 CSS 的同时将我的元素保存为 PDF?
HTML:
<pre id='output'> (highlighted portion) </pre>
<button id='save'>Save as PDF</button>
Run Code Online (Sandbox Code Playgroud)
JS:
$('#save').click(function(){
//this is what I need help with
});
Run Code Online (Sandbox Code Playgroud)
您可能已经注意到,如果这很重要,我正在使用 jQuery。
我正在使用Google App Script,我想在pdf文件中转换div的内容.我尝试着:
function genPdf(html)
{
var blob = Utilities.newBlob(html, "text/html", "text.html");
var pdf = blob.getAs("application/pdf");
DriveApp.createFile(pdf).setName("text.pdf");
}
Run Code Online (Sandbox Code Playgroud)
该函数的'html'参数与a一起传递
$('#container').html()
Run Code Online (Sandbox Code Playgroud)
问题是,当我使用Jquery的html()函数获取div的html时,它返回没有CSS样式和/或图像的html.
我需要生成一个完全相同的div内容的PDF.
有什么建议?
我正在引用这篇文章 Download a div in a HTML page as pdf using javascript
它基本上使用 jspdf 将 div 转换为 pdf。我让它工作了,但唯一的问题是我无法让它添加一个包含在 div 中的图像。换句话说,我可以将 div 中的文本变成 pdf 而不是里面的图像。
我有一个javascript,可以<div>在点击时保存as html 的内容,这在chrome上运行得很好,但在firefox上却没有.
请帮我写一个跨浏览器的解决方案.
这是我的代码:
$(window).load(function(){
function downloadInnerHtml(filename, elId, mimeType) {
var elHtml = document.getElementById(elId).innerHTML;
var link = document.createElement('a');
mimeType = mimeType || 'text/plain';
link.setAttribute('download', filename);
link.setAttribute('href', 'data:' + mimeType + ';charset=utf-8,' + encodeURIComponent(elHtml));
link.click();
}
var fileName = 'invo.html';
$('#downloadLink').click(function(){
downloadInnerHtml(fileName, 'Invoice','text/html');
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="Invoice">
CONTENT GOES HERE
</div>
<a href="#" onclick="return false;" id="downloadLink">Download</a>Run Code Online (Sandbox Code Playgroud)