首页/新闻资讯/正文详情

FOP支持显示中文的详细配置

发布时间:2026/9/25 2:43:30 来源:云帆数科 栏目:资讯中心
FOP支持显示中文的详细配置
问题描述FOP在显示中文内容时会将字符显示成#################,本文将通过一个案例详细介绍如何配置并显示中文。package test; import java.io.*; import javax.xml.transform.*; import javax.xml.transform.sax.SAXResult; import javax.xml.transform.stream.StreamSource; import org.apache.fop.apps.*; import org.apache.xmlgraphics.util.MimeConstants; public class FOPPdfCNGenerator3 { public static void main(String[] args) { try { File xmlfile = new File("input/data.xml"); File xsltfile = new File("input/template.xsl"); File pdfFile = new File("input/output.pdf"); File configFile = new File("input/fop.xconf"); InputStream configStream = new FileInputStream(configFile); FopFactory fopFactory = FopFactory.newInstance(new File(".").toURI(), configStream); FOUserAgent foUserAgent = fopFactory.newFOUserAgent(); OutputStream out = new FileOutputStream(pdfFile); out = new BufferedOutputStream(out); Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out); TransformerFactory factory = TransformerFactory.newInstance(); Transformer transformer = factory.newTransformer(new StreamSource(xsltfile)); Source src = new StreamSource(xmlfile); Result res = new SAXResult(fop.getDefaultHandler()); transformer.transform(src, res); System.out.println("PDF生成成功: " + pdfFile.getAbsolutePath()); out.close(); } catch (Exception e) {

相关推荐

从一份硬件报告生成可用 OpenCore EFI:拆解 OpCore Simplify
从一份硬件报告生成可用 OpenCore EFI:拆解 OpCore Simplify

从一份硬件报告生成可用 OpenCore EFI:拆解 OpCore Simplify 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 你盯着两千行的 config.plist… · 2026/9/25 2:43:30

2024上半年系统分析师综合知识真题考点解析与复盘方法
2024上半年系统分析师综合知识真题考点解析与复盘方法

简介:2024上半年系统分析师综合知识真题及答案解析,覆盖计算机组成与体系结构、操作系统、数据库、网络与信息安全等软考核心考点,适合系统分析师考生及对架构设计感兴趣的技术人员用于备考自测。内容包含RISC指令特征、总线分类、SATA接口、… · 2026/9/25 2:43:24

数据结构入门:从数组到图,掌握程序性能的关键骨架(easy-vibe 计算机基础篇)
数据结构入门:从数组到图,掌握程序性能的关键骨架(easy-vibe 计算机基础篇)

教程文档 【免费下载链接】easy-vibe 从 0 到 1 学会 vibe coding,项目制学习 项目地址: https://gitcode.com/datawhalechina/easy-vibe 点击查看 免费下载 数据结构是程序处理数据的"整理方法",决定了程序在数十条还是数万条数据… · 2026/9/25 2:43:24

三步本地部署 ModelScope:从克隆到离线推理的完整指南
三步本地部署 ModelScope:从克隆到离线推理的完整指南

三步本地部署 ModelScope:从克隆到离线推理的完整指南 【免费下载链接】modelscope ModelScope: bring the notion of Model-as-a-Service to life. 项目地址: https://gitcode.com/GitHub_Trending/mo/modelscope ModelScope 是践行 Model-as-a-Service&… · 2026/9/25 3:43:11

在 Claude Code 云会话中运行 sentry-javascript 仓库:环境引导、SessionStart 钩子与增量构建策略全解析
在 Claude Code 云会话中运行 sentry-javascript 仓库:环境引导、SessionStart 钩子与增量构建策略全解析

可观测性 【免费下载链接】sentry-javascript Official Sentry SDKs for JavaScript 项目地址: https://gitcode.com/gh_mirrors/se/sentry-javascript 点击查看 免费下载 导读 本文基于 sentry-javascript 官方 SDK 仓库中的 .claude/CLOUD.md 文档,完… · 2026/9/25 3:43:11

ng-zorro-antd 带页签的卡片实战:用 nz-card-tab 让 Card 承载 Tabs 扩展信息容量
ng-zorro-antd 带页签的卡片实战:用 nz-card-tab 让 Card 承载 Tabs 扩展信息容量

UI组件前端 【免费下载链接】ng-zorro-antd Angular UI Component Library based on Ant Design 项目地址: https://gitcode.com/gh_mirrors/ng/ng-zorro-antd 点击查看 免费下载 卡片(Card)是后台概览页面中最常用的通用容器,可… · 2026/9/25 3:43:11

jc JWT 解析器实战:把 JWT 令牌结构化为 JSON,及其解码实现的源码剖析
jc JWT 解析器实战:把 JWT 令牌结构化为 JSON,及其解码实现的源码剖析

开发工具 【免费下载链接】jc CLI tool and python library that converts the output of popular command-line tools, file-types, and common strings to JSON, YAML, or Dictionaries. This allows piping of output to tools like jq and simplifying automation scripts.… · 2026/9/25 3:43:11

mage-ai 数据集成:将管道数据写入 MongoDB 的 Destination 配置与实现原理指南
mage-ai 数据集成:将管道数据写入 MongoDB 的 Destination 配置与实现原理指南

数据工程数据编排ETL任务调度批处理流处理数据集成后端 【免费下载链接】mage-ai 🧙 Build, run, and manage data pipelines for integrating and transforming data. 项目地址: https://gitcode.com/gh_mirrors/ma/mage-ai 点击查看 免费下载 本篇指南… · 2026/9/25 3:43:10

Reset Windows Update Tool 代码揭秘:sc sdset 安全描述符与 regsvr32 批量重注册 DLL 深度剖析
Reset Windows Update Tool 代码揭秘:sc sdset 安全描述符与 regsvr32 批量重注册 DLL 深度剖析

Reset Windows Update Tool 代码揭秘:sc sdset 安全描述符与 regsvr32 批量重注册 DLL 深度剖析 【免费下载链接】Script-Reset-Windows-Update-Tool This script reset the Windows Update Components. 项目地址: https://gitcode.com/gh_mirrors/sc/Script-Rese… · 2026/9/25 3:43:04

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码