Mathematica:字符在旋转文本中重叠

时间:2012-10-16 21:15:27

标签: text rotation wolfram-mathematica special-characters

旋转包含普通和“脚本”字符的文本似乎存在问题。为了说明这一点,我写了一个简短的函数:

RotatePrint[s_String] :=
  GraphicsRow[Table[
    Graphics[Rotate[Text[Style[s, 50]], j]] // ImageCrop,
    {j, 0, 2 Pi, Pi/4}]]

RotatePrint["Sc"],即有两个普通字符,按预期工作:

Two normal characters

RotatePrint["\[ScriptCapitalS]\[ScriptC]"],即有两个“脚本”字符,同样适用:

Two script characters

然而,

RotatePrint["\[ScriptCapitalS]c"],即混合了普通字符和脚本字符,表现得很奇怪:

Mixed characterse

我发现特别奇怪的是旋转角度Pi / 2不会发生重叠。

感谢您的帮助!

Edit1:我知道可以使用ImageRotate代替Rotate解决此问题,但这本身并不能解决问题。

Edit2:由于这似乎取决于操作系统和Mathematica版本:我在Windows 7 64位上使用Mathematica v8.0.0.0。

1 个答案:

答案 0 :(得分:1)

在Windows 7上的 Mathematica 7中,我得到的程度较小:

Mathematica graphics

我建议这个解决方法:

rowPrint[s_String] :=
 GraphicsRow @ 
  Table[Graphics @ Text @ Rotate[Style[Row @ Characters @ s, 50], j],
   {j, 0, 2 Pi, Pi/4}]

rowPrint["\[ScriptCapitalS]c"]

Mathematica graphics