codercwh 2022-09-27 22:49 采纳率: 0%
浏览 180
已结题

vue-pdf组件渲染pdf出现中文不显示,疑似内存问题

最近公司有一些业务需要通过URL渲染出PDF并展示,如果URL中有多张PDF,可以支持PDF滚动预览,所以当时百度了好多的方法,

最后决定使用vue-pdf进行实现。
引入vue-pdf组件后,出现了中文渲染不出来的问题,后来经过多方查找资料,最后换了个组件,使用了vue-pdf-signature,
这个组件应该是从vue-pdf组件中fork的,功能基本一致。后来在代码中对中文不显示做了处理,处理的代码如下图:

img

对应的代码如下:

// 处理PDF显示不全的问题
    pdfTask(pdfUrl) {
      // 传参 CMapReaderFactory
      this.pdfUrl = pdf.createLoadingTask({url: pdfUrl, CMapReaderFactory});
      this.pdfUrl.promise.then(pdf => {
        this.pageCount = pdf.numPages;
      });
      // 加载完PDF后对缓存进行清除
      for (var key in require.cache) {
        if (key.indexOf('bcmap') >= 0) {
          delete require.cache[key];
        }
      }
      return this.pdfUrl;
    },

就是网上经常说的一种解决中文不显示问题的方案。后来也是实现了最开始的功能。再后来,需要将该部分功能打包成一个组件,然后
供其他产品进行调用,目前有很多的产品已经引入组件,但是奇怪的是有的产品引入组件还是中文不显示,但是有些产品就没问题,后来
经过多方查看可能是内存的问题,同时很多的项目反应该组件占用大量的内存。

问题

1、问题1就是如上代码进行处理中文不显示是否会造成内存问题。
2、问题2就是不清楚为什么会出现有的产品引入组件正常,而有的不行,问了公司其他同事,说可能是内存的问题

  • 写回答

7条回答 默认 最新

  • 来灵 2022-09-28 06:17
    关注
    获得3.80元问题酬金

    抓包看下,中文不显示的时候,HTTP请求PDF流收到回应消息了吗?

    评论

报告相同问题?

问题事件

  • 系统已结题 10月5日
  • 创建了问题 9月27日

悬赏问题

  • ¥60 如何批量获取json的url
  • ¥15 对法兰连接元件所承受的表面载荷等效转化为法兰开孔接触面上的等效表面载荷?
  • ¥15 comsol仿真压阻传感器
  • ¥15 Python线性规划函数optimize.linprog求解为整数
  • ¥15 llama3中文版微调
  • ¥15 pg数据库导入数据序列重复
  • ¥15 三分类机器学习模型可视化分析
  • ¥15 本地测试网站127.0.0.1 已拒绝连接,如何解决?(标签-ubuntu)
  • ¥50 Qt在release捕获异常并跟踪堆栈(有Demo,跑一下环境再回答)
  • ¥30 python,LLM 文本提炼