Closed leandrosilva closed 7 years ago
okay, I had to take a moment to figure out what to write here, so: this feels fine, there are no metrics you need for 250 that you can't get by simply multiplying the metrics for 50 by 5, or for 100 by 2.5. As a professional software engineer doing full-stack web work, I am literally stumped as to why would you ever need font size 250 in a web context, where Font.js might be useful. What were you doing to run into this?
On a practical reason on why this is: Font.js builds a canvas sized roughly proportional to the font size, draws your text, then does a scanline measurement, so if your text is too big, it literally won't fit on that canvas (we can't make it too big because that'll suck up memory like nobody's business) and so the metrics are just "the dimensions of the canvas we tried to use". The jump from 183 to 1020 suggests that the font size and text chosen lead to new measurements. (the text might not fit on the canvas and so you might also run into characters falling off the canvas giving you erroneous readings).
You might want to try the (far more) modern opentype.js library, linked in the README.md
Thanks for your reply, sir.
For my use case, as a professional software engineer, I know how to solve. That's fine. But as a user of an open source lib, I felt like I should share the problem that I faced in order to let other users to know, specially the main maintainers, so it might bring in a general solution for the lib, if and only if it makes any sense for the lib and its other users and main maintainers.
Trust me when I say I need to use a font size bigger than 250 pt. I am developing an advertize system that's web based but its outputs are PDF files quite big.
Again, thanks for your time and attention.
The library is already indicated as deprecated, though, so while the idea of filing the issue is honorable, this library is not going to receive any updates: the README.md already mentions that people will want to use OpenType.js instead for modern font metrics etc. work.
Certainly for your use case (you are not creating web pages at all, you are creating PDF files by way of HTML) you don't want Font.js at all, you want the full OpenType parser instead.
Hi, guys.
I got this issue when trying to measure text with font size bigger than 250 pt.
Here is a sample...
fontSize: 235 fontMetrics.height: 172
fontSize: 240 fontMetrics.height: 176
fontSize: 245 fontMetrics.height: 180
fontSize: 250 fontMetrics.height: 183
fontSize: 255 fontMetrics.height: 1020
fontSize: 260 fontMetrics.height: 1040
fontSize: 265 fontMetrics.height: 1060
Thanks.