Skip to main content
George Langley
Known Participant
August 27, 2018
Answered

Distribute Text Objects Bug

  • August 27, 2018
  • 1 reply
  • 683 views

Cannot horizontally "Distribute Objects" on text objects and maintain their original left-to-right order if one text object is longer than the last text object.

Platform

Illustrator CC v 22.1 on Windows 7

Expected Behaviour

Five lines of text (each being a separate text object) of varying lengths evenly distributed left to right, maintaining their original left-to-right order.

Resulting Behaviour

Text objects are being moved and re-distributed between the first object and the longest object, regardless of their original left-to-right order.

Steps to Reproduce

1) Create a text object - can leave default "Lorem Ipsum" in it.

2) Alt-Drag down and to the right to create a second text object below and to the right of the first text object.

3) Repeat step 2 three more times, so you have five text objects at random spacing, going down and to the right.

4) Select all five text objects.

5) In the Align tab, click Distribute Objects: Horizontal Distribute Left - the five text objects will correctly position themselves evenly from left to right.

6) Now, in the second text object, add a short word to the text - ensure that it does not extend past the last text object.

7) Select all and click Distribute Objects: Horizontal Distribute Left again - nothing should move and they will remain evenly-distributed.

😎 Now, in the second text object, add more words until it extends past the last text object.

9) Select all and click Distribute Objects: Horizontal Distribute Left again - BOOM! The third, fourth and fifth objects all move to the left, and are then evenly distributed left to right between the first object and the second (long) object.

Why? Is there some setting I have on that I'm not aware of? Or is it a bug?

I end up either having to manually position each text object, or position them with placeholder text then paste in the correct text, which results in a lot of trial-and-error getting the desired spacing to position the longer lines where they need to be for the design.

Notes

Am seeing the same behaviours using the Centre and Right Distribute Objects as well.

Trying other permutations of length and placement, such as the second text object being the furthest left to start all seem to work as expected. It is only when the lines are left to right from top to bottom that Illustrator tries to distribute everything between the first object and the longest text object.

    This topic has been closed for replies.
    Correct answer tromboniator

    This is absolutely the expected behavior. When you add text to the second object so that it extends past the (previously) right-most object, it becomes the rightmost object, so that the left ends of the three objects between the long object (now on the right) and the left-most object are distributed between their respective left ends. Distribution is between the extreme left and extreme right object, not order of creation or stacking order. It's all about position.

    Peter

    1 reply

    tromboniator
    Community Expert
    tromboniatorCommunity ExpertCorrect answer
    Community Expert
    August 28, 2018

    This is absolutely the expected behavior. When you add text to the second object so that it extends past the (previously) right-most object, it becomes the rightmost object, so that the left ends of the three objects between the long object (now on the right) and the left-most object are distributed between their respective left ends. Distribution is between the extreme left and extreme right object, not order of creation or stacking order. It's all about position.

    Peter

    George Langley
    Known Participant
    August 28, 2018

    Thanks, but I disagree - this is not the behaviour that one would expect.

    AND IT ISN'T THE BEHAVIOUR IN PHOTOSHOP!

    Distribute left edges should only be concerned with placement of the left edge, regardless of the object's width.

    1. Find the left edge that is farthest to the left and that becomes the start position.
    2. Find the left edge that is farthest to the right and that becomes the end position.
    3. All other objects are then moved (maintaining their current left-to-right order) so that the space between each left edge is equidistant.

    I can't even imagine a scenario where the current behaviour would be desired. If I wanted everything spaced between the farthest left object and the longest object, I would roughly position them in that order before hitting Distribute Left.

    PHOTOSHOP HAS IT RIGHT

    1) Add a text (or any graphic) in Layer 1.

    2) Duplicate that layer twice for a total of three layers.

    3) Drag Layer 2 down and to the right.

    4) Drag Layer 3 down and even farther to the right.

    6) In Layer 2, add more text (or stretch the graphic) so that it extends well past Layer 3.

    5) Select all three layers in the Layers Tab.

    6) Click the "Distribute left edges" - the middle (longest) layer is moved so that its left edge is equidistant between the other two layers' left edges, as per example below:

    I maintain that this is a bug in Illustrator.

    tromboniator
    Community Expert
    Community Expert
    August 28, 2018

    Okay, this is the behavior that I expect, and Photoshop behavior is no basis for what to expect in Illustrator. Two different animals. Setting aside the question of what the behavior should be, perhaps we can figure out what to do as it is.

    How about distributing the text boxes with a length of text that does work for you, then insert the text you want? I appreciate the fact that this is not your ideal solution, but it gets you there.