我为我的书使用Constantia字体(随Windows 7一起提供),并希望使用Mathematica中的相同字体为本书准备图形.问题是Constantia默认输出旧式数字.我知道,例如在XeTeX中,可以控制旧式或普通数字是否用于输出.
是否可以控制Mathematica中的数字样式?
我试图将图形列表导出为PDF格式的单独帧,以便借助外部实用程序(例如pdf2swf)编译矢量SWF动画.遗憾的是,导出的PDF文件中的某些特殊字符(例如,度符号或三点)已损坏.这也是所有俄罗斯信件的命运.请注意,当Mathematica从Mma直接导出到SWF时,会在列表中对图形进行栅格化处理,这在我的情况下会产生令人不满意的结果.
有没有办法在导出的图形中保留这些字母?
单个图形可以在图形编辑器中手动编辑,但几百帧的视频几乎不可能.以下自定义函数可以保留一些符号:
ExportPDF[filename_, elem_,
opts : OptionsPattern[{Export, Outlines -> True}]] := Module[{$elem},
$elem = Style[elem, Background -> None];
If[OptionValue[Outlines] == True
, $elem =
First@ImportString[ExportString[$elem, "PDF"], "PDF",
"TextMode" -> "Outlines"]
];
Export[filename, $elem, FilterRules[{opts}, Options[Export]]]
]
Run Code Online (Sandbox Code Playgroud)
不幸的是,它并不总是有帮助.