[COCOON+Jfor]将FO转换为RTF格式文档(二)

Android17车载音频进阶之H2XML定制Module(一百七十七) 目的:理解H2XML如何把Module接口和Key定义转换为ARC可用的元数据,并通过Graph、GKV、CKV和TKV驱动AudioReach用例配置。H2XML根据带注解的C头文件生成XML元数据。ARC使用这些元数据配置Module、Graph和参数,ACDB保存对应的Graph定义与Calibration数据,运行时由GSL和AML按Key Vector查询数据。H2XML负责生成配置所需的元数据,不负责执行CAPI Module中的算法。fill:#333;important; 阅读详情

[COCOON+Jfor]将FO转换为RTF格式文档(二)

 文档版本

版本

创建时间

创建人

备注

1.0.0.1

2003-11-15

郑昀

草稿

 

继续阅读之前,我们假设您熟悉以下知识,也可以参考本文后面的附录:

n         Cocoon(Apache组织的XML项目中的八个子项目之一)

n         XSL Formatting Objects (XSL-FO)

n         FOP(Formatting Objects Processor)

n         Jfor(Open-Source Java XSL-FO to RTF converter)

关键词:

cocoon、jfor、xml、xsl-fo fop

 

接上回。

第五步,一个XMLàRTF的例子:

在

cocoon-2.1.3/build/webapp/

目录下新建一个文件夹,例如名字就叫“RtfDemo”。

 

建立这么几个文件:

sitemap.xmap

 

 

 

 

 

 

  

 

 

 

   

   

 

 

 

  

 

 

 

 

 

 

 

      

      

      

 

 

 

 

sitemap.xmap是一个当前站点的配置,非常重要。“map:match”节点指明了如何转换。

 

新建一个子文件夹Fo,其中放置这么两个文件:

hello.xml

encoding="gb2312"?>

 

 BPA</SPAN><SPAN style="FONT-FAMILY: 宋体; mso-hansi-font-family: Arial; mso-ascii-font-family: Arial; mso-ansi-language: EN-NZ">!</SPAN><SPAN lang=EN-US style="FONT-FAMILY: Arial; mso-bidi-font-family: 'Times New Roman'">

 

  美国当地时间11月12日,微软发布了SQL Server 2000的开发支援工具“Best Practices Analyzer(BPA)”。 BPA是一种旨在构筑便于管理的SQL Server应用的工具。不仅可以防止导入SQL Server时遗忘设定等,而且还可以用于数据库的管理。微软从当天起通过该公司的Web站点开始提供该工具的β版。 !

 

和

page2fo.xsl

 

 

  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

  xmlns:fo="http://www.w3.org/1999/XSL/Format">

 

 

  

   

   

    

                  page-height="29.7cm"

                  page-width="21cm"

                  margin-top="1cm"

                  margin-bottom="2cm"

                  margin-left="2.5cm"

                  margin-right="2.5cm">

      

      

      

    

 

    

      

        

      

    

   

 

   

     

      

                 font-size="10pt"

                font-family="serif"

                line-height="14pt">page

     

 

     

       

     

   

  

 

 

 

   

 

 

 

   

 

 

好了,一切准备就绪。

浏览

http://localhost:8888/rtfdemo/hello.rtf

就可以看到RTF版本的输出了,你可以另存为hello.rtf:

 

同时,cocoon的窗口也输出了这个过程:

12:39:40.852 EVENT  Started SocketListener on 0.0.0.0:8888

12:39:40.852 EVENT  Started org.mortbay.jetty.Server@1037c71

jfor.INFO:jfor V0.7.1 - setting up conversion...

jfor.INFO:Parsing xsl:fo document...

jfor.INFO:Writing out RTF...

jfor.INFO:Done converting xsl:fo to RTF.

jfor.DEBUG:conversion took 80 milliseconds.

jfor.INFO:jfor V0.7.1 - setting up conversion...

jfor.INFO:Parsing xsl:fo document...

 

好了,用Cocoon+Jfor这么简单就实现了XMLàRTF。不过,这还是万里长征第一步。

待续。

 

缩略语清单:

Cocoon:

