以上中我没有安装,我是外部直接引入了2个.js文件
时间: 2024-10-27 19:02:59 浏览: 24
如果你已经在外部直接引入了`pdf.js`和`pdf.worker.js`两个JavaScript文件,而不是通过Uni-app的npm管理器安装,那么获取PDF文件的总页数流程会有所不同,但仍遵循类似的原则:
1. 首先,确保这两个脚本已经正确引入并在你的项目全局范围内可用。
2. 初始化PDF.js库,并实例化一个PDFWorker。这通常是通过创建一个新的`PDFJS.PDFWorker`对象完成:
```javascript
const pdfWorker = new PDFJS.PDFWorker();
```
3. 使用`PDFJS.getDocument`函数加载PDF文件,传入你的文件URL:
```javascript
PDFJS.getDocument(urlOfYourPdfFile).promise.then(pdf => {
pdfWorker.send('eval', `PDFJS.getDocument(${JSON.stringify(urlOfYourPdfFile)})`).then(result => {
const doc = result.value;
// 现在doc对象代表PDF文档
});
});
```
4. 当文档加载完成,你可以发送一个`eval`消息到worker,让它执行获取页数的操作:
```javascript
pdfWorker.on('message', (event) => {
if (event.data.name === 'evalResult') {
const { numPages } = event.data.args[0];
console.log('PDF总页数:', numPages);
}
});
```
5. 最后,记得处理可能出现的错误和响应时机。
阅读全文