Another Bad Update

Let me preface this with I know what you were trying to accomplish with changing the code that broke withPointSize. Pixels are not points and you're trying to get it correct. The problem is you can't do things like what is below. If you want to make this change for the future, then create a new fuction that mapped points to the DPI of the screen. Yes Apple and iOS are redefining screen resolutions and pixels versus points, but don't break what we have already working.

I have to tell you that I am pretty pissed and it was a mistake to use Juce for a major project. I have work on a project for over two years and have struggled with Juce's constant updates that break previous working code. I am within three weeks of going into testing and I accidentally updated the modules trying to get the juce demo plugin to compile to test something else. Of course after updating I had to make the changes that Juce always forces us to make. Then I find out the text size is screwed up again. Jules do you ever test?????????? I worked with OS6, OS7, OS8, OS9 and MFC for over twenty years and never had problems like this. Now OSX is a different story. What a nightmare. You can complain about Microsoft, but the one thing for sure is they believe in backward compatibility. Take a lesson, Jules.

Here is text with Juce 2   and with Juce 3 it looks like this    

 

Tell me how am I supposed to fix this at the end of a long project using the current juce 3.0.5. Text accuracy is very important.

Yes I have backups of Juce 2, but do I have to go through this every time you make a change that is not needed and surely is not tested. This is the third time in two years you have messed up the font sizes. Because of the way Juce is constructed I have to update just about every module when a fix is made in another module.

BTW, Jules you were incorrect on blaming Apple for your inaccurate character widths on Symbol fonts. Symbol fonts do not have accurate kerning tables and therefore kerning tables should not be used for get character widths. You need to get them from the glyhs themselves. Juce should have a routinne getCharacterWidth along with getStringWidth. Character widths are different from string widths.

This kind of crap has cost me way too much time. 

The way the point sizes are done now is correct AFAICT, and yes, of course I test things.

I'm sorry that you must have written your app to work-around the way the old code handled point size (which I guess must have been incorrect, I can't remember the details), but complaining that I've changed the code to make things work properly isn't really a fair criticism!