我最近的任务是构建自己的RTF到HTML转换器。有了它,RTF解释器片。
我使用的是1.6规格:
http://latex2rtf.sourceforge.net/rtfspec_7.html
我有一个针对RTF专家的问题:
是"段落属性继承"被认为是'#stack; able"或者它更像是先入先出?
我的问题基本上源于RTF规范规则,其中规定:
"If the \pard control word is not present, the current paragraph inherits all paragraph properties defined in the previous paragraph."
实施例:
\pard\ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\par \li720\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20 This is indented.\par \li0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20This is left justified not indented.\par
是否应该像这样(堆叠)解释?
\pard\ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\par \ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\li720\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20 This is indented.\par \ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\li720\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\li0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20This is left justified not indented.\par
或者更喜欢这样(先入先出)?
\pard\ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\par \ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\li720\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20 This is indented.\par \ssparaaux0\s0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20\li0\ql\plain\f0\fs24\lang4105\hich\f6\dbch\f6\loch\f6\cf2\fs20This is left justified not indented.\par
奇怪的是,根据我使用的是哪个文字处理器,这3行的解释会有很大不同。那么这里要做的官方事情是什么?
答案 0 :(得分:0)
从上一个\ pard标记开始,所有段落标记都是累积的。因此,如果当前段落没有使用\ pard,那么它将继承在最后一段之前找到的所有段落标记,再添加它自己,等等。