注意:要从 XeLaTeX 源转换为.odt
/ .docx
,我使用 Michal Hoftich 提供的解决方案。(请参阅 MWE 和 @michal.h21 的解决方案。)本问题是基于之前的一个问题错误报告。
据我所知,tex4ht 在环境方面有点问题verse
。
错误 1:文字消失
最严重的是,它似乎忽略了紧随其后的文本verse
(直到到达段落或分节符)。例如:
\begin{verse}
\gk{ἐνταῦθα τ(ὸν) Γεώργ(ιον) Χιονιάδην νόει\\
ἀποπληροῦντα τὸν μακρὸν πόθον αὐτοῦ τοῦ φίλου\\
διασχημάτων εὐφυῶν τῶν τῆς ἀστρονομίας.}
Be aware that here George Chioniades\\
satisfies his friend's great desire\\
for well-formed astronomical diagrams.
\end{verse}
This makes clear...
NEW PARAGRAPH
输出中省略了单词“这清楚地表明...”。
错误 2:诗句间距
一个不太严重的问题是,输出的诗句间距很奇怪:不是单倍行距,而是在希腊文原文和阿拉伯文翻译之间留一个空格来表示“新段落”(就像在pdflatex
/xetex
输出中一样),而是全部双倍行距(或至少是等距的,间隔比单倍行距更宽)。
问题
有没有简单的方法可以修复这些错误?
答案1
第一个问题是由于配置中的诗句环境后没有开始新段落而导致的tex4ht
。我已经在源代码中修复了这个问题,所以修复应该会在几天内到达 TL。
关于第二个问题,您可以在自定义配置文件中更改诗句的段落样式:
\Preamble{xhtml}
\ConfigureOO{verse}{\Hnewline
<style:style style:name="verse"
style:family="paragraph"
style:parent-style-name="Text-body"
style:next-style-name="Text-body">
<style:paragraph-properties fo:margin-left="1.499cm"
fo:margin-right="1cm"
fo:margin-top="0cm"
fo:margin-bottom="0cm"
fo:text-indent="-0.499cm"
style:auto-text-indent="false">
<style:tab-stops/>
</style:paragraph-properties >
</style:style>
\Hnewline}
\xeuniuseblock{Greek}
\xeuniuseblock{Arabic}
\makeatletter
\ConfigureEnv{arab}{\@rltrue}{\@rlfalse}{}{}
\makeatother
\begin{document}
\EndPreamble
对你来说重要的几行是:
fo:margin-top="0cm"
fo:margin-bottom="0cm"
这些最初被设置为0.2cm
,这是一个最小可能值。
LO 中的结果: