Such as the wind 2022-09-27 22:49 采纳率: 0%
浏览 116
已结题

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条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

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

      悬赏问题

      • ¥15 Java的运用111111111111
      • ¥15 koa2 + ts 声明文件不生效
      • ¥15 Mac系统word显示此文档已被删除或当前无法访问.
      • ¥15 Unity用代码实现Tilemap
      • ¥15 怎么求广播地址以及网络地址?
      • ¥15 想知道unity如何实现物体贴地运动
      • ¥15 从A地到B地有多条路径可以到达,现要从A地到B地运物资问题
      • ¥30 用java设计小游戏扑克牌比大小,52张牌的图片选世界篮球明星图或其它都行
      • ¥15 ATM管理员功能代码及解释
      • ¥15 EasyExcel导出下载文件响应流为空