Transformation> scale

Scaling a glyph (with closed lock under transformations menu) works in a different way than we’re used to all Vector based applications such as Adobe indesign & Illustrator.
Scaling a glyph that measures 600pt height to 50% results a 400pt glyphs height.{tested with all options of transformation origins}
The Original glyph was copied into Adobe Illustrator page were the dimensions were verified to be correct (see attached screen shots).
However a 50% scale down results 300pt height of glyph!!

Citing from the Glyphsapp manual: "… if you
want to scale down all coordinates by half, you need to enter 100 percent and hit the minus button.
I tried this > the result = 301pt !

One more testing step> copying from AI to Glyphsapp the imported shapes measurements of both Original & scaled glyph are 600pt & 300pt respectively.
I’m using Version 1.3.19

To understand the transformation panel, enter something like 20% and hit + and then -. Now you have the same dimension as before.
This is quite strange but usefull.

There are other options to scale. You can use the width and height fields in the info box or the transform filter.

The W/H fields of the infoBox are helpful;
Though it is quite strange with transformations; As I’m unable to conceive the calculation of -50% of the 600pt that results 400pt !

301 is probably a rounding issue. We would have to look at the shape you are trying to transform, in order to tell you what went wrong precisely.

If you want it at 300, it is best to tell it to scale to 300. You do that with the grey info panel, as you have figured out already.

The minus button is the reverse of the positive transformation. In your case, 400 + 50% = 600, the reverse gets you from 600 back to 400.

I also had problems with dimensions being off by 1 after scaling. Even when entering explicitly in the info panel. I believe this happens when part of the shape has negative coordinates and a central reference point is selected. Probably a problem of rounding away from or towards zero.

As a workaround, currently, choosing a corner as reference point should get you the dimension you really want. If that still does not help, try shifting the entire shape into the positive area (i.e. above the baseline and without negative LSB), and back after scaling.

I also have to admit I find the scaling functions in Glyphs not very satisfying (although I do understand how they work). Something as simple as anisotropically scaling the entire font requires a workaround, and I am also missing a simple transformation mode with eight handles, as practically all graphics applications offer.

I am shocked and amazed that the utterly nonsensical behavior of the Transform > Scale buttons in the sidebar still hasn’t been fixed. For instance, I’d like to scale my figures by 75% to make denominators, but entering 75% and clicking the «smaller» button gives me figures at 52%.

You keep claiming that this nonsensical behavior is somehow «useful», but have you ever met someone who shares this opinion? Everyone seems to hate it.

1 Like

The ‘smaller’ and ‘bigger’ connotations are wrong, I grant you that. It should just be scale and reverse scale.

So, you would input 25% and hit the scale button.

I tried out different things, but it never occurred to me to enter «25%». I am not scaling by 25%, I am scaling by 75%. You are treating this as additive whereas it is multiplicative.

Again — have you ever met anyone who liked this system, apart from you? Are you building the UX for yourselves or for your users? :roll_eyes:

I also find it really confusing that the Transform > Scale menu behaves differently from the identically named Transform > Scale toolbar. One would expect both to be calls to the same function.

So, you would input 25% and hit the scale button.

Actually, entering 25% and clicking «scale» and «reverse scale» gives me 125% and 80%, respectively, not 75%… it should be –25% and «scale». See how counterintuitive that is? :stuck_out_tongue_winking_eye:

The reverse scale is supposed to do the opposite of the scale transformation. The idea is that you can scale, apply some changes, and then reverse-scale back again, without needing to calculate what the percentage has to be.

I grant you that the plus and minus are misleading, or what you call counter-intuitive. It should be a general scale button, e.g., a diagonal double arrow, and the reverse-scale symbol with an a ccw undo arrow.

I have to agree with @mekkablue on this. Scaling up by 25% is multiplying by 1.25, so scaling down by 25% should be dividing by the same 1.25. Intuitively, these two operations want to be multiplicative inverses, as they indeed are in Glyphs.

If you want to end up at 75% of the original 100%, you need to scale ‘down’ by 1/.75 or 33%. And in order to ‘undo’ this would mean scaling up by the same 33%. Makes perfect sense to me, far more so than what many other design apps provide in that the arithmetic in Glyphs is intuitively invertible.

On the other hand, your point is well taken. The way that Glyphs does this is perhaps not what many people expect. But I do think it only fair to point out that there are some of us out here who believe that Glyphs does do this the right way.

That’s literally not what the word «scaling» means. Scaling something by a factor means multiplying by that factor. Thus, scaling something by 25% means multiplying by 0.25. This is what commonly happens in other applications when you do that, and in fact it is what happens in Glyphs if you enter 25% in the scale field in the Transformations menu.

What you’re referring to could be described as enlarging by 25%. This implies an additive change by 25% of the original size. By the same logic, though, shrinking by 25% should subtract 25% of the original size and yield 75%. Again, this is literally how percentages work. Asking the user to perform mental acrobatics to figure out what to type in to get 75% is not user-friendly.

Rainer correctly concluded that the second button should be renamed from «Scale Down» to «Undo». The way to go down to 75% would then be to enter «–25%» in the «Enlarge by» field… still not what most people expect, but at least sort of logical.


What you need to do is using -25% and hit the “+” button.

Just to add my experience as a new Glyphs user. Actual example:

I calculate the vertical scale of small caps by dividing small cap height by cap height, which gives me a number in the range 0-1, this time it was 0.85. This is the number I want to use to scale the paths.

Getting the transform palette to do this was bizarrely confusing! Most apps I’ve used adhere to the paradigm Scale to 85%, so I would type 85 and click Scale and the result would be path(s) that are 85% of the original size.

But how does this work in Glyphs? After being extremely surprised by the behaviour of the transform palette, and finding that typing 15% and clicking what I took to be the “scale down by” button didn’t work right, I ended up calculating the inverse value of 85% which is 17.647058823529412 and that finally worked.

Now, having ready Georg’s comment above, I know I could have entered -15 and click the “scale up by” button, but this didn’t occur to me at the time. I will definitely do this next time! (Additionally, it’s cool that I can type <value>*0.85 in the dimension fields to scale to 85%, but doesn’t work for multiple glyphs.)

I’m new to Glyphs, and I can’t know what most users expect. I’m certainly in the camp that found this behaviour unexpected to say the least, and confusing.

I recall a technique involving a “scaling sandwich”… scaling a path to, say, 100% horizontal and, say, 10000% vertical, then performing an offsetting and further scaling, then scaling back to the original size, which would achieve something like condensing or extending a glyph without altering it’s weight. If this kind of technique is why the inverse-able transform paradigm is used in glyphs, then my question is: how often does the average user need the “scale sandwich”? Maybe better for a filter rather than the basic palette?

Anyway, I know how to use it now.

I just noticed a typo in the Glyphs 2.3 Handbook. Page 54, the breakout text at left, incorrectly describes how to “scale down all coordinates by half” by entering 50% and clicking upscale button. Should be “-50%” I think.

While Reversible Transformations are cool, I think maybe putting the reversible scale buttons somehow in an “advanced” pop-up menu or something might be a better approach. They just seem too unintuitive to me, and I would guess to most people who are used to other software. I’ll shut up now. :slight_smile: