在我的php项目中,我可以正确地使用TinyButStrong :我可以用自定义文本替换odt模板文件的一部分,但现在我想在其中插入一些。问题是它插入的是html代码,也不是解释过的版本。
有什么解决方案吗?
发布于 2012-10-05 06:09:29
答案可以在TBS论坛上找到:
http://www.tinybutstrong.com/forum.php?thr=2950
由于您有一个从HTML到ODT的转换函数,因此可以使用自定义OpenTBS函数和参数"onformat“在PHP中实现它。
以下函数仅转换换行符:
function f_html2odt($FieldName, &$CurrVal) {
$CurrVal= str_replace('<br />', '<text:line-break/>', $CurrVal);
}在DOCX模板中使用:
[b.thetext;onformat=f_html2odt]关于将HTML转换为ODT :将格式化文本转换为另一个格式化文本通常是一场噩梦。这就是为什么存储纯数据而不是格式化数据是明智的。将HTML转换为ODT是相当困难的,因为格式化的结构不同。
例如,粗体或斜体可以在HTML语言中使用<b>和<i>完成,而您需要在ODT中使用样式。在超文本标记语言中,你可以有没有<p>的文本,而在ODT中,所有的文本必须至少在一个<text:p>中。
https://stackoverflow.com/questions/12723324
复制相似问题