OpenTBS RTL 问题

OpenTBS RTL issue

我正在使用 TinyButStrong 的 OpenTBS 插件,使用 PHP 用数据填充 docx 模板。 当我尝试在模板中填充 RTL 文本时,它显示在正确的方向(从右到左),但文本本身看起来很乱。

例如,这个字符串:

שלמה ארצי (זמר) + 2

将显示为:

שלמה ארצי) זמר2 + (

请注意,当我试图将这个乱七八糟的字符串复制到记事本时,它突然显示正常。 然后当我将它复制回 Word 时它也很好。

有什么建议吗?

有点肮脏的解决方案,但经过 6 小时的挖掘和测试,这是我能做出的唯一解决方案。

PHP:

function f_html2docx($FieldName, &$CurrVal, &$CurrPrm) {
    $CurrVal='</w:t></w:r><w:r><w:rPr><w:rFonts w:ascii="Arial" w:hAnsi="Arial" 
    w:cs="Arial"/><w:rtl/></w:rPr><w:t>'.$CurrVal.'</w:t></w:r><w:r><w:t>';
 }

DOCX:(添加 onformat 和 strconv)

[event.name;block=tbs:row;onformat=f_html2docx;strconv=no]