OpenTBS RTL问题

时间:2015-06-29 15:32:42

标签: php ms-word docx opentbs tinybutstrong

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

例如,这个字符串:

  

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

将显示为:

  

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

请注意,当我试图将这个杂乱的字符串复制到记事本时,它显示正常。 然后当我把它复制回Word时也没关系。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

有点肮脏的解决方案,但经过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]