这是要上传的文档的输入字段
<ion-item>
<ion-input name='File' required type="file" (change)="getNoOfPages($event)"></ion-input>
</ion-item>
这是选择文件后正在调用的函数,正在使用字符串拆分方法查找类型,因为“类型”并不总是包含文件类型信息,我可以使用任何js库查找页数吗?在上传的文档中(在这种情况下为pdf),还是我必须使用任何特定内容才能使其在android上运行?如何 ?
getNoOfPages(event: any) {
const fileInfo = event.target.files[0];
const type = fileInfo.name.split('.')[1];
console.log('document uploaded ', fileInfo);
switch (type) {
case 'docx':
break;
case 'pdf':
console.log('this is a pdf file');
break;
}
}
答案 0 :(得分:1)
您可以使用纯javascript(打字稿语法)解决方案:
const reader = new FileReader();
const fileInfo = event.target.files[0];
if (fileInfo) {
reader.readAsBinaryString(event.target.files[0]);
reader.onloadend = () => {
const count = reader.result.match(/\/Type[\s]*\/Page[^s]/g).length;
console.log('Number of Pages:', count);
}
}
我在许多pdf文档上进行了测试,并且可以正常工作。
-最好的问候。