【发布时间】:2016-12-28 16:18:40
【问题描述】:
我正在使用 TCPDF 创建 PDF 文档,并且需要在不使用 HTML 作为多单元格选项的情况下呈现上标字符。没有 HTML,因为我需要将单元格底部的单词垂直对齐,当单元格支持 HTML 时,这不起作用。
有什么想法吗?
[编辑]
根据 Jakuje 的提示,我正在使用此代码来转换 unicode 字符:
$unicodeTable = array('<sup>1</sup>'=>'U+00B9', '<sup>2</sup>'=>'U+00B2', '<sup>3</sup>'=>'U+00B3', '<sup>4</sup>'=>'U+2074', '<sup>5</sup>'=>'U+2075');
function replace_unicode_escape_sequence($match) {
return mb_convert_encoding(pack('H*', $match[1]), 'UTF-8', 'UCS-2BE');
}
function unicode_chr ($chr) {
$x = explode("+", $chr);
$str = "\u".end($x);
return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', 'replace_unicode_escape_sequence', $str);
}
foreach($unicodeTable as $uKey=>$uValue){
$text = str_replace($uKey, unicode_chr($uValue), $text);
}
这适用于纯 php/HTML - 但是当我将此代码与 TCPDF 一起使用时,我得到的只是 unicode 代码(例如 \u00B9)
【问题讨论】:
标签: tcpdf