将字符串内容写入PDF
Writing string content as PDF
我已经构建了为用户查看的报告生成pdf文件的功能。
所以它现在做的是当用户点击打印pdf按钮时它
- 获取需要打印的div的html内容
- 发送这个内容到控制器的方法使用jquery ajax方法POST
- 在控制器中,它用html文档字符串包装内容,如
<html>
,<body>
等,我在那里添加了一些样式。 - 然后这个html字符串被传递给我正在使用的一个工具它为这个字符串返回pdf字节
- 然后将这些字节保存为pdf文件,并返回该文件的路径。
- Jquery然后在成功方法打开这个文件的路径窗口。
一切正常。
问题是
- 它不会立即打开窗口,因为它做了所有的处理,然后在成功时打开窗口
- 加上我想知道我是否做这一切都是正确的或做一些额外的不必要的步骤,从这个我的意思是有任何更好的方法或短的方法来做到这一点。
得到div的内容后,对字符串做一些改变,直接显示在新的窗口作为pdf内容等,以避免服务器处理,这是可能的吗?
到目前为止,我一直试图用data:application/pdf
直接显示内容,但没有工作。
如果这是不可能的,我想避免保存pdf文件,但只是显示将打开为pdf的视图,可能是通过设置其content-type
,这是可能的吗?
你所做的是最好的方法。(所有)浏览器都不具备将html转换为pdf的功能,所以你不能命令它们以pdf格式打开页面。您必须从服务器提供pdf文件。为了获得更多的控制,您可以在指定的url上从脚本提供文件,并添加适当的头:
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="the.pdf"'); // second parameter is the name of the file
内容类型表示浏览器将尝试使用适合此MIME类型的程序打开它。内容内联处理意味着浏览器将尝试在浏览器中打开它。
当服务器正在工作时,只向用户显示"正在加载"的图像。这样用户就会知道发生了什么事情,他需要等待。
相关文章:
- 如何在JavaScript中将字符串转换为函数引用
- jQuery中是否内置了任何字符串格式化函数
- 如何使用javascript或html下载PDF格式的填写表单
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- ng打开空字符串
- 正则表达式在字符串中找到base64
- 如何将字符串值从php页面发送到java脚本页面
- 如何将PDF作为二进制文件传递到window.open()
- 子字符串/正则表达式以获取字符串中保存的 SRC 值
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- 对id以某个字符串开头的元素进行计数
- Javascript逻辑运算符和字符串/数字
- 如何在jquery、javascript、HTML5中以base64字符串保存为(PDF、doc、xls、png.)
- 使用 PDF 打开 PDF 文件.js而不将文件作为查询字符串传递
- Blob字符串url到PDF
- 字符串操作&PDF输出文件
- 将字符串内容写入PDF
- 用wkhtmltopdf从HTML字符串导出到PDF
- 使用jsPDF将HTML字符串呈现为PDF文档
- 如何在java脚本中将PDF文件转换为base64字符串