{"id":1558,"date":"2016-01-02T15:24:37","date_gmt":"2016-01-02T23:24:37","guid":{"rendered":"http:\/\/systemsolver.com\/StatlerBlog\/?p=1558"},"modified":"2016-01-02T15:24:37","modified_gmt":"2016-01-02T23:24:37","slug":"pdf-bookmarks-export-to-index","status":"publish","type":"post","link":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/2016\/01\/02\/pdf-bookmarks-export-to-index\/","title":{"rendered":"PDF bookmarks export to index"},"content":{"rendered":"<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">I occasionally need to create an index from the bookmarks of a PDF. Here are the steps\u00a0 I took.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">First I used bates stamping to give my original document page numbers. I use <a href=\"http:\/\/www.tracker-software.com\/product\/pdf-xchange-editor\">PDF-Xchange Editor<\/a> (paid) which includes bates stamping. There are other alternatives to create the page numbering.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Download jpdbookmarks and extract the whole folder (there is no need to install). I just put my extracted folder on the desktop<br \/>\n<a href=\"http:\/\/skylineservers.dl.sourceforge.net\/project\/jpdfbookmarks\/JPdfBookmarks-2.5.2\/jpdfbookmarks-2.5.2.zip\">http:\/\/skylineservers.dl.sourceforge.net\/project\/jpdfbookmarks\/JPdfBookmarks-2.5.2\/jpdfbookmarks-2.5.2.zip<\/a><\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">For MS Windows, run jpdfbookmarks.exe &#8212; for Linux or other see documentation in the folder<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Within jpdbookmarks, open the document that has the bookmarks you want to convert to an index.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">On the menu bar select &lt;Tools\/Dump&gt; which will dump the bookmarks into a text file. Once that is done you can close jpdbookmarks.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Open the resulting text file (I named mine index.txt) in <a href=\"http:\/\/www.scintilla.org\/SciTE.html\">Scite<\/a> (or some other text program that allows regex search and replace).<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">This is an example of one line from the text file:<\/p>\n<p style=\"color: black ! important; padding-left: 30px;\" data-blkn-colour=\"rgba(51,51,51,1)\">Nonprofit Board Governance\/1,Black,notBold,notItalic,open,TopLeftZoom,87,91,0.0<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">The number just after the forward slash is the page number the bookmark would go to. The other information to the right of that is irrelevant for my index.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Within Scite I use the find and replace tool with regular expressions.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">First I replace the forward slash with a tab.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Pay attention to the checked boxes as well as the Find What and Replace with. Click on Replace All.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\"><a href=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-forward-slash.png\" rel=\"attachment wp-att-1559\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1559\" src=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-forward-slash.png\" alt=\"scite replace forward slash\" width=\"678\" height=\"376\" srcset=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-forward-slash.png 678w, https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-forward-slash-300x166.png 300w\" sizes=\"auto, (max-width: 678px) 100vw, 678px\" \/><\/a><\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Next I want to get rid of the extraneous information &#8212; from the comma after the page number to the end of the line.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\"><a href=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-other-info.png\" rel=\"attachment wp-att-1560\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1560\" src=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-other-info.png\" alt=\"scite replace other info\" width=\"678\" height=\"376\" srcset=\"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-other-info.png 678w, https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-content\/uploads\/2016\/01\/scite-replace-other-info-300x166.png 300w\" sizes=\"auto, (max-width: 678px) 100vw, 678px\" \/><\/a><\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">Now I have a nice text file with the bookmark name and the relevant page number.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">I copied the text from Scite, then I went into Libre Writer, pasted, and used a tab stop that included dots (actually, I used the special character elipsis because it has a little more spacing than the default dot). Finished formatting in Writer and then saved as a pdf, inserted that pdf into my original pdf to have an index page.<\/p>\n<p style=\"color: black ! important;\" data-blkn-colour=\"rgba(51,51,51,1)\">-end-<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I occasionally need to create an index from the bookmarks of a PDF. Here are the steps\u00a0 I took. First I used bates stamping to give my original document page numbers. I use PDF-Xchange Editor (paid) which includes bates stamping. There are other alternatives to create the page numbering. Download jpdbookmarks and extract the whole [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4,6],"tags":[],"class_list":["post-1558","post","type-post","status-publish","format-standard","hentry","category-general","category-linux"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/posts\/1558","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/comments?post=1558"}],"version-history":[{"count":0,"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/posts\/1558\/revisions"}],"wp:attachment":[{"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/media?parent=1558"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/categories?post=1558"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/systemsolver.goodhealthyday.com\/StatlerBlog\/wp-json\/wp\/v2\/tags?post=1558"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}