Cocoon是Apache组织的XML项目中的八个子项目之一,根据Apache官方定义,Cocoon是一项XML发布框架。它允许你定义XML文档和文档的转换,并最终生成你所选择的表 示形式,例如HTML, PDF, SVG, VRML等等。另外,Cocoon使你能够在XML文件中加入处理逻辑,从而是XML管 道具备动态的特性。

官方主页:

http://cocoon.apache.org/

 

XSL-FO:

XSL 格式化对象规范是 W3C 的正式建议,通常称其为 XSL-FO,XSL-FO 定义了许多 XML 标记,这些标记描述了应如何显示内容。

XSL-FO 文档定义了制作高质量可打印文档时非常重要的几件事情:

·         有关页面的实际大小的信息(信纸和 A4 等等)

·         有关页边距(顶部、左边、底部和右边)、页眉和页脚和页面其它特性的信息

·         有关文本的字体、字体大小、颜色和其它特征的信息

·         要打印的实际文本,由描述段落、突出显示、表等类似物的元素来标记

研读 W3C 站点(w3.org/TR/xsl)上的 XSL-FO 规范(总共 400 页)。

有关 XSL-FO 的更多一般信息,请访问位于 w3.org/style/xsl/ 的 W3C Style 页面。

XSL-FO详细教程:

http://www-900.ibm.com/developerWorks/cn/cnedu.nsf/xml-onlinecourse-bytitle/3B308072632F949FC8256D320006CA3F?OpenDocument

 

FOP 

FOP (Formatting Objects Processor) 是第一个基于XSL:FO的打印格式处理器,也是第一个与输出无关的格式处理器。它是一个Java程序,能够从对象树中读入然后生成渲染过的页面输出到指定的流。目前支持的输出格式有PDF,PCL,PS,SVG,XML(以树形结构表示),打印机,AWT,MIF和TXT。最主要的输出指的是PDF。

James Tauber - FOP 的最初作者。他开发了该工具的原始版本,而且很大方地开放了该代码,后来又将它移交给 Apache XML Project。

从 xml.apache.org/dist/fop 下载 Apache XML 项目的 FOP 软件包。

 

FO工具

JFOR(Java xsl-FO to Rtf converter)是把依照XSL-FO规范的XML文档转换成RTF(Rich-Text Format)格式, 它的目的与把XSL-FO(通常用XSLT生成)文档转换成PDF(使用FOP或其他类似的工具)相似。

WH2FO及其验证工具FOA的作者是Fabio Giannetti。WH2FO 是一个处理由Word 2000产生的HTML的Java应用程序,并把它们转换成XML内容文件和XSL样式表文件。从这些文件,一个标准的XSLT处理器可能获得只含有XSL-FO标记的fo文件。也可以应用样式表把XML文件转换成HTML,这样做就丢弃了Word额外补充进来的标记。使用XSL-FO Render,比如FOP,能够进一步渲染成PDF。

 

Disclaimers:

本文档所包含的信息代表了在发布之日,zhengyun对所讨论问题的当前看法。本文档不应理解为zhengyun一方的承诺,zhengyun不保证所给信息在发布之日以后的准确性。

本文档仅供参考。

用户必须遵守所有适用的版权法。在不对版权法所规定的权利加以限制的情况下,如未得到 zhengyun和youkuaiyun.com明确的书面许可,不得出于任何目的、以任何形式或手段(电子的、机械的、影印、录制等等)复制、传播本文的任何部分,也不得将其存储或引入到检索系统中。

 

 

本文提到的其他产品和公司名称可能是其各自所有者的商标。

Writen by zhengyun_ustc(at)hotmail.com

 



Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=12735


【AI方案集】个人记忆库型AI智能体终身伴侣方案.docx 这套AI技术方案不走“先堆概念再硬套场景”的老路,而是以业务痛点为锚点,把机器视觉识别、预测性分析、大模型知识赋能等能力拆解成轻量化可落地的功能模块,直接嵌入生产运营的关键环节,既能快速落地见效,又能通过持续的数据迭代逐步放大价值,帮企业在不盲目新增硬件投入的前提下,稳步完成智能化升级,实实在在把AI变成能降本、提效、控风险的生产工具。 立即下载

相关推荐

【能源系统优化】基于MATLAB的光储充一体化多目标调度:光伏自用率与充电成本权衡及储能联合调控 MATLAB 光储充一体化运行优化|光伏自用率与充电成本权衡

内容概要:本文围绕MATLAB实现的光储充一体化系统运行优化展开,旨在通过建立统一的能量调度模型,量化光伏自用率与充电成本之间的权衡关系,提升设备利用效率与运行安全性,并形成可复现的工程分析能力。项目采用多目标混合整数线性规划方法,综合考虑分时电价、储能损耗、光伏消纳与车辆充电需求,在满足功率平衡、储能状态递推、充放电互斥等约束条件下,实现经济性与环保性的协同优化。通过归一化加权目标函数,支持灵活调整运营策略偏好,并利用MATLAB R2025b完成从数据生成、建模求解到结果可视化的完整流程。配套GUI界面支持参数配置、模型训练、结果预测与运行监控,增强了系统的实用性与交互性。 适合人群:具备一定MATLAB编程基础,从事新能源系统规划、电动汽车充电站运营、微电网控制或综合能源管理的技术人员与研究人员,尤其适合工作年限1-3年、希望深入掌握能源系统优化建模与工程实现的研发人员。 使用场景及目标:①优化城市公共充电站、工业园区、高速服务区等场景的光储充协同运行,降低运营成本并提高光伏利用率;②支持日前调度与滚动优化,实现从静态分析到动态调控的升级;③为储能配置、容量规划、需求响应申报及投资回报评估提供量化决策工具;④通过GUI界面实现数据驱动的模型训练与预测,辅助制定最优充放电策略。 阅读建议:此资源以MATLAB为开发平台,强调从理论建模到工程落地的全过程实践。建议读者结合代码示例与GUI操作,理解数据预处理、多目标优化、混合整数求解与结果评价的关键步骤,并通过修改权重参数、运行场景与设备配置进行灵敏度分析,从而全面掌握光储充系统优化的核心逻辑与应用潜力。

[COCOON+Jfor]将FO转换为RTF格式文档

http://blog.youkuaiyun.com/zhengyun_ustc/archive/2003/11/16/12734.aspxhttp://blog.youkuaiyun.com/zhengyun_ustc/archive/2003/11/16/12735.aspx

悠哥的地盘 1339

Windows下Maven环境变量配置避坑指南:解决‘mvn‘不被识别问题

本文详细解析了Windows系统中配置Maven环境变量时常见的'mvn'不被识别问题,特别是当系统提示“无法将‘mvn’项识别为cmdlet、函数、脚本文件或可运行程序的名称”时的解决方案。文章从问题根源入手,提供了清晰的配置步骤、深入的排查方法以及针对PowerShell的特殊处理,旨在帮助开发者彻底解决环境变量配置难题,确保Maven命令正常使用。

weixin_28826961的博客 390

RTF 文件格式解析

