直播|DITA内容发布工具解析 - 问答总结

news2025/2/27 12:29:14

9月6日,我们进行了一场名为“DITA内容发布工具解析”的直播。通过直播,大家了解到:

  • DITA-OT简介

  • 默认输出效果

  • 定制以后输出效果

  • 发布过程与样式定制

在问答环节,大家进行了热烈沟通。我将几个大家关心的问题和答复总结如下:

Q: 什么样的格式定制需要用到第三种方式? (即:制作DITA-OT Plug-in实现样式定制)

A: CSS能控制内容的页眉页脚、字体、颜色、对齐方式、显示或者不显示、显示方式等。能完成不需要动内容的定制。但是CSS本身不能生成数据或者处理数据。下边这种情形会用到第三种方式。

例如:下边是DITA-OT的用户指南,需要根据XML内容,生成一个索引页(这个索引页不在DITA源文件中,而是自动生成的)。在输出的HTML和PDF文件的索引页中,点关键字可以链接到关键字所在的内容。如下图:

一种可能的办法在HTML渲染成PDF的过程执行某种逻辑,生成这个索引页的内容。在浏览器中渲染和显示HTML过程中,是可以用JavaScript语言来执行一些数据处理逻辑的。 

注:JavaScript是一种Web编程语言,可以在浏览器中执行,可以操纵HTML。

但是,在将HTML渲染成PDF过程中,并不支持JavaScript,所以这个过程无法生成索引页内容。

另一思路就是在将XML转换成HTML过程中就生成这个索引页。这个可以通过制作一个DITA-OT插件来完成。Oxygen的发布引擎就是通过这种方式实现的。 

Q: Markdown能做多格式发布吗?

A: 可以。

从DITA-OT 3.0开始,它支持将Markdown作为输入格式。确切地讲是Topic文件支持使用Markdown编写,Map文件在DITA-OT 4.0之前需要使用XML编写。到DITA-OT 4.0也支持用Markdown编写Map文件了。

在发布过程中,如果是Markdown格式的文档,首先会被转换成DITA格式,然后用发布DITA的方式统一处理了。

很多软件都提供将Markdown输出成PDF格式,但是大多数都只能达到“能看”的程度,达不到工业级标准。DITA-OT发布方案使用W3C标准,能发布工业级标准的输出。

Q: DITA-OT输出的PDF是否支持印刷用的CMYK颜色

A: CMYK是彩色印刷时采用的一种套色模式,利用色料的三原色混色原理,加上黑色油墨,共计四种颜色混合叠加,形成所谓“全彩印刷”。

DITA-OT是使用第三方的PDF生成引擎来生成PDF文件的。所以,这个问题其实是DITA-OT调用生成PDF的引擎是否支持CMYK。 

我们用Oxygen中的DITA-OT使用CSS发布,支持搭载这几个引擎(CSS到PDF):

  • Oxygen PDF Chemistry

  • Prince XML

  • Antenna House

是否支持CMYK,需要查看这些引擎的文档。

1) Oxygen PDF Chemistry

Chemistry后台使用的是FOP。

在Oxygen发布引擎官方文档中未找到关于CMYK的相关信息。

查看了FOP文档,提到了颜色,但也未找到CMYK支持的信息。这里列了一些支持的颜色函数:

https://xmlgraphics.apache.org/fop/compliance.html

2) Prince XML

根据Prince XML文档,它支持CMYK:

https://www.princexml.com/doc/graphics/#color

3) Antenna House

根据Antenna House文档,它支持CMYK:

https://www.antenna.co.jp/AHF/help/en/ahf-pdf.html

Q: 能否让XSL-FO理解CSS?

A: W3C这个组织为了渲染设计了这两套语言:

  • XSL-FO - 用于基于页面的渲染

  • CSS - 用于Web页面的渲染

