Index: /trunk/Ohana/src/libkapa/src/DrawRotString.c
===================================================================
--- /trunk/Ohana/src/libkapa/src/DrawRotString.c	(revision 40627)
+++ /trunk/Ohana/src/libkapa/src/DrawRotString.c	(revision 40628)
@@ -57,17 +57,18 @@
   dX = RotStrlen (string);
   dY = currentfont[65].ascent;
+  int dP = ceil(0.25 * dY);
 
   /* apply appropriate offset */
   Xoff = Yoff = 0;
   switch (pos) {
-  case 0: Xoff =     -dX; Yoff = dY; break;
-  case 1: Xoff = -0.5*dX; Yoff = dY; break;
-  case 2: Xoff =       0; Yoff = dY; break;
-  case 3: Xoff =     -dX; Yoff = 0.5*dY; break;
-  case 4: Xoff = -0.5*dX; Yoff = 0.5*dY; break;
-  case 5: Xoff =       0; Yoff = 0.5*dY; break;
-  case 6: Xoff =     -dX; Yoff = 0; break;
-  case 7: Xoff = -0.5*dX; Yoff = 0; break;
-  case 8: Xoff =       0; Yoff = 0; break;
+    case 0: Xoff =  -dX-dP; Yoff = dY+dP; break;
+    case 1: Xoff = -0.5*dX; Yoff = dY+dP; break;
+    case 2: Xoff =      dP; Yoff = dY+dP; break;
+    case 3: Xoff =  -dX-dP; Yoff = 0.5*dY; break;
+    case 4: Xoff = -0.5*dX; Yoff = 0.5*dY; break;
+    case 5: Xoff =      dP; Yoff = 0.5*dY; break;
+    case 6: Xoff =  -dX-dP; Yoff = -dP; break;
+    case 7: Xoff = -0.5*dX; Yoff = -dP; break;
+    case 8: Xoff =      dP; Yoff = -dP; break;
   }
 
Index: /trunk/Ohana/src/libkapa/src/PSRotFont.c
===================================================================
--- /trunk/Ohana/src/libkapa/src/PSRotFont.c	(revision 40627)
+++ /trunk/Ohana/src/libkapa/src/PSRotFont.c	(revision 40628)
@@ -25,4 +25,5 @@
   dX = PSRotStrlen (string);
   dY = currentfont[65].ascent;
+  int dP = ceil(0.25 * dY);
   
   /***
@@ -49,13 +50,22 @@
   Xoff = Yoff = 0;
   switch (pos) {
-  case 0: Xoff =     -dX; Yoff = -dY; break;
-  case 1: Xoff = -0.5*dX; Yoff = -dY; break;
-  case 2: Xoff =       0; Yoff = -dY; break;
-  case 3: Xoff =     -dX; Yoff = -0.5*dY; break;
-  case 4: Xoff = -0.5*dX; Yoff = -0.5*dY; break;
-  case 5: Xoff =       0; Yoff = -0.5*dY; break;
-  case 6: Xoff =     -dX; Yoff = 0; break;
-  case 7: Xoff = -0.5*dX; Yoff = 0; break;
-  case 8: Xoff =       0; Yoff = 0; break;
+  // case 0: Xoff =     -dX; Yoff = -dY; break;
+  // case 1: Xoff = -0.5*dX; Yoff = -dY; break;
+  // case 2: Xoff =       0; Yoff = -dY; break;
+  // case 3: Xoff =     -dX; Yoff = -0.5*dY; break;
+  // case 4: Xoff = -0.5*dX; Yoff = -0.5*dY; break;
+  // case 5: Xoff =       0; Yoff = -0.5*dY; break;
+  // case 6: Xoff =     -dX; Yoff = 0; break;
+  // case 7: Xoff = -0.5*dX; Yoff = 0; break;
+  // case 8: Xoff =       0; Yoff = 0; break;
+    case 0: Xoff =  -dX-dP; Yoff = -(dY+dP); break;
+    case 1: Xoff = -0.5*dX; Yoff = -(dY+dP); break;
+    case 2: Xoff =      dP; Yoff = -(dY+dP); break;
+    case 3: Xoff =  -dX-dP; Yoff = -0.5*dY; break;
+    case 4: Xoff = -0.5*dX; Yoff = -0.5*dY; break;
+    case 5: Xoff =      dP; Yoff = -0.5*dY; break;
+    case 6: Xoff =  -dX-dP; Yoff = dP; break;
+    case 7: Xoff = -0.5*dX; Yoff = dP; break;
+    case 8: Xoff =      dP; Yoff = dP; break;
   }
   cs = cos(angle*RAD_DEG);
Index: /trunk/Ohana/src/libkapa/src/bDrawRotFont.c
===================================================================
--- /trunk/Ohana/src/libkapa/src/bDrawRotFont.c	(revision 40627)
+++ /trunk/Ohana/src/libkapa/src/bDrawRotFont.c	(revision 40628)
@@ -37,17 +37,18 @@
   dX = RotStrlen (string);
   dY = currentfont[65].ascent;
+  int dP = ceil(0.25 * dY);
 
   /* apply appropriate offset */
   Xoff = Yoff = 0;
   switch (pos) {
-  case 0: Xoff =     -dX; Yoff = dY; break;
-  case 1: Xoff = -0.5*dX; Yoff = dY; break;
-  case 2: Xoff =       0; Yoff = dY; break;
-  case 3: Xoff =     -dX; Yoff = 0.5*dY; break;
-  case 4: Xoff = -0.5*dX; Yoff = 0.5*dY; break;
-  case 5: Xoff =       0; Yoff = 0.5*dY; break;
-  case 6: Xoff =     -dX; Yoff = 0; break;
-  case 7: Xoff = -0.5*dX; Yoff = 0; break;
-  case 8: Xoff =       0; Yoff = 0; break;
+    case 0: Xoff =  -dX-dP; Yoff = dY+dP; break;
+    case 1: Xoff = -0.5*dX; Yoff = dY+dP; break;
+    case 2: Xoff =      dP; Yoff = dY+dP; break;
+    case 3: Xoff =  -dX-dP; Yoff = 0.5*dY; break;
+    case 4: Xoff = -0.5*dX; Yoff = 0.5*dY; break;
+    case 5: Xoff =      dP; Yoff = 0.5*dY; break;
+    case 6: Xoff =  -dX-dP; Yoff = -dP; break;
+    case 7: Xoff = -0.5*dX; Yoff = -dP; break;
+    case 8: Xoff =      dP; Yoff = -dP; break;
   }
 
