我有一个适用于欧洲语言的docx生成器,我正在尝试添加复杂的脚本支持。我发现了另一个问题和一些食谱来尝试:python-docx add_style with CTL (Complex text layout) language
我设法让它工作,使复杂的脚本文本在正确的字体和大小出来,但我不能得到双向(从右到左)文本工作。明显的“x”。字体.rtl=True“不起作用,另一个帖子中的咒语也不起作用(”语言集(qn('w:bidi'),'fa-IR'))。我得把线拔出来rpr.get\或\U add\ sz()“他的配方给我留下了一个不可读的文件,但其他的东西都没有,我不认为这与这个问题有关。你知道吗
以下是在生成的文档中显示的样式样式.xml文件:
<w:style w:styleId="Hebrew" w:type="paragraph" w:customStyle="1">
<w:name w:val="Hebrew"/>
<w:basedOn w:val="Normal"/>
<w:pPr>
<w:jc w:val="right"/>
</w:pPr>
<w:rPr>
<w:rFonts w:cs="Arial"/>
<w:rtl/>
<w:szCs w:val="24"/>
<w:lang w:bidi="he-IL"/>
</w:rPr>
</w:style>
有谁能告诉我怎样才能让从右到左的语言段落正常工作?你知道吗
根据上面的评论,在ROAR的帮助下(谢谢,ROAR!)我把一切都搞定了。你知道吗
罗尔的食谱here运作得很好,除了那一点rpr.get\或\U add\ sz()给了我一个不可读的.docx文件。把它排除在外,一切正常,似乎没有造成任何问题。缺少的关键链接是将以下内容添加到样式中的<;w:pPr>;:
有一个我的_style.get\u或\u add\u pPr()方法获取对样式的<;w:pPr>;部分的引用,然后代码与更新<;w:rPr>;的代码类似:
我需要的最后一件事是处理混合语言文本,我通过将文本分成多段来完成。我正在处理的希伯来文段落被赋予了修改后的样式,rtl=True,但我将所有以字母开头和结尾的ASCII序列分开:
以rtl=False进行单独运行。你知道吗
相关问题 更多 >
编程相关推荐