这样发展了很多年以后,大家发现XSL-FO进步很慢,到今天XSL-FO还是用的2006年发布的1.1版 (https://www.w3.org/TR/xsl11/)。

反观CSS,发展迅速很多。2023年CSS有不同方面的标准推出。 

关于支持用CSS实现页面发布的引擎,其中的Oxygen Chemistry的做法是使用HTML + CSS 生成XSL-FO,然后通过FOP将XSL-FO生成PDF。 

它就是某种程度地让XSL-FO理解CSS。如果自己实现是可能的,不过有很多细节要处理。 

注:W3C全称是万维网联盟(World Wide Web Consortium)。这个组织设计了很多知名的、我们每天都用的Web标准,比如:HTML,CSS等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/990429.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图像文件的操作MATLAB基础函数使用

简介 MATLAB中的图像处理工具箱体统了一套全方位的标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。这里仅仅对常用的基础函数做个使用介绍。 查询图像文件的信息 使用如下函数 imfinfo(filename,fmt) 函数imfinfo返回一个结构体的info&#xff…

27.方向标

题目 描述 一位木匠收到了一个木制指示牌的订单。每块木板必须与前一块垂直对齐,要么与前一个箭头的基部对齐,要么与相反的一侧对齐,在那里用特制的螺钉固定。两块木板必须重叠。木匠将设计师发送的草图编码成了一个整数序列,但…

达梦数据库MAIN表空间导致磁盘满问题的处理和总结

前言 在达梦数据库使用中,建议对数据库表空间使用进行规划,业务用户创建单独的表空间使用。 如果不创建单独的用户表空间会遇到什么问题呢?通过下面的问题和测试说明合理的表空间规划是有必要的。 问题 某开发项目组使用DM8 1-2-192 版本。…

Window安装Node.js npm appium Appium Desktop

Window安装Node.js npm appium appium Desktop 1.安装nodejs 参考链接: https://blog.csdn.net/weixin_42064877/article/details/131610918 1)打开浏览器,并前往 Node.js 官网 https://nodejs.org/ ↗。 2)在首页中,您可以看到当前 Node.…

解决防火墙导致虚拟机不能ping通宿主机的问题

今天,无缘无故的,虚拟机突然用不了,网络连上不了,一番折腾翻找,最后才发现,是因为虚拟机ping不同宿主主机了,连网关都ping不通了,但是,宿主主机却可以ping通虚拟机 。 最…

工程管理系统简介 工程管理系统源码 java工程管理系统 工程管理系统功能设计

鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管…

Netty(一)NIO-基础

Netty 分布式根基于网络编程,Netty恰是java网络编程的王者,致力于高性能编程。 前置 适用于网络开发,服务器开发。多线程,线程池,maven。 大纲 NIO编程(Selector,ByteBuffer和Channel&…

即拼七人拼团系统开发模式,如何助力电商平台提升产品销量和复购率?

对于电商平台来说,如何提高产品销量和复购率,是每个其他都在面临的最大挑战。而应对这个挑战最好的方法就是结合一款合适的商业模式,一个姓王的客户就运用即拼七人拼团模式,成功提升了产品销量和复购率。 这个王客户运营的电商平台…

全栈自主可控!移动云边缘智能小站EIS新突破

8月中旬,移动云为福建泉州惠安某储能制造公司打造的边缘智能小站EIS正式上线。该项目是中国移动首个正式上线的软硬一体、全栈自主可控的超融合边缘智能小站项目。 边缘智能小站(EIS,Edge Intelligence Site)是基于移动云边缘超融…

Unity的UI面板基类

使用这个组件实现淡入淡出 public abstract class BasePanel : MonoBehaviour {//控制面板透明度 用于淡入淡出private CanvasGroup canvasGroup;//淡入淡出速度private float alphaSpeed 10;//隐藏还是显示public bool isShow false;//隐藏完毕后做的事private UnityAction …

中秋国庆双节将至,企业如何进行软文推广?

节点营销是每个企业都会面临的课题,中秋国庆双节将至,这两个节日不仅是人们消费的高峰期,也是各大企业通过节日营销提高品牌知名度和美誉度的最佳时机,节点营销的方式之一就是软文推广,那么企业应该如何利用双节来进行…

【ccf-csp题解】第1次csp认证-第四题-无线网络-特殊点个数限制的单源最短路径

题目描述 思路讲解 可以把题目抽象为&#xff1a;从第1个点到第2个点&#xff0c;经过特殊点的数量不超过k的单源最短路径&#xff08;其中每条边的权重均为1&#xff09; 可以使用bfs解决这个问题&#xff0c;但是dist[][]数组和队列中放置的pair<int,int>元素不再是单…

Python web 框架web.py「简约美」

web.py is a web framework for Python that is as simple as it is powerful. web.py is in the public domain, you can use it for whatever purpose with absolutely no restrictions. web.py 是一个简单而强大的 Python Web 框架。web.py 属于公共领域&#xff0c;您可以…

VBA系列技术资料1-177

MF系列VBA技术资料 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧&#xff0c;我参考大量的资料&#xff0c;并结合自己的经验总结了这份MF系列VBA技术综合资料&#xff0c;而且开放源码&#xff08;MF04除外&#xff09;&#xff0c;其中MF01-04属于定…

外贸B2B建站怎么做?

答案是&#xff1a;外贸B2B建站可以用Wordpress来建站。 外贸企业在开展国际业务时&#xff0c;B2B网站的作用不可忽视。 它不仅展示了企业的实力和产品&#xff0c;还帮助企业建立起与潜在客户的联系。 如何打造一个有效的外贸B2B网站呢&#xff1f;本文将为您提供详细的建…

FPGA实现Cordic算法——向量模式

FPGA实现Cordic算法——向量模式 FPGA实现Cordic算法——向量模式1.cordic算法基本原理2.FPGA实现cordic算法向量模式i、FPGA串行实现cordicii、FPGA流水线实现cordiciii、实验结果 FPGA实现Cordic算法——向量模式 1.cordic算法基本原理 FPGA中运算三角函数&#xff0c;浮点数…

直播 | 丹望医疗王晓林博士“基于微流控的血管化器官/类器官芯片构建及其应用”

类器官模型具有高仿真性&#xff0c;与人体器官有高度相似的组织学特征和功能&#xff0c;尤其在肿瘤模型中能够较好保留肿瘤异质性等优势&#xff0c;在精准医疗及药物筛选等领域具有广泛的应用前景。同时&#xff0c;基于微流控技术的器官芯片能在微流体装置上实现多重微环境…

了解测试划分

界面测试 肉眼直观看到的,都属于界面,例如 WEB站(通过浏览器打开的网站),APP,小程序,公众号 界面的重要性:用户和软件交流的时候,通常都是通过界面进行交互的 业界测试界面的时候,参考软件规格说明书,UI视觉稿 可靠性测试 可靠性 正常运行时间/(正常运行时间非正常运行时…

Web3新品牌ZAN亮相外滩大会 为海外客户提供全栈安全可信技术

9月8日上午&#xff0c;Web3品牌ZAN在外滩大会正式发布&#xff0c;为香港及海外市场提供面向Web3的技术解决方案&#xff0c;尤以安全合规类技术产品为主。原蚂蚁链CTO张辉担任ZAN CEO。 张辉介绍&#xff0c;ZAN面向香港及海外市场的合规机构及创新型公司&#xff0c;提供支持…

陪诊系统|陪诊软件开发|陪诊系统搭建功能

为了顺应不断变化的市场需求&#xff0c;有些行业慢慢销声匿迹&#xff0c;有些行业刚刚崭露头角&#xff0c;目前陪诊的市场需求也在逐渐扩大&#xff0c;陪诊小程序也随之到来&#xff0c;主要面向独居老人&#xff0c;孕妇&#xff0c;残障人士等等给予专业性的陪诊就医服务…