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

PDF Explained(翻译)第六章 文本和字体

文本字符串第一个字形的原点位于文本空间的原点。 有两种矩阵: 文本矩阵(Tm):定义了下一个字形的变换方式。可以通过文本定位操作符和文本显示操作符进行修改。...定义和嵌入字体 字体是特定字符集的字形(字符形状)的集合。...在PDF字体字体字典组成, 字典定义了度量,字符集和编码(将文本字符串的字符代码映射到字体的字符),以及字体程序(实际的字体文件)。...该字体共有256个字符,/Widths数组为每个字符提供宽度值。 字体编码 字体编码描述字符编码(内容流字符串的字符)和字体字形描述之间的映射。...我们需要如下步骤: 提取字体文件的各种细节–这些细节用于填写字体字典,字体度量和字体编码字典。 如果字体格式允许,则从相关字体文件删除这些细节,只留下字形描述–所有这些信息现在都在字体字典

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

java 利用 pdfbox 实现PDF转为图片

1.引用jar包 org.apache.pdfbox pdfbox...; import org.apache.pdfbox.rendering.ImageType; import org.apache.pdfbox.rendering.PDFRenderer; import...,改为取项目里的字体文件(使用 pdfbox 转图片时的方法,使用 icepdf 请自行研究) * 2.如果后续遇到乱码的问题,查看日志看看缺少什么字体,然后将字体文件上传到项目的 src/main...想想还是研究研究 pdfbox 的源码吧,分析后发现它是根据不同系统来读取字体的文件夹的,然后一个同事建议我重写读写 Linux 系统文件的类,指向我们项目的文件夹,然后在项目新建一个文件夹来存放需要的字体...需要注意的是,后面如果pdf有用到新的字体,就需要将对应的字体下载下来,放到该目录下。

3.5K10

PDF字体简介

PDF字体概述 PDF的文本可以是任何字体。...所有的PDF查看器都必须支持5种字体(Times, Helvetica, Courier, Symbol and ZapfDingbats),这些字体可以在任何文档中直接使用。...如果想使用其它字体,有如下三种方法: 1) 只指明字体的名子。 如果使用者的设备上没有字体,则会使用标准字体显示。 2) 内嵌字体 当整个字体文件放入PDF文件。...PDF字体技术 PDF可以使用不同的字体技术。本文将对PDF文档中所用到的主要的字体技术进行简要阐述。 Adobe有两种字体类型: Type3和Type1。...微软没有采用上述技术方案(大概是不想给Adobe交版税),于是它和苹果一起研发了一种新的字体技术–TrueType。它的核心思想与Type1类似,但与Type1完全不兼容。

1.7K20

Web 中文字体性能优化实践

但无论哪种预览方式,也仅仅会使用到该字体的少量字符,因此全量加载字体没有必要的,所以我们需要对字体文件做精简。...}) 实际上的精简并没有这么简单,因为一个字体文件由许多表(table)构成,这些表之间是存在关联的,例如 maxp 表记录了字形数量,loca 表存储了字形位置的偏移量。...表字形的数量、位置以及大小信息呢?...在字体的定义,轮廓是由一个个位置点构成的,并且每个位置点具有编号,这些编号从0开始按升序排列。因此我们读取指定的字形就是读取 Glyph Headers 的各项值以及轮廓的位置点坐标。...(别忘了在 @font-face 插入页面后才会去真正请求字体),并且截取字形和上传 CDN 这两步时间消耗也比较长,有没有更好的办法呢?

1.9K10

为何选择iText?java PDF开源库选择与iText发展历史

PDF Box 1958 PDFBox是一个Apache开源的x项目。可以操作PDF文档的Java PDF类库。它可以创建一个新PDF文档,操作现有PDF文档并提取文档的内容。...-1b标准 使用标准Java打印API打印PDF文档 另存为图片文件,如PNG、JPEG 使用内嵌字体和图片从头创建PDF 电子签名PDF文件 iText: PDFBox里面的特性iText都有 iText...开发者的福音) 自动化的文档处理,例如从XML,HTML,web表单,CSS或者数据库转换成PDF 文档更加安全 丰富的插件,各个插件对于一个开源项目,可以访问iText GitHub 能方便地加入你的数据处理,...: 暂时只有官网提供少量资料,没有系统地阐述架构 样例有限 没有相应的官方论坛 还有很多bug需要大家一起努力 因为我自己本身没有用过PDFBox,也不能亲自作出比较,不过可以参考一些网友的体验,听说对中文的支持不是特别好...或者没有大力推广呢?其实主要是碍于它的许可协议APGL,这个什么许可协议呢?