RTF 格式解析 例子内容 代码如下 {\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 \'cb\'ce\'cc\'e5;}} {\colortbl ;\red255\green255\blue0;\red255\green0\blue0;\red0\green0

彦文的专栏 3万+

基于线性光耦HCNR200的高压直流采样电路设计与精度优化

本文详细介绍了基于线性光耦HCNR200的高压直流采样电路设计与精度优化方法。针对直流高电压测量中的安全与干扰问题,提出采用HCNR200光耦隔离方案,实现高精度线性传输。文章深入解析电路设计关键细节,包括电阻网络、运放选型、滤波电容配置等,并提供精度优化实战技巧与常见问题排查指南,助力新能源电动汽车和高压储能系统的高压直流采样应用。

weixin_42713608的博客 580

科研党必备!用Requests+BeautifulSoup升级版Nature爬虫(含PDF下载功能)

本文介绍了一套基于Python Requests和BeautifulSoup的Nature期刊智能爬虫系统,专为科研人员设计,可自动抓取论文标题、摘要及开放获取的PDF文档。系统采用模块化设计,包含请求管理、PDF检测和邮件通知等功能,确保高效合规地获取学术资源,提升科研效率。

weixin_29041767的博客 256

OPC UA 地址空间导入实践|XML 与 CSV 两条路径

部署OPC UA服务器时,核心瓶颈在于数据注入——地址空间结构设计与时间序列模拟。XML定义节点结构,需注意命名空间索引(应基于URI而非运行编号)及父子关系双向声明,改动后必须重启生效;CSV注入时序,按SourceTimestamp分组批量写入,建议使用nsu=URI;s=名称格式避免索引错位。推荐使用Prosys仿真服务器,结合UaModeler建模,实现高效、稳定的仿真部署。

MotroEngineer的博客 268

今天出一个candence 17.4 allego的安装教程

7、安装完成,接下来进行补丁更新,找到Hotfix_SPB17.40.035_wint.iso软件 ,右击鼠标选择装载。6、因为之前选择的定制安装,这一步不知道具体要安装啥,因此都勾选,点击NECK,接下来等待安装完成。后面经过仔细对比,发现是前面更新补丁时选择了F盘,F盘是candence安装包,不是补丁。8、在破戒大师里选择安装更新补丁,并找到刚才装载的安装包里的程序,点击下一步。3、打开破戒大师,找到安装candence进行如下图选择,点击下一步。有耐心的人可以重新卸了再装一边,我就不卸了,直接装。

hcvinh的博客 2727

Windows 下 Cordova iOS 开发,配置 config.xml、插件、真机调试全流程

cordova build ios 在 Windows 上用不了?cordova platform add ios 生成工程后,构建、安装和调试交给 KXBuild。本文讲 Cordova iOS 打包全流程:config.xml 配 Bundle ID、版本号和权限说明,插件带 CocoaPods 依赖就 pod install,体检后连 iPhone 按 F5,网页代码用 vConsole/Eruda、原生代码在 VS Code 断点,打出可上架 ipa,Ionic 工程同样适用。

2501_91590906的博客 76

反应堆设计:基于MATLAB的反应堆仿真和分析,包括反应堆稳态分析、反应堆动态分析和反应堆安全分析 介绍

反应堆设计是利用计算机技术对核反应堆进行设计和模拟,以获得安全、高效、经济的核能发电系统。它是核能领域的重要组成部分,在电力生产、核医学、科学研究等领域有着广泛的应用。

走向CTO的路上... 1112

UI渲染顺序:合批为何被拆碎?

在 Hierarchy 中,避免出现:Image(列表1) → Text(列表1) → 特效 → Image(列表2) → Text(列表2)…若可行,在逻辑上把布局组织成“同类元素集中”:例如:列表行中,Image 集中、Text 集中;或者接受 Text 本身就拆出一批,关键是不要在 Text 中间再插入别的材质。现实中不一定能做到完美的“所有 Image 连在一起”,但你会有一个意识:同一 Canvas 内,如果你把不同材质的元素交错穿插,

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 85

WordPress 登录页被刷或 xmlrpc 把 CPU 打满:先关默认账号与 XML-RPC,再核登录限制与文件权限

先处理管理员登录名、强密码和 2FA:新建一个不易猜测的管理员,确认能登录后再停用或删除原来的admin这类账号(内容作者要妥善交接,不要直接删还在发布内容的账户)。管理员强制强密码和 2FA;编辑、店铺经理按最小权限分配,外包账户用完即停用。用不到的 XML-RPC 就关掉,登录限制要同时覆盖这条路径:在应用层或 Web 服务器拦截xmlrpc.php之后,用一条 POST 验证它不再对外提供 multicall。登录失败限制不要只加在上。

20年技术经验|专注小程序+外贸独立站|已服务500家企业,分享创业中有趣的产品和技术经验。 283

408 | 408常用计算公式与方法 —— 计组篇 汇总

408常用计算公式与方法 —— 计算机组成原理篇 汇总

"You are worthy! You can do it!" 4657

DOCX 降重怎么保持格式不变?OOXML 格式保持原理与实测

降重后格式是否保持,关键在于工具是否在OOXML文档结构层操作。纯文本处理(如复制粘贴)必丢格式;而支持上传DOCX、仅替换<w:t>文本节点、不改动样式与锚点的工具,可实现带格式降重。实测青研平台处理10万字论文,公式、图表、标题层级均完好,下载即交。建议选型时优先验证小样,确保仅文本变更,避免格式事故。

柳落青 80

python实现马丁策略(股市) (附完整源码)

python实现马丁策略(股市) (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 605

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

8295 高通WFD配置详解XML结构

高通WFD配置文件核心为WFDConfig与WFDClient,前者统领全局,后者负责具体输出。关键在于合理配置WFDPort与WFDPipeline,确保一个QDI显示ID对应唯一端口ID,允许多客户端共享显示资源。通过eQDIDeviceID、eQDIDisplayID、uDisplayNode等参数精确控制显示区域与图层叠加,利用eZOrderBase和eZOrder实现分层合成。实际应用中需避免端口冲突,善用WFDDump工具分阶段验证,确保多客户端协同稳定输出。

车载行业 173

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

1,270 Star 的 Rust 笔记应用 Quiet.md:百万字敲键 5ms、零 Electron、存储格式选了飞书 DocxXML

开源笔记应用 Quiet.md(1,270 Star)用 Rust + GPUI(Zed 同款框架)纯 GPU 绘制,无 WebView 无 Electron:百万字文档敲键 P95 仅 5.78ms,安装包 18MB;存储格式选飞书 DocxXML,一篇笔记一个 XML 文件,Git/iCloud 同步友好,默认零联网。本文拆解其性能方法论、存储设计与给桌面应用开发者的选型启示。

话梅糖の优快云 Blog 368

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Spider-第06讲-XPath与lxml精确提取

本讲介绍XPath在爬虫中的核心应用,突破CSS选择器无法表达结构关系的局限。通过lxml解析HTML,掌握//任意层级、谓词筛选、属性/文本提取等基础语法,并重点学习contains抗改版、数值比较、逻辑与或等高级用法。实战中结合one()辅助函数高效提取详情页字段,实现从列表页到详情页的完整数据抓取,提升定位精准度与代码健壮性。

u011697185的专栏 306

【码动四季·秋】不写 XML 就没有 SQL 注入了吗:MyBatis-Plus 无 XML 持久层的注入面治理

没有 XML 映射文件就自动免疫 SQL 注入?ArticlePilot 的 D5-1 安全自查证明这个说法只对了一半。无 XML 的 Wrapper 体系把注入入口物理收敛到 apply/last 两个 API,审计成本趋零,但排序字段等"结构位"仍是漏点。本文基于实仓三连扫描的真实命中输出(XML/${}/last-apply 三项,截图为命令实际执行结果)拆解:哪里天然安全、排序字段为何必须白名单、last() 拼接如何禁止、Spring @Value 的 ${} 误报怎么甄别,并给出可复用的注入面自

腾讯云创作之星、华为云云享专家,深耕电商全栈高并发系统实战,分享可商用商城项目源码。 505

WordPress 站点地图 sitemap.xml 404 或空白:先核 SEO 插件与固定链接,再查 CDN 与防火墙

WordPress 前台正常,但打开(或 SEO 插件给出的站点地图地址)却——这和昨日写过的 Cloudflare Flexible SSL /、以及近期的 Heartbeat / autoload、Woo 结账空白、memory exhausted、固定链接「全站伪静态 404」、WP-Cron、Redis、REST 401、媒体上传失败。这里首页、文章页往往都能打开,卡在:SEO 插件未真正启用或互斥、物理挡路、固定链接 rewrite 未刷新、CDN/WAF 对.xml拦截,或robots.txt。

20年技术经验|专注小程序+外贸独立站|已服务500家企业,分享创业中有趣的产品和技术经验。 349

pandas 读取 XLSX 时出现 XML 解析错误

记录 pandas 读取 XLSX 时的 XML 解析错误,说明如何保留原文件、核对工作表及报错位置,并在副本上检查修复影响。

ailx10 186

Maven 构建产物 `.flattened-pom.xml` 解析与工程化规范

.flattened-pom.xml是Maven构建时由flatten-maven-plugin生成的派生文件,用于将开发态动态POM转化为发布态纯净依赖描述,解决变量解析及配置污染问题。该文件属构建产物,必须加入.gitignore并在IDEA中隐藏;若已误提交需通过git rm --cached清理。Maven 4引入原生Consumer POM后,该插件将逐步退场。

小李同学的博客 151
上一篇: 阳为SS/SN 阴为SP(上)
下一篇: [Spam]垃圾邮件者纲要(Spammer's Compendium)
techcrunch
博客等级 码龄19年 34粉丝 3441原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值