1

Here some code for creating wrapped text

Clear["Global`*"];

text[txt_, p1_, p2_, p3_, p4_] := 
With[{l = text[txt]}, {{l /. {x_Real, 
   y_Real} :> (p1 + y)/p2 {Sin[1/p3 x + p4], Cos[1/p3 x + p4]}}}] 
text[txt_String] := 
   text[txt] = 
   Cases[First[
   First[ImportString[
  ExportString[
   Style[txt, FontFamily -> "Calibri", FontSize -> 9.5], "PDF"], 
  "TextMode" -> "Outlines"]]], 
   FilledCurve[a__] :> {EdgeForm[Black], Black, FilledCurve[a]}, 
   Infinity]

which works fine with English letters

 g1 = Graphics[text["HAPPY BIRTHDAY JOHN", 33, 30, 15, -1]]

enter image description here

However if we use Greek letters

g2 = Graphics[text["ΧΡΟΝΙΑ ΠΟΛΛΑ ΓΙΑΝΝΗ", 33, 30, 15, -1]]

enter image description here

these are not printed in the correct format. Why? is there a way to print them correctly?

I use Mathematica v9.0.

many thanks in advance!

Vaggelis_Z
  • 8,740
  • 6
  • 34
  • 79

0 Answers0