5.8K30

动态 | 伯克利最新研究:GANs在字体风格迁移上的应用

AI科技评论按:怎样能快速生成风格相同的字体呢?伯克利 AI 研究院最新发表的一篇博客告诉你他们最新的研究。 左:给出的电影海报,右:由MC-GAN生成的新电影片名 文字是平面设计很突出的视觉元素。...字形合成的早期研究主要集中在轮廓的几何建模上,限于特定的字形拓扑(例如,不能应用于装饰性文字或手写字形),不能用于图像输入。随着深度神经网络的兴起,研究人员已经研究了从图像建模字形的方法。...此外,与局部观察一致的人工合成数据是计算机视觉和图形的一个有趣问题,例如多视图图像生成,完成图像的缺失区域以及生成 3D 形状。字体数据就是一个提供了纯净的风格和内容的因式分解示例。...例如,鉴于以下五个字母: 有条件生成对抗网络模型在生成具有相同样式的 26 个字母中表现的并不成功: 适用于少数字体样式转换的多内容生成对抗网络 我们没有为所有可能的字体训练单一网络,而是设计了多内容的...OrnaNet 的多个正规化处理程式化字母的掩码与相应字形的偏差。 结果 下面,我们演示使用单个词给出的字体样式的示例句子。

90660

mac字体设计编辑Glyphs 3 for Mac

字形可以导出图层字体,Microsoft风格的颜色网页字体或Apple风格的表情符号字体。...6.插值解开最多三个轴,任意数量的字体母版,独立图层,基于字形的替代和中级母版:您可以在字形完成所有操作。轻松切换主人,控制大纲兼容性和风格链接,并一次性生成一个完整的家庭。...7.标记附件是正确的没有更多的时间消耗功能代码:雕文可以自动为您创建标记附件功能,甚至插入位置。8.完全控制批处理自定义参数允许您精确地控制在生产阶段发生的情况。...你总是在你的设计文件工作,保持重叠,而Glyphs负责其余部分,使用你的参数来构建可安装的字体文件。9.激进分子重新思考重新出现在其他字形的字母部分或CJK部首可以使用智能组件进行内插。...10.采取一个提示使用内置自动调整功能改善字体的屏幕外观。或者手动将PostScript提示和TrueType指令挂接到轮廓上。在多个主文件,第一个主文件的提示会自动复制到兼容的主文件

73420

字体加密 | 字体加密初认识

首先我们应该先了解一下什么是字体加密。 什么是字体加密? 网页字体是一个字形集合,而每个字形是描述字母或符号的矢量形状。...因此,特定字体文件的大小由两个简单变量决定:每个字形矢量路径的复杂程度和特定字体字形的数量。...通俗一点,同一内容的网页字体每个字形应该都是大同小异的,我们可以通过比对字体文件的字形来确认映射的内容。 关于字体加密的描述文章实在太多了,个人建议还是看看 Google 官方关于网页字体的文章。...如何处理字体加密? 通过上面的字体加密原理图,我们大概了解到字体加密的原理。 我推荐没有搞过字体加密的朋友找个比较简单的网站练手,网上写的比较多的例子是猫眼的专业版。...猫眼的字体解密文章非常多,建议没有接触过得朋友可以先自己动手试试,咸鱼也会在之后更新字体解密系列的文章。

6.2K51

Unity-Optimizing Unity UI(UGUI优化)04 UI Controls

在Unity组件的文本经根据使用字符进行创建图集。 每个不同Font对象将保留自己的纹理图集,即使它与另一种字体在同一字体系列。...如果两个组件使用不同的大小,那么字体图集将包含两个'A' 如果两个'A'一个加粗了,一个没有加粗 每当有UI Text对象遇到未光栅化的字体纹理图集时,字体纹理图集必须被重建。...在触发图集重建的时候,当前没有活动的UI Text组件的字符将不会出现在新图集中,即使它们通过Font.RequestCharacterInTexture加入到了新图集。...任何在fonts lsit中将加载到内存,如果首选字体没有,将在备用字体在FontName查找。...如果字体资源被TMP组件引用,并且没有通过TMP Setting加载,那么被引用的字体资源及其全部备用字体资源会在TMP组件被激活时加载。

3.4K20

PDF转Word完全指南:3大方法满足各种场景!

PDF转Word就是把PDF文档的文字,图片,表格,注释等等文档元素相对应的转换成Word文档相对应的文档元素。...,因此你就能重复利用你的PDF文档内容,在Word再编辑或者重整布局。...纯文本+图片类型的上面的示例就是纯文本+图片格式的,转换效果还是不错的,字体大小、颜色、布局、图片位置等,基本无差别的2.带有简单表格的PDF文档怎么样,效果还是不错的吧,完美还原了表格,100%可编辑...开源类库pdfbox Java类库PDFBox是一个BSD许可下的源码开放项目,为开发人员读取和创建PDF文档而准备的纯Java类库。...地址在 https://pdfbox.apache.org/ 社区比较活跃,更新速度较快代码示例import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.text.PDFTextStripper

4.3K40

Python爬虫实例:爬取猫眼电影——破解字体反爬

字体反爬 字体反爬也就是自定义字体反爬,通过调用自定义的字体文件来渲染网页的文字,而网页的文字不再是文字,而是相应的字体编码,通过复制或者简单的采集是无法采集到编码后的文字内容的。...实际上,整个字体文件没有任何地方是说明 EA0B 对应的真实值是啥的。...爬虫爬取的时候,下载字体文件,根据网页源码的编码,在字体文件中找到“字形”,再循环跟 base.woff 文件的“字形”做比较,“字形”一样那就说明是同一个字了。...这里的前提是每个字体文件中所定义的“字形”都是一样的(猫眼目前是这样的,以后也许还会更改策略),如果更复杂一点,每个字体的“字形”都加一点点的随机形变,那这个方法就没有用了,只能祭出杀手锏“OCR”了...下面是完整的代码,抓取的是猫眼2018年电影的第一页,由于主要是演示破解字体反爬,所以没有抓取全部的数据。

1.2K10

一次让字体看起来更像手写体的尝试

(其实实际并不是等宽,我还没有想好如何在 iFontMaker 制作一个实际的等宽字体) image.png 目标:在字体上做更多的字符变化 在上面的截图中,很明显可以看出这是一种字体,而不是实际的笔迹...有一个 Python 库叫 fonttools,这 5 行代码会把放在 rules.fea 的 OpenType 规则列表应用到字体文件 input.ttf 。...ttx 可以将 TTF 字体转换为 XML 文件,这对我很有用,因为我想重新命名我的字体的一些字形,但我对字体一无所知。...fonttools merge 可以让我把我的 3 个手写字体合并成 1 个,这样我就在 1 个文件得到了我需要的所有字形。 代码 我把我的极潦草的代码放在一个叫 font-mixer 的存储库里。...不过我还是不知道如何做出更逼真的手写字体:)。我现在还在用旧的那个字体没有额外的变化),我对它很满意。

91720

深度 | BAIR提出MC-GAN,使用GAN实现字体风格迁移

文本是二维设计的一个显著视觉元素。艺术家投入了大量时间设计在视觉上与其他元素的形状和纹理相兼容的字形。...早期字形合成研究集中在轮廓的几何建模上,局限于特定的字形拓扑上(例如,不能应用到装饰字体或者手写体),并且不能与图像输入一起使用。随着深度神经网络的兴起,研究者研究了从图像进行字形建模的问题。...字体数据是一个典型的例子,它提供了文字样式和内容的清晰分解。 条件生成对抗网络(cGANS)[1] 的最新进展在许多生成应用取得了成功。...GlyphNet 的输入和输出是字形的堆栈,其中每个字母分配有一个通道。在每个训练迭代,x_1 包含一个由 y_1 字形组成的随机子集,剩余输入通道被清零。 ?...OrnaNet 的输入和输出是批量的 RGB 图像,而不是堆栈(其中每个字母的 RGB 信道是其对应的灰度字形的重复)。OrnaNet 的多个正则化器会惩罚风格化字母掩膜与其对应字形形状的偏差。

1.3K70
领券