]> granicus.if.org Git - graphviz/commitdiff
Rest of fix for bug 1388
authorerg <devnull@localhost>
Fri, 18 Jul 2008 18:48:54 +0000 (18:48 +0000)
committererg <devnull@localhost>
Fri, 18 Jul 2008 18:48:54 +0000 (18:48 +0000)
lib/common/labels.c

index ebc7c988dcc7bcee3219efebf927ac49e92755fb..4990eef67b62d11d6d3d7045c9cde0ef51d8e570 100644 (file)
@@ -173,7 +173,7 @@ void free_label(textlabel_t * p)
 void emit_label(GVJ_t * job, emit_state_t emit_state, textlabel_t * lp)
 {
     obj_state_t *obj = job->obj;
-    double halfwidth_x, center_x, left_x, right_x;
+    double center_x;
     int i;
     pointf p;
     emit_state_t old_emit_state;
@@ -193,12 +193,7 @@ void emit_label(GVJ_t * job, emit_state_t emit_state, textlabel_t * lp)
     p.x = lp->p.x;
     p.y = lp->p.y;
 
-    /* dimensions of box for label, no padding, adjusted for resizing */
-    halfwidth_x = (lp->dimen.x + lp->d.x) / 2.0;
-
     center_x = p.x;
-    left_x = center_x - halfwidth_x;
-    right_x = center_x + halfwidth_x;
 
     /* position for first para */
     p.y += (lp->dimen.y + lp->d.y) / 2.0 - lp->fontsize;
@@ -210,10 +205,10 @@ void emit_label(GVJ_t * job, emit_state_t emit_state, textlabel_t * lp)
     for (i = 0; i < lp->u.txt.nparas; i++) {
        switch (lp->u.txt.para[i].just) {
        case 'l':
-           p.x = left_x;
+           p.x = center_x - lp->d.x;
            break;
        case 'r':
-           p.x = right_x;
+           p.x = center_x + lp->d.x;
            break;
        default:
        case 'n':