You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vue.js使用vue-pdf加载PDF出现空白页及getHexString警告问题

vue-pdf生产环境预览PDF空白问题

问题详情

在生产服务器上使用vue-pdf预览在线PDF时,页面显示空白,控制台无报错,仅出现以下警告:

pdf.worker.js?069e:1869 Warning: getHexString - ignoring invalid character: 109
2pdf.worker.js?069e:1869 Warning: getHexString - ignoring invalid character: 108
pdf.worker.js?069e:1869 Warning: getHexString - ignoring additional invalid characters.
pdf.worker.js?069e:1869 Warning: getHexString - ignoring invalid character: 104
pdf.worker.js?069e:1869 Warning: Indexing all PDF objects

已按步骤完成vue-pdf的npm安装,代码如下:

<template>
    <div>
        <pdf src="./assets/Manual.pdf"></pdf>
    </div>
</template>

<script>
import pdf from 'vue-pdf'

export default {
    components: {
        pdf,
    },
    data() {
        return {}
    },
}
</script>

问题截图:
PDF预览空白页


解决方法

1. 排查PDF文件有效性

getHexString警告指向PDF文件可能存在编码错误或损坏。先在本地用PDF阅读器打开Manual.pdf,确认文件能否正常显示。若文件损坏,替换为完整无错的PDF文件。

2. 修正资源路径

生产环境中相对路径可能无法被正确解析,尝试两种方式:

  • 将PDF移至public目录,使用绝对路径:
    <pdf src="/Manual.pdf"></pdf>
    
  • 用require引入资源:
    <pdf :src="require('./assets/Manual.pdf')"></pdf>
    

3. 手动指定worker路径

vue-pdf依赖的worker文件在生产环境可能加载异常,手动配置:

import pdf from 'vue-pdf'
import pdfWorker from 'pdfjs-dist/build/pdf.worker.entry'

pdf.GlobalWorkerOptions.workerSrc = pdfWorker

4. 更新依赖库

旧版本的vue-pdf或pdfjs-dist可能存在兼容性问题,执行更新命令:

npm update vue-pdf pdfjs-dist

内容的提问来源于stack exchange,提问作者JS24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 21:50:39