Hexo中展示PDF文档

简介

在网站中展示PDF是一个不错的主意,对于含有大量数学公式,使用LaTeX 排版的数学文档可以直接以这种方式展出,并提供下载。

Next 主题官网中,知其支持PDF文档,查阅了很多文档,都没有把问题说清楚,故开此文,一则说明原理,二则准备发布关于manjaro的安装配置文档。

开启PDF功能

配置文件位置为~/文档/hexo/themes/next/_config.yml ,修改如下

1
2
3
4
5
6
7
8
# PDF tag
# NexT will try to load pdf files natively, if failed, pdf.js will be used.
# So, you have to install the dependency of pdf.js if you want to use pdf tag and make it available to all browsers.
# Dependencies: https://github.com/next-theme/theme-next-pdf
pdf:
enable: true
# Default height
height: 500px

如果插件没有安装,则按照配置文件中说明,从next-pdf官网对照说明安装即可。

插入PDF文件

~/文档/hexo/source/ 中新建一个文件夹 PDF 用以存放插入到文件中的PDF文档。在需要插入PDF文件的地方使用pdf标签即可,这里需要注意,有两种方式来插入pdf文件:

  1. 使用外链的方式插入
1
{% pdf https://cdn.jsdelivr.net/gh/Justlovesmile/CDN/pdf/小作文讲义.pdf %}

上述地址,也是我的参考一篇文档HEXO竟然可以展示PDF 中引用。

  1. 使用内链

这个方式,正是许多网络文档解释不清楚的地方。在使用hexo g 命令构建网页时,它会将source中的PDF文件夹复制到public文件夹中,在填写PDF路径进应当是认为public主根目录,实际上我们发布的网站就是public中的所有文件。因此,我发布的manjaro.pdf 放置于source/PDF/ 中,则文章中应当如下引用

1
{% pdf /PDF/manjaro.pdf %}

注意:在最初的引用时,我填写了具体的链接地址,当时是理解上存在问题。填写具体地址,虽然可以正常显示,但是在部署到不同的网站时由于域名不同,则新的部署将不能正常显示PDF文件。而source/PDF/ 这个路径直接认为source为根目录,在使用hexo g生成博客时,会自动将此地址转换到加上域名的引用。所以这是一个最佳方案。由于网络上的文章./PDF/manjaro.pdf的写法是不对的,这也是之前一直没有成功的原因,2021年7月13日,对本文进行了修正,写成如上格式才是对的。

  1. 嵌入manjaro.pdf文件展示