我最近编写了一个Python程序,可以自动更改文本文件的字体到Times New Roman Font。该程序一般工作得很好,但不幸的是,我想转换为Times New Roman字体的一些文本包含大量科学记数法。
有时,这些特殊字符显示为方框,这是不可取的。我还想避免一个执行过于耗时的脚本(即一个循环遍历单个字符的脚本,识别带有font =“Symbol”的脚本,并跳过这些特定字符的格式化),因为理想情况下这个脚本将是用于通过自动化节省时间。
我想要更改的文本的Unicode表示法如下:
25.0 L U + F0BB U + F020 U + F032 U + F035 U + F02E U + F035 U + F030 kg
我一直在寻找python之外的方法来解决这个问题(即寻找可以将文本从一种符号类型转换为另一种符号的宏?),但到目前为止已经空洞了。 任何帮助将不胜感激!
答案 0 :(得分:0)
对于字体"符号",具体而言,您可以使用ftp://ftp.unicode.org/Public/MAPPINGS/VENDORS/ADOBE/symbol.txt处的表格。这是符号到Unicode的映射表。从Symbol字体代码值中减去0xF000,并在该图表的第二列中查找结果值。第一列的值是Unicode。因此,使用上面的示例,您将获得:
0xF0BB -> 0xBB -> U+2248 -> '≈'
0xF020 -> 0x20 -> U+0020 -> ' '
0xF032 -> 0x32 -> U+0032 -> '2'
0xF035 -> 0x35 -> U+0035 -> '5'
0xF02E -> 0x2E -> U+002E -> '.'
0xF035 -> 0x35 -> U+0035 -> '5'
编写一些简单查找Symbol字体代码的Python代码将非常简单 - >该图表中的Unicode(真正的简单字典)。
但是(总是一个但是!)虽然这可能适用于你的例子,但有一些非常重要的警告要理解: