繁体   English   中英

如何使用javascript + HTML5知道PDF版本

[英]How to know the PDF Version using javascript + HTML5

我想使用客户端可用选项(javascript,HTML5或其他)检查PDF版本,因为我必须确认PDF版本必须为1.3,如果PDF版本为1.3,则只能将其上传到服务器中。

我知道有多种服务器端选项可用于标识pdf版本,但是我希望客户端可用选项,因此,如果不是1.3版,则用户无需再次重新上传整个文件

提前致谢。

您必须使用FileReader API

首先创建一个FileReader并注册一个onload处理程序。

由于PDF的前几个字节应为纯ASCII,因此我们可以将其读取为文本,并且应类似于%PDF-1.3 (其中1.3是版本),因此如果我们得到5到7字节(是的,我知道它说的是file.slice(5, 8)我没有写规范;))。

应该相当直接地加入表单验证。 留给读者练习

警告

这是一个简单的示例,适用于xx版本,但如果不进行修改就无法正确读取x.xx版本。

 const pdfUpload = document.getElementById('pdfUpload'); const pdfVersion = document.getElementById('pdfVersion'); // wait for input to be "changed" pdfUpload.addEventListener('change', (e) => { // grab the selected file let [file] = e.target.files; if (!file) return; // use a FileReader let reader = new FileReader(); reader.onload = (e) => { // read the content let versionString = e.target.result; pdfVersion.innerText = versionString; }; // PDF file should start something like '%PDF-1.3' // grab only the bits we need reader.readAsText(file.slice(5, 8)); }) 
 <input type="file" id="pdfUpload" /> <div>PDF Version: <span id="pdfVersion"></span></div> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM