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

如何使用iText7确定Type3PDF字体的实际字体名称?

iText7是一款流行的Java库,用于处理PDF文件。在iText7中,要确定Type3PDF字体的实际字体名称,可以通过以下步骤:

  1. 导入iText7库:首先,确保你的项目中已经导入了iText7库。你可以从iText官方网站下载并添加到你的项目中。
  2. 创建PdfFont对象:使用iText7的PdfFont类,创建一个PdfFont对象来表示Type3字体。可以使用PdfFontFactory.createFont()方法来加载字体文件。
  3. 获取字体名称:通过调用getFontProgram()方法获取字体程序,并使用getFontNames()方法获取字体名称。这将返回一个包含字体名称的字典。

以下是一个示例代码,演示如何使用iText7确定Type3PDF字体的实际字体名称:

代码语言:txt
复制
import com.itextpdf.io.font.PdfFont;
import com.itextpdf.io.font.PdfFontFactory;
import com.itextpdf.io.font.PdfFontProgram;
import com.itextpdf.io.font.PdfFontProperty;
import java.io.IOException;

public class Type3FontExample {
    public static void main(String[] args) {
        try {
            // 加载Type3字体文件
            PdfFont font = PdfFontFactory.createFont("path/to/type3font.ttf", PdfFontFactory.EmbeddingStrategy.PREFER_EMBEDDED);

            // 获取字体程序
            PdfFontProgram fontProgram = font.getFontProgram();

            // 获取字体名称
            String fontName = fontProgram.getFontNames().getFontName();

            System.out.println("Type3字体的实际字体名称是:" + fontName);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在这个示例中,你需要将"path/to/type3font.ttf"替换为你实际的Type3字体文件路径。运行代码后,你将获得Type3字体的实际字体名称。

对于Type3PDF字体的应用场景,它通常用于自定义字体的需求,例如在PDF文档中使用特定的图形或符号作为字体。Type3字体允许用户定义自己的字形,因此在一些特殊的排版需求中非常有用。

腾讯云提供了一系列与PDF处理相关的产品和服务,例如腾讯云云函数(SCF)和腾讯云COS(对象存储)。你可以使用腾讯云云函数来托管和运行你的iText7代码,而腾讯云COS则可以用于存储和管理生成的PDF文件。你可以访问腾讯云官方网站了解更多关于这些产品的详细信息和使用指南。

请注意,本回答中没有提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用python找到PDF文件文本位置、字体大小、字体名称字体颜色

看了https://cloud.tencent.com/developer/ask/sof/1162044,需要获得pdf文件段落字体大小。...正好在做这方面的工作,还是使用fitz,就可以获得字体大小具体思路是:现将pdf转换成html,在使用bs4解析html具体代码如下:pdf2html:将pdf转换成html,这一步在转换时,有时会丢失一些字体信息...pdf2list:调用pdf2html现将pdf转换成html,在使用BeautifulSoup对html进行解析。...节点,并读取取style属性,主要包括字体名称字体大小、字体颜色,是否加粗pdf2html没有提取到。...,则删除,在增加,保持最后字体样子,后续判断要用到字体大小 pspansstyles.remove(pspansstyle)

3K40

itext7史上最全实战总结

每画一行都要新起一行 同样table内容需要居中,和段落一样,请设置new Cell().setTextAlignment(TextAlignment.CENTER) 每个table中cell都有默认高度,会比实际输入字体高些...Tab,\t itext7中如果要表示段落前空格,不能使用\t,但换行可以使用\n 若要实现Tab效果可以有多个方法 \u00a0符号,大概7、8个该符号可表示tab,可能不是很准确 p1...这种需求我们如何实现呢?思路分析发现,我们需要知道什么时候文章内容一页写不起了,换了一页时候我们需要添加一个同样页眉。...先说下遇到困难,目录顾明思意,必须要有内容才会有目录,所以实际上目录是最后添加,但如果我们添加内容到最后再跳转到前面的页面来添加目录,有三个问题: 目录有几页如何知道?...由于目录不确定,所以后续内容页码其实也是不确定,也就是说页码也不是一页页可以添加过去 而经过实践你会发现,我们不能够回到前几页去修改已存在页面,因为会提示你已经flush了,不能修改。

6.6K31

如何在 WordPress 主题中使用本地托管 Google 字体

前面我们介绍 WordPress 官方要求主题作者切换到本地托管字体,今天简单说说如何实现在本地托管 Google 字体。...WordPress 主题外部资源规则 一直以来,w.org/themes 上存储托管主题,一直不允许使用第三方资源,包括第三方图片,JavaScript 脚本文件,CSS 样式文件,网络字体以及其他资源...但是这条规则唯一例外就是 Google 字体,因为当时没有可靠方法来实现本地托管网络字体,而排版又是主题设计中一个重要组成部分。...但是由于 GDPR 和隐私方面以及之前案例影响,Google 字体不再被视为本指南例外。...如何本地托管 Google 字体 WordPress 官方主题团队在很早之前就在 Github 发布了一段脚本教大家如何本地托管 Google 网络字体

62220

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

转眼间,我写iText7系列已经有一年多了,还记得最开始时候是因为兴趣才翻译iText,不过随着慢慢翻译文章才发现iText强大之处,最近也是调研了整个java PDF开源库生态圈...2. java PDF开源库 2.1 各方开源库 其实就PDF SDK而言,有很多免费开源软件,我们列举一下参考资料3里面列举出开源类库(估计有点老了,但是还是很有参考价值): 名称 点击次数...-1b标准 使用标准Java打印API打印PDF文档 另存为图片文件,如PNG、JPEG 使用内嵌字体和图片从头创建PDF 电子签名PDF文件 iText: PDFBox里面的特性iText都有 iText...,公司收入用于修复bug,标准化和提高性能 iText 7.x(2016-现在) 完全重写,重点关注可扩展性和模块化 不适用iTextSharp这个名称,都统称为iText,有Java和.Net版本...3.3 iText7及各个插件版本 iText7有很多插件,能帮助我们完成各种功能,具体版本号如下: 图4. iText7及各个插件版本 4.

5.8K30

手把手教你使用Java开发在线生成pdf文档

一、介绍 在实际业务开发时候,研发人员往往会碰到很多这样一些场景,需要提供相关电子凭证信息给用户,例如网银/支付宝/微信购物支付电子发票、订单库存打印单、各种电子签署合同等等,以方便用户查看...iText目前有两套版本,分别是iText5和iText7。iText5应该是网上用比较多一个版本。iText5因为是很多开发者参与贡献代码,因此在一些规范和设计上存在不合理地方。...iText7是后来官方针对iText5重构,两个版本差别还是挺大。不过在实际使用中,一般用到都比较简单 API,所以不用特别拘泥于使用哪个版本。...我们应该如何快速实现呢?...但是在实际业务开发时候,例如下面的商品内容,完全是动态,还是xxx-202109入库单名称,以及二维码,都是动态

1.9K20

iOS在应用中添加自定义字体

iOS在应用中添加自定义字体 一、在应用中添加自定义字体步骤 1、网上提供字体库有很多,下载完成后,将其导入工程中,一般为ttf格式。...4、这时实际上我们已经将字体添加进了工程中,但是在在使用这个字体时,字体名字有时和文件名是不一样,我们需要知道真实字体名称,通常情况下,我们会讲所有字体名称打印出来:     for (NSString...,如下使用即可:  UIFont * font = [UIFont fontWithName:@"yuweij" size:14]; 二、如何快速找到新添加字体名字         如果你将所有字体都打印了出来...,在其中找到新字体名称是身份困难,尤其是当这个字体名称和文件名相差甚远时候,这是一件非常痛苦事情。         ...为了在以后使用自定义字体时候不必一次一次经历这样痛苦,在Xcode6.3环境下,我将所有的系统字体获取后写入了plist文件,将这个plist文件导入项目中,通过如下方法,可以只打印出新增加字体

1.8K20

苹果字体 PingFang SC 一些踩坑记录

字体安装后不起作用 这里就涉及一个 萍方 vs 苹方 vs PingFang 区别的一个问题。 猛地看上去,萍方/苹方/PingFang 应该是同一个字体。但是,实际效果,却并不相同。...那么,到底谁是真正 pingfang sc呢? 这里以能否以 PingFang SC 为名称识别出来,作为标准。为什么这么说呢?...在实际应用过程中,只有安装好 pingfang sc 系列字体才能被识别【如下图中右侧字体】。注意:萍方/苹方,在安装时候,文件名也都是 pingfang-sc 之类文件名。...因此,我们需要: 参考《电脑安装新字体,浏览器字体全变了,如何删除正在使用苹方字体》 - 哔哩哔哩 在 Windows 任务管理进程中把浏览器相关全部结束掉,如 360 浏览器相关进程、Microsoft...参考资料 苏南大叔,《由 pingfang sc 字体缺失,所暴露字体加载顺序潜规则》 科技猎手2023,《电脑安装新字体,浏览器字体全变了,如何删除正在使用苹方字体》 - 哔哩哔哩

4.9K10

字体进行缓存,优化网站速度

看着现在动辄几兆字体,在网页上使用会严重拖慢加载速度,有没有什么方法能够改善这种情况?...这时候我们就需要对字体进行优化了 对字体进行优化方式有很多,比如: 分组加载字体 限制字体加载时间 队列加载 自定义字体显示 本文主要介绍如何通过缓存方式优化字体加载 注:本文字体应用针对全站生效...使用 Service Worker 进行缓存 # 此方法前提是你已经注册好了 Service Worker // Service Worker 文件 // 此处将文件路径修改为实际路径 const...clonedResponse)); return response; }); }) ); }); // 注册文件 ... // 此处请根据需要添加要在网页中使用字体名称...localStorage.setItem('cachedFont', 'true'); } function loadFont() { // 此处请根据需要添加要在网页中使用字体名称

25210

字体是网页设计中最重要细节

同时,字体选择、大小等,还应该配合企业 VI 识别系统,还需要配合你作品需要表达思想感情来确定(例如古典风格,应该选择哥特式字体等)。...字体选择 上面的这些理论,从某些角度和意义上来说,都是废话。如何选择合适字体,才真正切合实际。那么我们应该如何选择在网页中使用字体呢?...所以当你看一些网页作品时候,会发现它 CSS 中 font-family 属性,指定了一大堆 字体 名称。但这个也不是可以随便指定,也有一些注意事项。...你应该这样做,先确定你网页中需要用到字体,然后确定属于哪个字体系列有无其他相近字体以及衍生字体,然后编写字体属性。顺序如下:最想用字体 >> 可以代替相近字体 >> 相近通用字体。...很明显道理,眼睛距离屏幕越远,看起来上面的文字就变小了。 所以在选择网页中字体大小时候,还需要考虑你用户实际使用习惯。

73610

Web 中文字体性能优化实践

如何减小字体文件体积 unicode-range unicode-range 属性一般配合 @font-face 规则使用,它用于控制特定字符使用特定字体。...}) 实际精简并没有这么简单,因为一个字体文件由许多表(table)构成,这些表之间是存在关联,例如 maxp 表记录了字形数量,loca 表中存储了字形位置偏移量。...在讨论 fontmin 如何进行字体截取之前,我们先来了解一下字体文件结构: ?...,因此第二点实际坐标为[300, 300] 因为一个字体涉及表实在太多,并且每个表数据结构也不一样。...fontmin 是支持生成 woff2 文件,但是官方文档并没有更新,最开始我使用 woff 文件,但是 woff2 格式文件体积更小并且浏览器支持不错 字体名称 大小 时间 HanyiSentyWoodcut.ttf

1.9K10

Fonts最佳实践

字体加载 在深入探讨字体加载最佳实践之前,重要是要了解@font-face是如何工作,以及它是如何影响字体加载。 @font-face声明是使用任何网络字体一个重要部分。...至少,它声明了用来指代字体名称,并指明了相应字体文件位置。...如果您不确定您页面的字体是否被及时请求,请检查Chrome DevTools中网络面板中 "计时 "选项卡,以了解更多信息。...如果你不确定使用自我托管字体是否会带来更好性能,可以尝试从你自己服务器上提供一个字体文件,并将其传输时间(包括连接设置)与第三方字体传输时间进行比较。...此外,使用后备字体可能并不实际。如果可能的话,最好用SVG代替图标字体(这对可访问性也有好处)。流行图标字体较新版本通常支持SVG。

2.8K72

SI持续使用

自安装Source Insight以来,这将丢失您所有更改。 字体选项 字体名称 指示当前选择字体。 尺寸 选择字体大小,特别是作为磅值。...您可能会发现relative Scale属性更有用,因为它是相对,并且不管父样式更改如何都可以很好地工作。 规模 指定字体大小缩放比例,以父样式字体大小百分比表示。...实际上,每个对话框都是相同。 但是,每个对话框都有其自己持久状态。 查找参考 输入您要查找符号名称。光标下单词将自动加载到此文本框中。...Source Insight将使用光标位置上下文来确定所需的确切符号实例。如果您从符号对话框或窗口调用“查找引用”,则Source Insight会与该文本框一起保留确切符号引用。...智能参考匹配 这将启用Source Insight智能参考匹配功能。Source Insight将确定找到每个引用是否实际上都在引用您要查找符号。 匹配精确参考会减慢参考查找过程。

3.7K20

为什么你永远不应该在CSS中使用px来设置字体大小

作者指出,相对于容器、浏览器或用户字体大小,px值是静态。无论用户字体偏好设置如何,当我们以静态像素设置值时,它将覆盖用户选择,以我们指定的确切值替代。...在网页上,默认字体大小为 16px 。一些用户从不更改默认设置,但许多人会更改。但默认情况下, 1em 和 1rem 都将等于 16px 。 “Em” 最初是指 “M” 字符宽度,这也是名称由来。...当设置静态像素值时,无论用户字体偏好大小如何,它都会覆盖该选择并使用指定的确切值。...我不会在任何地方使用 px ,除非是明确不想随字体大小缩放设计元素。 永远不要用 px 单位中设置 font-size ,除非你非常确定你在做什么,它会如何行动,以及在你这样做时它是否仍然可访问。...简而言之:在媒体查询中,除非您确定自己知道在浏览器中设置自己字体大小会对用户产生什么影响,否则一定要避免使用 px 。

1.6K20

最实用6个设计排版准则

作为一个设计师最重要技能之一就是你要学习如何去选择排版。这是因为文本是设计师与用户沟通主要方式之一。排版能成就你设计,也能毁灭你设计。 一个美观又复杂排版。...它将激励你探索超乎你所认知字体组合。 确定目标 在你做任何事之前,你首先要确定你设计目标。你想要传达是什么信息?你设计媒介是什么? 优秀设计使其排版与其目的具有一致性。...Sassoon Primary was developed Rosemary Sassoon 其他字体更适合老年人使用。高级友好字体使用可读尺寸,高对比度颜色,并要避免脚本和装饰风格。...Typ.io curates font inspiration from around the web 从网站实际灵感来看,查看 Typ.io.该网站策划字体灵感来自于网络。...确定字体大小 确定字体组合后下一步是确定字体大小。 Adobe排版主管Tim Brown提供了一个很好工具是 Modular Scale。

1K40

Windows字体美化指南

最重要是MS Office软件还是Windows平台好用,所以有时候必须使用Windows。既然默认字体不能忍,那如何彻底改造呢?...特评提示:修改系统显示字体有风险,除非跟我一样有强迫症还是不要折腾了如何对默认字体进行修改Windows默认英文字体使用Segoe UI,中文字体使用微软雅黑,此外由于历史原因,有些软件使用宋体。...替换方式需要在安全模式下进行,按住Shift健,然后在开始菜单中选择重启,进入修复模式下命令行,先进入C盘,然后使用如下命令进行字体拷贝覆盖(方括号中路径根据自己实际情况调整)。...我解决方案是:使用FontCreator将苹方版宋体中文名称也修改为SimSun,然后将原始simsun.ttc分割为两个文件分布命名为宋体.ttf和新宋体.ttf,然后将这两个宋体文件安装到系统字体...图片这样完成以后,系统级UI界面的显示有调用宋体会去找simsun.ttc字体文件(修改以后中文字体名称也为SimSun),而Word等文字软件则会找到宋体.ttf字体文件(中文字体名称为宋体)。

2.6K83

CSS样式中汉字和字母分别使用不同字体方法

就这样一直找匹配字体,直到系统默认,所以一般都把系统默认5类字体放到 font-family 定义最后来写,那么一个国际化站点应该如何设置多语种字体呢?其先后顺序如何设定?...important } 很多开发者忽略了这一点:尽管我们在操作系统中常常看到宋体、微软雅黑、华文细黑这样字体名称,但实际上这只是字体显示名称,而不是字体文件名称。...虽然说在大多数情况下直接使用显示名称也有效,但有些用户却工作在一些很极端情况下,这会导致你字体声明无效。...这时候,操作系统很有可能无法按照显示名称找到正确字体,所以我们要记住第一件事情就是: 同时声明中文字体字体名称(英文)和显示名称(中文),就像这样: Font-family: SimSun, “宋体...还会暴露出一些奇怪 bug,如在这些版本号浏览器下使用中文字体(比方微软雅黑),要把该中文字体放到font-family属性首位,可是会导致英文字体也会使用该中文字体渲染。

4.7K10

网页中使用任意字体实际操作

之前对“在网页中嵌入非系统自带字体”做过一点研究,虽然技术上能实现,但是对国内来说,没有太大实际意义,因为一个中文体文件起码20M+,而且各个浏览器支持字体文件还都不一样,也就是说,在服务器端必须有...2-3个不同格式字体文件,用来应付各个浏览器,可以看下下面这张对应图。   ...有个客户要求显示时间,但时间字体必须是电子表那种字体,如图:   首先,我们要找到这个字体,因为这个字体只有ttf格式,所以我们需要转换出其他各种不同格式,至于如何转换,有软件,有在线,我在这就不指明一定要使用哪种了...,在需要地方定义font-family,并且字体名称就是刚才命名好名称就行: font-family: 'hooray'; 完整demo下载。   ...文章中很多内容我都没有具体解释原因,因为网上对“网页中使用任意字体资料很多,只是例子较少,如果大家有不明白,去百度谷歌一下,就能明了。

70840

前端成神之路-CSS文字文本样式

尽量使用系统默认字体,保证在任何用户浏览器中都能正确显示。 CSS Unicode字体 ? 为什么使用 Unicode字体 在 CSS 中设置字体名称,直接写中文是可以。...方案二: 在 CSS 直接使用 Unicode 编码来写字体名称可以避免这些错误。使用 Unicode 写中文字体名称,浏览器是可以正确解析。...,我们尽量只使用宋体和微软雅黑中文字体 1.3 font-weight:字体粗细 在html中如何字体加粗我们可以用标签来实现 使用 b 和 strong 标签是文本加粗。...1.4 font-style:字体风格 在html中如何字体倾斜我们可以用标签来实现 字体倾斜除了用 i 和 em 标签, 可以使用CSS 来实现,但是CSS 是没有语义 font-style...单位: line-height常用属性值单位有三种,分别为像素px,相对值em和百分比%,实际工作中使用最多是像素px 技巧: 一般情况下,行距比字号大7.8像素左右就可以了。

7.1K10
领券