Distance calculations for GPOS in G3.2

I’m finding when I write manual GPOS rules, the values need to be precisely double what they should be to achieve the correct results.

In this situation, I want to align the top tone mark on the right side of the vowel. The distance as measured in the edit window should be an adjustment of -103 units, but my mark positioning rule needs to be <-206 0 0 0> to get it aligning correctly. Same with all other similar adjustments.

This is a bug? Or at least it’s not how things used to work.

Confusingly, if we put the values in as $tokens (number values) the correct results are achieved by using the measured (correct) values, not the doubled values.

Can you send me a test file?

1 Like

thanks just messaged

The instances are scaled to 2000 units. The values in the masters are scaled too, but the values in the feature code is not.

1 Like

Gosh, I hadn’t seen the instances are scaled to 2000 upm, I’ll have to check with the publisher why that happened, it seems strange. Anyway, shouldn’t instance values be scaled the same way as master values?

Any values on the instances are scales. But now the manually written feature code.

Yes, but does that make sense? If the UPM is being scaled, the values in the feature code will be wrong if they’re not also scaled the same amount. It’ll get time-consuming to change all the values in the features if the UPM is changed again.

Parsing the feature and replacing all values is tricky. But I’ll see what I can do.

1 Like