如何将PDFium的渲染功能应用于处理?

摘要:PDFium 是 Chromium 的 PDF 渲染引擎,许可协议为 BSD 3-Clause。不同于 Mozilla 基于 HTML5 的 PDF.js,PDFium 是基于 Foxit Software (福昕软件)的渲染代码,Goog
PDFium 是 Chromium 的 PDF 渲染引擎,许可协议为 BSD 3-Clause。不同于 Mozilla 基于 HTML5 的 PDF.js,PDFium 是基于 Foxit Software (福昕软件)的渲染代码,Google 与其合作开源出的。 此外,Qt PDF 模块也选用了 PDFium ,可见 QtWebEngine / QtPdf。 本文将介绍如何用 PDFium 实现一个简单的 PDF 阅读器,代码见:https://github.com/ikuokuo/pdfium-reader 。 编译 PDFium 使用预编译库:https://github.com/bblanchon/pdfium-binaries 不然,参考 PDFium / README 自己编译,实践步骤如下: # get depot_tools, contains: gclient, ninja, gn, ... git clone --depth 1 https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH="$PATH:$HOME/Codes/Star/depot_tools" # get pdfium cd pdfium-reader/ mkdir -p third_party/chromium cd third_party/chromium gclient config --unmanaged https://pdfium.googlesource.com/pdfium.git gclient sync cd pdfium # get deps # on linux, install additional build dependencies ./build/install-build-deps.sh # gn config # args see the following `out/Release/args.gn` gn args out/Release # ninja build # pdfium ninja -C out/Release pdfium # pdfium_test ninja -C out/Release pdfium_test # run sample: pdf > ppm ./out/Release/pdfium_test --ppm path/to/myfile.pdf 期间 out/Release/args.gn 内容如下: use_goma = false # Googlers only. Make sure goma is installed and running first. is_debug = false # Enable debugging features. # Set true to enable experimental Skia backend. pdf_use_skia = false # Set true to enable experimental Skia backend (paths only). pdf_use_skia_paths = false pdf_enable_xfa = false # Set false to remove XFA support (implies JS support). pdf_enable_v8 = false # Set false to remove Javascript support. pdf_is_standalone = true # Set for a non-embedded build. pdf_is_complete_lib = true # Set for a static library build. is_component_build = false # Disable component build (Though it should work) 使用 PDFium 阅读 PDFium / Getting Started,了解如何初始化 PDFium 及载入文档。
阅读全文