成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用 pdftk 為 PDF 文檔創建書簽

系統
在 介紹 pdftk-java 中, 我展示了如何在腳本中使用 pdftk-java 來快速修改 PDF 文件。

充分利用現有的技術,提供書簽以幫助用戶。

在 介紹 pdftk-java 中, 我展示了如何在腳本中使用 pdftk-java 來快速修改 PDF 文件。

但是,pdftk-java 最有用的場景是處理那種動輒幾百頁的沒有目錄的大 PDF 文件。這里所謂的目錄不是指文檔前面供打印的目錄,而是指顯示在 PDF 閱讀器側邊欄里的目錄,它在 PDF 格式中的正式叫法是“書簽bookmarks”。

Screenshot of a sidebar table of contents next to a PDFScreenshot of a sidebar table of contents next to a PDF

Screenshot of a sidebar table of contents next to a PDF

如果沒有書簽,就只能通過上下滾動或全局搜索文本來定位想要的章節,這非常麻煩。

PDF 文件的另一個惱人的小問題是缺乏元數據,比如標題和作者。如果你打開過一個標題欄上顯示類似 “Microsoft Word - 04_Classics_Revisited.docx” 的 PDF 文件,你就能體會那種感覺了。

pdftk-java 讓我能夠創建自己的書簽,我再也不面對這些問題了。

在 Linux 上安裝 pdftk-java

正如 pdftk-java 的名稱所示的,它是用 Java 編寫的。它能夠在所有主流操作系統上運行,只要你安裝了 Java。

Linux 和 macOS 用戶可以從 AdoptOpenJDK.net 安裝 Java(LCTT 譯注:原文為 Linux,應為筆誤)。

Windows 用戶可以安裝 Red Hat's Windows build of OpenJDK

在 Linux 上安裝 pdftk-java:

  1. 從 Gitlab 倉庫下載 pdftk-all.jar release,保存至 ~/.local/bin/ 或 其它路徑 下.
  2. 用文本編輯器打開 ~/.bashrc,添加 alias pdftk='java -jar $HOME/.local/bin/pdftk-all.jar'
  3. 運行 source ~/.bashrc 使新的 Bash 設置生效。

數據轉儲

修改元數據的第一步是抽取 PDF 當前的數據文件。

現在的數據文件可能并沒包含多少內容,但這也是一個不錯的開端。

$ pdftk mybigfile.pdf \
  data_dump \
  output bookmarks.txt

生成的 bookmarks.txt 文件中包含了輸入 PDF 文件 mybigfile.pdf 的所有元數據和一大堆無用數據。

編輯元數據

用文本編輯器(比如 Atom 或 Gedit)打開 bookmarks.txt 以編輯 PDF 元數據。

元數據的格式和數據項直觀易懂:

InfoBegin
InfoKey: Creator
InfoValue: Word
InfoBegin
InfoKey: ModDate
InfoValue: D:20151221203353Z00'00'
InfoBegin
InfoKey: CreationDate
InfoValue: D:20151221203353Z00'00'
InfoBegin
InfoKey: Producer
InfoValue: Mac OS X 10.10.4 Quartz PDFContext
InfoBegin
InfoKey: Title
InfoValue: Microsoft Word - 04_UA_Classics_Revisited.docx
PdfID0: f049e63eaf3b4061ddad16b455ca780f
PdfID1: f049e63eaf3b4061ddad16b455ca780f
NumberOfPages: 42
PageMediaBegin
PageMediaNumber: 1
PageMediaRotation: 0
PageMediaRect: 0 0 612 792
PageMediaDimensions: 612 792
[...]

你可以將 InfoValue 的值修改為對當前 PDF 有意義的內容。比如可以將 Creator 字段從 Word 修改為實際的作者或出版社名稱。比起使用導出程序自動生成的標題,使用書籍的實際標題會更好。

你也可以做一些清理工作。在 NumberOfPages 之后的行都不是必需的,可以刪除這些行的內容。

添加書簽

PDF 書簽的格式如下:

BookmarkBegin
BookmarkTitle: My first bookmark
BookmarkLevel: 1
BookmarkPageNumber: 2
  • BookmarkBegin 表示這是一個書簽。
  • BookmarkTitle 書簽在 PDF 閱讀器中顯示的文本。
  • BookmarkLevel 書簽層級。如果書簽層級為 2,它將出現在上一個書簽的小三角下。如果設置為 3,它會顯示在上一個 2 級書簽的小三角下。這讓你能為章以及其中的節設置書簽。
  • BookmarkPageNumber 點擊書簽時轉到的頁碼。

為你需要的章節創建書簽,然后保存文件。

更新書簽信息

現在已經準備好了元數據和書簽,你可以將它們導入到 PDF 文件中。實際上是將這些信息導入到一個新的 PDF 文件中,它的內容與原 PDF 文件相同:

$ pdftk mybigfile.pdf \
  update_info bookmarks.txt \
  output mynewfile.pdf

生成的 mynewfile.pdf 包含了你設置的全部元數據和書簽。

體現專業性

PDF 文件中是否包含定制化的元數據和書簽可能并不會影響銷售。

但是,關注元數據可以向用戶表明你重視質量保證。增加書簽可以為用戶提供便利,同時亦是充分利用現有技術。

使用 pdftk-java 來簡化這個過程,用戶會感激不盡。

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2009-11-25 09:57:17

PHPPDF

2023-02-26 10:16:19

JavaPDF文檔

2021-12-27 14:20:45

Linux Linux命令

2019-08-15 15:00:31

Linux命令行PDF

2022-08-23 14:13:36

LaTeX標記語言

2011-08-31 13:55:38

PDF去水印

2023-12-19 22:44:45

PythonPDFExcel

2012-10-24 14:54:15

IBMdw

2015-07-09 15:16:47

2012-07-19 09:38:04

Office 2013

2009-09-16 15:53:49

Linq創建xml文檔

2021-09-15 07:33:33

Java開發在線

2020-09-01 20:53:26

DocsifyGitHub Page文檔網站

2009-12-11 09:44:18

PHP創建PPT文檔

2009-08-24 17:24:28

C#創建XML文檔

2024-07-29 08:30:24

2009-04-03 13:45:29

JavaiTextPDF

2024-01-22 10:31:09

Kate文檔

2009-07-22 16:44:06

2023-12-13 12:27:46

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久丝袜| 久久久久国产成人精品亚洲午夜 | 中国黄色毛片视频 | 成人区精品| 国产福利视频 | 免费看黄色小视频 | 三级视频在线观看电影 | 一区二区三区不卡视频 | 91视频中文 | 亚洲激情在线观看 | xxx.在线观看 | 91久久久精品国产一区二区蜜臀 | 亚洲国产成人精品女人久久久 | h在线播放| 欧美三级在线 | 91成人午夜性a一级毛片 | 亚洲成人黄色 | 色黄爽 | 欧美13videosex性极品 | 久久高清精品 | 国产精品亚洲一区二区三区在线 | 成人精品一区亚洲午夜久久久 | 色在线免费视频 | 成年无码av片在线 | 久久国| 国产欧美一区二区久久性色99 | 91成人| 亚洲久久久 | 99精品国自产在线 | 成人欧美一区二区三区在线播放 | 日韩中文字幕在线观看 | 亚洲综合色网 | 一区在线观看视频 | 国产伦精品一区二区三区精品视频 | 久久久.com| 国产中文字幕av | 国产一区二区三区精品久久久 | 日韩一区精品 | 伦理午夜电影免费观看 | 久久久资源 | 婷婷激情综合 |