Skip navigation
Discotv
Currently Being Moderated

CS6 text objects vertical aligning issue

Mar 9, 2013 1:35 PM

Tags: #illustrator #font #text #bug #type #cs6

I have two simple text objects (not textarea) and i'm trying to align them vertically to bottom. You can see the result on the screenshot.

It aligns these text objects by bounding box, not by base line. How can i align text objects vertically by base line?

 

Screen Shot 2013-03-10 at 1.27.57 AM.png

 
Replies
  • Currently Being Moderated
    Mar 9, 2013 1:54 PM   in reply to Discotv

    Is that something that you have to do very often ?

     

    If not, just use smart guides to align.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 10, 2013 3:42 AM   in reply to Discotv

    use this script, select two or more Point Text Items before running...the key item is the top most item.

     

    before

    alignBaseLine1.PNG

     

    after

    alignBaseLine2.PNG

     

    // script.name = alignSelectedTextBaseLines.jsx; 
    // script.description = aligns all selected text items by their Base Line, the key item is the top most item;
    // script.requirements = two or more selected Point Text Items; (other selected items i.e. pathItems, will be ignored)
    // script.parent = CarlosCanto // 03/10/2013;
    // script.elegant = false;
     
     
    #target Illustrator
     
     
    if (app.documents.length>0) {
        var idoc = app.activeDocument;
        var sel = idoc.selection;
        if (sel.length>1)
            alignBaseLine (sel);
        else alert ('Select two or more Point Text Items and try again');
    }
    else alert ('No document to process');
     
     
    function alignBaseLine(sel) {
        for (i=0; i<sel.length; i++) {
            var itext = sel[i];
            if(itext.typename=="TextFrame" && itext.kind=="TextType.POINTTEXT") {
                var base = sel[i].anchor[1];
                break;
            }
        }
     
     
        for (j=i+1; j<sel.length; j++) {
            var itext = sel[j];
            if(itext.typename=="TextFrame" && itext.kind=="TextType.POINTTEXT")
                itext.position = [itext.position[0], base+(itext.position[1]-itext.anchor[1])];
        }
    }
    
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 10, 2013 4:19 AM   in reply to CarlosCanto

    Or.. Check Use Preview Bounds in the preferences, and then align.

     

    But that only works if aligning to bottom and not using decenders. Carlos' script is actually better.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 10, 2013 2:57 PM   in reply to Discotv
    I've just moved from CS5 and it has no such problem.

     

    You may confuse something here. There has never been your desired aligning behaviour in previous AI versions.

     

     

    Or.. Check Use Preview Bounds in the preferences, and then align.

     

    That would only help if you first simulate outlining the type via Effect > Path > Outline Stroke.

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points