快轉到主要內容

在Hugo生成的靜態網頁內嵌入PDF,渲染為PNG圖片

· 民國111年壬寅年
·
切換繁體/簡體 ·
分類 資訊科技 Hugo網站架設
標籤 Hugo
目錄

雖然說是嵌入,但並不是檔案檢視器,而是把PDF即時渲染成左右翻頁的靜態圖片,如圖:

如果要真的在網頁嵌入PDF,Google Drive的PDF元件應該是最方便的了,不過手機瀏覽的話會變成下載PDF。而渲染成圖片的話,讀者可以直接在網站上讀。

1. 安裝
#

  1. 複製anvithks的儲存庫
git clone https://github.com/anvithks/hugo-embed-pdf-shortcode.git
cd hugo-embed-pdf-shortcode
  1. /layouts/shortcodes/embed-pdf.html複製到你的網站目錄/layouts/shortcodes。如果shortcodes目錄不存在,就自行新建。

  2. /static/js/pdf-js複製到你的網站目錄/staic/js目錄下。

  3. 根據Github回報,這個shortcode有小bug,因此要開啟你的網站目錄/layouts/shortcodes/embed-pdf.html,將第一行改成:

<script src= '/js/pdf-js/build/pdf.js'></script>

2. 使用
#

  1. 在撰寫Markdown文章時,在檔案內插入以下語法(最前面的二個大括號中間沒有空格):
{ {< embed-pdf url="pdf路徑" >}}
  1. 假設pdf檔案位於你的網站目錄/static/file/example.pdf,那麼引用pdf時要填寫相對路徑:
{ {< embed-pdf url="/file/example.pdf" >}}
  1. 尚有參數可調整,例如隱藏分頁:
{ {< embed-pdf url="./path/to/pdf/file/example.pdf" hidePaginator="true" >}}
  1. 只渲染特定頁面:
{ {< embed-pdf url="./path/to/pdf/file/example.pdf" renderPageNum="5" >}}
  1. 隱藏載入的圖示:
{ {< embed-pdf url="./path/to/pdf/file/example.pdf" hideLoader="true" >}}

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。