使用react-pdf或jspdf后文件中的部分文字和签名无法展示

1,665 阅读1分钟
1、解决部分文字无法展示的问题

网上噼里啪啦搜索了一番大致知道应该是字体的问题导致预览pdf的时候部分文字无法展示 可以在option配置cmap

    import { Document, Page } from 'react-pdf/dist/esm/entry.webpack';
        <Document
            file={pdfUrl}
            onLoadSuccess={onLoadSuccess}
            options={{// 解决预览部分字体不展示问题
                cMapUrl: 'https://cdn.jsdelivr.net/npm/pdfjs-dist@2.7.570/cmaps/',
                cMapPacked: true,
                disableWorker: true,
            }}
         >
                  <Page
                    width={500}
                    height={450}
                    pageNumber={pageNumber}
                  />
          </Document>

react-pdf 最终使用的还是jspdf 截屏2021-04-14 下午5.35.36.png

2、解决签名无法展示问题

需要在node_modules/pdfjs-dist/build/pdf.worker.js 文件内注释以下代码

    // if (data.fieldType === "Sig") {
    //   data.fieldValue = null;
    //   this.setFlags(_util.AnnotationFlag.HIDDEN);
    // }

修改odfjs源码使用的 patches-package