给pdf添加导航目录
给pdf添加导航目录
我们下载pdf书籍经常需要以下导航功能,没有导航的pdf根本看不下,接下来会分享我添加导航的方法

首先需要下载工具软件,链接:
http://t.cn/Exyss1G
打开软件,点击更改pdf:

在弹出的窗口按顺序操作:

导出完成后存放接口文件的文件夹会有这两个文件:

查看FreePic2Pdf_bkmk.txt。如果原pdf是有目录的,那么这里将有pdf的目录,否则就是空白。
我们用自己的pdf浏览器打开自己的原pdf文件(我用的是Adobe Reader),为方便叙述,我称pdf有标记页码和实际页码,标记页码是写在书上的页码,实际页码是该页在pdf中包括封面在内按顺序排列的页码,对于我下面用来演示的pdf文件,很幸运标记页码和实际的页码是一样的:

我们先给标记页码的第一页加导航目录试试效果,回到之前的FreePic2Pdf_bkmk.txt文件,
键入:1tab1,保存。

再回到以下页面:

弹出导入完成对话框后(注意原pdf文件要关闭掉,否则无法导入完成)再次打开原pdf文件:

已经可以看到导航目录并且可以跳转了,也就是说我们只要编辑好FreePic2Pdf_bkmk.txt文件就好了,tab键之前的内容为要显示的内容,tab键之后的就是实际页码了。但是,翻到书的目录页看看一共有379页,

我们不可能一页一页去键入,可以借助编程工具,笔者用的是Java:

将上面窗口的内容全部复制进FreePic2Pdf_bkmk.txt,同样的操作导入完成后,每个页码都可以跳转了,但是这样光有页码都不知道每页有什么内容,似乎没什么用啊?

我们可以给书中的目录页添加导航,找具体内容就通过目录页指示的页码跳转就好了,实体书也不就是通过看目录找内容嘛。
找到目录所在实体页码:

是英文字母的话,也没关系,编辑FreePic2Pdf_bkmk.txt为:

再次导入就可以看到目录并且可以跳转到目录页了:

这样子添加的导航目录页也可以在其他pdf阅读器看到,比如Chrome里看:

给pdf添加导航目录的更多相关文章
- C#/VB.NET 在Word转PDF时生成目录书签
当我们在转换Word文档到PDF格式时,想保留Word文档的标题作为PDF书签,那么应该如何操作呢?那么本文将以C#及VB.NET代码为例,介绍如何在Word转PDF时生成目录书签.下面是具体方法和步 ...
- C# 给PDF添加图片背景
C# 给PDF添加图片背景 今天要实现的是给PDF文件添加图片背景这个功能.PDF是近年来最流行的文件之一,无论是办公还是日常生活中都经常会用到,很多时候,PDF文件的背景色都是白色,看多了难免觉得累 ...
- wordpress模板学习之导航目录
wordpress的导航目录分为三个部分,一开启,二配置:三使用 开启在functions.php,这个注册会保存在全局变量中,接下来在菜单配置中会看到 register_nav_menu( 'pri ...
- Asp.net MVC 如何向webform一样在IIS里添加虚拟目录
相信很多用webform的程序猿都习惯性的使用虚拟目录的形式来对一个程序添加新的功能,那么在mvc下该如何来弄呢? 首先得有一个项目基层的项目,然后我们在这个项目的基础上新增一个功能模块,例如信息发布 ...
- Android Studio 添加Assets目录
Android Studio 添加Assets目录: 法一: Since Android Studio uses the new Gradle-based build system, you shou ...
- iOS viewController添加导航条以及返回跳转选择
给单独的viewcontroller或者在Appdelegate的主页面添加导航条,只要在viewcontroller上添加navigationcontroller,在添加此navigationcon ...
- .Net程序员学用Oracle系列(1):导航目录
本人从事基于 Oracle 的 .Net 企业级开发近三年,在此之前学习和使用的都是 (MS)SQL Server.未曾系统的了解过 Oracle,所以长时间感到各种不习惯.不方便.怪异和不解,常会遇 ...
- X-003 FriendlyARM tiny4412 uboot移植之添加相应目录文件
X-003 FriendlyARM tiny4412 uboot移植之添加相应目录文件 <<<<<<<<<<<<<< ...
- 【Android Studio安装部署系列】十五、Android studio添加Assets目录
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 Android Studio新建项目时是没有assets目录,需要自己手动创建. app右键——New——Folder——Asset ...
随机推荐
- 【Java基础】While循环详解
循环结构分两大类,一类是当型,一类是直到型. 当型: 当布尔值表达式条件为True时,反复执行某语句,当布尔表达式的值为False时才停止循环,例如:while 与 for循环. 直到型: 先执行某语 ...
- supergridcontrol记录,分页
sqlserver分页记录 select top 50 DengJiBH,sSuoYouQuanShenQingRen,sZuoLuo,sQiuHao,sQuanHao,ChaXun_BianHao, ...
- SpringMVC参数绑定总结
springMvc作用: a) 接收请求中的参数 b) 将处理好的数据返回给页面参数绑定(就是从请求中接收参数): a) 默认支持的类型: request, response, se ...
- sql day2
-- 数据的准备 -- 创建一个数据库 create database python_test charset=utf8; -- 使用一个数据库 use python_test; -- 显示使用的当前 ...
- Tesseract--主要API功能介绍
tesseract本身代码是由c/c++混编而成的,其中有用的简单的接口函数几乎都是在baseapi.h中. 从其处理过程中,不难得出:它还需要有一个image处理的类,及相关的方法:这样子, ...
- tensorflow 如何读取npy文件里的参数
import numpy as npc = np.load( "vgg16.npy" ) #npy的文件名x = c.item() #此时,x的type是一个字典nam ...
- Java反射实现原理分析
目录: 一.反射的用法 二.反射实现原理 一.反射的用法 1.如何获取Class反射类 (1)通过getClass方法: Proxy proxy = new ProxyImpl(); Class pr ...
- c++多态及实现原理
https://www.cnblogs.com/cxq0017/p/6074247.html 通过虚函数实现,普通函数在编译过程中即确定了函数的地址,虚函数的函数地址是在程序运行的时候确定的,有虚函数 ...
- CentOS编译安装软件过程中遇到zlib.h: No such file or directory
使用命令:yum install zlib-devel 解决问题.
- 贝叶斯公式与最大后验估计(MAP)
1, 频率派思想 频率派思想认为概率乃事情发生的频率,概率是一固定常量,是固定不变的 2, 最大似然估计 假设有100个水果由苹果和梨混在一起,具体分配比例未知,于是你去随机抽取10次,抽到苹果标记为 ...