Copy link to clipboard
Copied
I have searched the forums for an answer to my problem and have come across an answer that Monika Gause referred to here: How to make objects equal size , which nearly helps but I wonder whether I am doing something wrong.
Basically I have a list of names that I have typed out in different fonts. I have expanded them all (as I will align them all later). I am now wanting to make each name all the same length (width) but keep the proportions. I then would use align to make them all line up under each other and be equally spaced out. As I wish to keep the font style, I need to change the width of each selection but enlarge it proportionally so the heights may vary.
Wunder's script, though truly brilliant, just seems to make the selections the same width or same height but it doesn't seem to change the proportions too.
The heights stay the same as originally.
Do you know if there is any way that I could do this too please?
I know I could do this individually using the measurement options on the top bar or just manually scaling them all (before or after expanding) but but I have hundreds of names to change.
Many thanks!
Jill
1 Correct answer
Jill, is this what you're looking for?
Explore related tutorials & articles
Copy link to clipboard
Copied
Jill,
You may:
1) Select each and in the Transform palette set the desired W(idth), then pressing Ctrl/Cmd+Enter (or just Enter if you have locked to keep proportions);
2) Select all, click one name to stay, then in the Align palette use the relevant among (vertical) Distribute Objects or Distribute Spacing (the latter to have the same distance/gap between the names, the former to have their baselines at the same distances);
3) If needed Select all and click one name to stay again, and then in the Align palette use the Align>Horizontal Align Left.
Copy link to clipboard
Copied
Hi Jacob,
Thanks for your answer. However, does this mean that I have to select each 'object' separately and set the desired width in the Transform palette?
Do you know if there's a way that I can select them all and transform in one go, so each individually has the same width?
I am looking for a way to 'batch transform' over a hundred names ....
The align part I have mastered - it's the size changing while kepeing proportions that I am finding difficult.
Many thanks,
Jill
Copy link to clipboard
Copied
Jill,
You may try to ask in the scripting forum, or hope that Carlos or Theunis sees this.
Copy link to clipboard
Copied
Jill, is this what you're looking for?
Copy link to clipboard
Copied
Imagine my surprise just now when I went to install this script and discovered that I've had it for a number of years! Perhaps it's time to go through my stuff and see what other treasures await me!
Thanks, Carlos, there are times when this'll be quite useful. I know I've missed some opportunities.
Peter
Copy link to clipboard
Copied
Thank you very much, Carlos. That must be it.
How is it where you are, hopefully the fires are far away; obviously, so is any whiteness.
I wonder how it is up there (far) north of the Lower 48, Peter; over here we only have rime, no way near anything that can rhyme on show.
Copy link to clipboard
Copied
Occasional rime, but multiple days of that which rhymes with stain. There was a show at my son's house in Anchor Point (to keep it relevant) about a week ago. And at my daughter's, with elevation.
Copy link to clipboard
Copied
Hi Peter, I know, I've written and collected so much stuff, it's hard to keep track of it. Glad to hear you find it useful!!
Copy link to clipboard
Copied
We're safe Jacob, we're a couple of miles from the hills that burned out last year. The danger now is rain and the potential mudslides on the affected areas coming this weekend. Hope everyone is safe.
Copy link to clipboard
Copied
Hello all,
Thanks so much for all your comments and suggestions. Though the suggestion by Carlos is indeed truly great, it doesn't quite do what I needed. I can show exacly why, with pictures to illustrate.
Should I continue on this page to give more details or should I take it to the Scripting Forum?
Thanks!
Jill
Copy link to clipboard
Copied
Jill,
You may both continue here and ask there; I believe Carlos will see it either place, and he asked you whether it was what you were looking for.
Copy link to clipboard
Copied
Hello all
Thanks Jacob - just wasn't sure about the protocol with the forums. Plus I feel so demanding (embarrassed face emoji).
So - here goes. Both of the scripts that I have tried are brilliant however they don't quite do what I am looking for:
1. Wunder's script makes the selections the same width or same height but it doesn't seem to change the proportions of the type too. This can mean that some of the texts could look a little stretched - see my example with the name 'James Ellison'
2. Carlos's script does change the proportions really well, but when I used it, it seemed to change the running order of the names and also gives you an expanded version of the texts, so that one loses the font styles and the text is no longer identifiable through the font (or character style) nor does it remain editable.
I appreciate that I am not able to carry out any of this clever stuff but if anyone feels that they could help, it would be amazing! Thanks.
Copy link to clipboard
Copied
Jill,
Plus I feel so demanding
If you were, I doubt whether you would write it.
I believe you may say that if it is doable it is scriptable.
With the added challenge of working with live (editable) Type, you can still (almost) use the suggestion in the first post as a basis to start with.
To have an exact vertical alignment of both ends of the names, you may add a step 0 and a step 4, and also extend step 1 as follows (in the beginning):
0) Edit>Preferences>General>tick Use Preview Bounds;
1) Select each live name and Effect>Path>Outline Object (for the second name on Effect>Apply Outline Object will do), then in the Transform palette set the desired W(idth), then pressing Ctrl/Cmd+Enter (or just Enter if you have locked to keep proportions);
2) Select all, click one name to stay, then in the Align palette use the relevant among (vertical) Distribute Objects or Distribute Spacing (the latter to have the same distance/gap between the names, the former to have their baselines at the same distances);
3) If needed Select all and click one name to stay again, and then in the Align palette use the Align>Horizontal Align Left.
4) Edit>Preferences>General>untick Use Preview Bounds.
But, in any case, depending on your requirements in terms of appearance, to get the names look exactly right (what looks right is right), you will probably need to fine tune the lengths (and thereby sizes) in order to counteract the inherent difference in appearance between slanting/pointed (such as Y), rounded (such as O), and vertical (such as N) endings, in much the same way the height of differently shaped letters vary to get the appearance of their having the same height.
Which would throw us back into the more tedious (non or after scripting) way of working.
Copy link to clipboard
Copied
Jacob, we had it and lost it again, not to mention the little shaker the other day, which was good for a couple of hours of excitement. The dog and cat were not happy.
Copy link to clipboard
Copied
No show of the show, Peter?
At least I believe/hope it is not raining them.
Copy link to clipboard
Copied
Carlos's script lists the text, top to bottom, not according to the order that appears on the screen, but by the stacking order, back to front, i.e. from bottom to top in the Layers panel (Window menu > Layers). There you can drag them into whatever order you want.
That doesn't change to fact that it's no longer live text, but it will give you the sizes and the order required.
Peter
Copy link to clipboard
Copied
Thanks Jacob I will try again using your suggested method - will have to be tomorrow now as late here.
Peter (or Carlos if you read this) - I could possibly work with a solution where I ended up with non-live text. However, do you think there's a way that I can do something to the text before I use the script so that it doesn't change the order please? I understand what layers are but am not sure what you are saying ... all the text exists on the same layer in my document.
Thanks
Jill
Copy link to clipboard
Copied
Jill,
It is also getting late here, so I shall have to leave soon to attend to other duties in the dark hours, before the sun rises.
Peter is often up very late, and it is only early afternoon over there, but just in case he is busy: if you have a look at your Layers palette with the relevant Layer expanded (arrow pointing down just to the left of the Layer name), you can see all the names (live Type instances shown with the actual (first) letters), and you can see the stacking order. You can then ClickDrag names up/down in the Layer to new places so they appear there in the reverse order, and you can see the bottom name in the Layers palette appear at the top (and the top name at the bottom) after running the script from Carlos.
Was this woolly and unintelligible enough?
Copy link to clipboard
Copied
Just in case we haven't made it clear so far:
Copy link to clipboard
Copied
Hi Jill, sorry no can do with live text. About the text frame order, Peter did a wonderful job explaining how it works.
Let us know if that works for you.
carlos
Copy link to clipboard
Copied
Carlos,
Undoubtedly revealing a shocking lack of (scripting) knowledge, there is no way to sneak in the Effect?
Copy link to clipboard
Copied
Jacob BuggeUndoubtedly revealing a shocking lack of (scripting) knowledge, there is no way to sneak in the Effect?
I can add the Effect Jacob, but reading and setting measurements won't have any effect via scripting.
Copy link to clipboard
Copied
Those names were not randomly selected, by the way!
Copy link to clipboard
Copied
Peter,
Four nice and cosy places down under, but I believe you are referring to something(s)/one(s) else.


-
- 1
- 2