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

iText7 -如何防止在使用HtmlConverter时字体更改?

在使用iText7的HtmlConverter时,可以通过以下方法防止字体更改:

  1. 使用CSS样式:在HTML中,可以通过CSS样式来指定字体。通过在HTML中嵌入CSS样式,可以确保在转换为PDF时保持字体的一致性。例如,可以使用以下CSS样式来指定字体:
代码语言:txt
复制
<style>
    body {
        font-family: Arial, sans-serif;
    }
</style>

在转换HTML到PDF时,确保将CSS样式传递给HtmlConverter对象。

  1. 使用字体提供程序:iText7提供了字体提供程序(FontProvider)的功能,可以用于指定要在转换期间使用的字体。通过使用字体提供程序,可以确保在转换HTML到PDF时使用指定的字体。以下是一个示例:
代码语言:txt
复制
FontProvider fontProvider = new DefaultFontProvider();
fontProvider.addFont("path/to/font.ttf");
ConverterProperties converterProperties = new ConverterProperties();
converterProperties.setFontProvider(fontProvider);
HtmlConverter.convertToPdf(new FileInputStream("path/to/input.html"), new FileOutputStream("path/to/output.pdf"), converterProperties);

在上述示例中,通过创建一个字体提供程序对象,并使用addFont()方法添加要使用的字体文件的路径。然后,将字体提供程序对象传递给ConverterProperties对象,并在转换HTML到PDF时使用该ConverterProperties对象。

通过以上方法,可以确保在使用iText7的HtmlConverter时防止字体更改,并保持字体的一致性。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)、腾讯云对象存储(COS)、腾讯云人工智能(AI)等。您可以访问腾讯云官方网站获取更多产品信息和详细介绍:腾讯云

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

相关·内容

  • SpringBoot 下PDF生成使用填坑总结

    解释: 1、Configuration cfg 使用了freemaker starter后,在项目启动时即会自动初始化 Configuration 对象到Spring容器中; 2、Template template = cfg.getTemplate("test.ftl","UTF-8"); 模板因cfg本身在Spring容器中,则在获取test.ftl模板是就会自动在resource/templates下寻找模板,默认:ftl 格式,可以修改 3、因为找了很多例子都是使用ITextRenderer 对象来渲染输出渲染的PDF,但ITextRenderer有一个问题是要解决中文不显示问题,必须把字体放在一个以 文件夹 路径访问的形式引入,SpringBoot打包后,经测试,无法获取打包后的FONT字体; 则,再另辟途径,又找到以Document方式,但document需要的是,没一个dom对象都必须一个个添加进去,网上很多都是new 专门的对象,比如:块 Paragraph 然后添加文字(数字)内容。 所以又搜索:是否可以往document插入html 最终找到:https://www.cnblogs.com/mvilplss/p/5646675.html

    03

    flying-saucer + iText + Freemarker实现pdf的导出, 支持中文、css以及图片

    项目中有个需求,需要将合同内容导出成pdf。上网查阅到了 iText , iText 是一个生成PDF文档的开源Java库,能够动态的从XML或者数据库生成PDF,同时还可以对文档进行加密,权限控制,并且还支持Java/C#等,但是iText本身提供的HTML解析器还是不够强大,许多HTML标签和属性无法识别,更悲催的是简单的CSS它不认识,排版调整样式让人头大。那么有没有什么方式能够支持css呢,又查阅到了 flying-saucer, flying-saucer也是导出PDF的一种解决方案,并且是基于iText的开源API,并且实现了CSS解析器,能够很好的支持CSS2.1,以及少量的CSS。最终解决方案定为: flying-saucer + iText +  Freemarker。

    01
    领券