BitFonter 3 font point and pixel size

How does one determine what to set the various values to in the BitFonter 3 "Font point and pixel size" dialog box?


Answers

  • John Hudson
    John Hudson Posts: 3,544
    I’ve not used BitFonter, but the numbers are going to control bitmap rasterisation. The three number are relative, so my guess is that as you change one or two of the numbers the third one will adjust automatically. You probably want to lock the resolution once you have determined your target resolution, e.g. 96 (this is a pixel-per-inch number, and 96 ppi is used to calculate virtual px units in CSS). Now you have a choice of deciding either the ppm bitmap size—the number of pixels assigned to the height of the body of the font at that resolution at a given point size—, or the point size.

    So, for example, you might decide you want to target a 16 ppm bitmap size, if you enter that value in the first field, the point size field should automatically update to show what that ppm size equals in points at the target resolution (there are 72 points in an inch, so: 72/(96/16)=12pt).

    Or, you might decide you want to target a 20pt type size in the lower field, in which case the ppm bitmap size should automatically update to show how many pixels are available at that point size: 96/(72/20)=27ppm (pixels are always whole units, so rounding occurs).
  • Mark Simonson
    Mark Simonson Posts: 1,766
    edited November 2
    I’ve used BitFonter in the past and what John says is correct. The numbers do change automatically when you change one of them, unless you uncheck the Lock Resolution checkbox (but I can’t think of a reason you’d want to do that). (On second thought, I can. Apple's bitmap fonts for the original Macintosh had a relatively larger PPM than the nominal point size.)
  • Suppose I designed a bitmap font such that the highest filled in pixel is seven pixels above the baseline, the lowest filled in pixel is two pixels below the baseline, and there should be one pixel of empty space between each line. Does that mean that I should set the "Pixel size (PPM)" field to 7 + 2 + 1 = 10 pixels?
  • John Hudson
    John Hudson Posts: 3,544
    Yes, that is correct. You would be designing a 10ppm bitmap font. The point size(s) to which that would correspond would be determined by the resolution.
  • If the largest width happened to be greater than the largest height, would one use that instead?
  • John Hudson
    John Hudson Posts: 3,544
    No. Bitmap size is always determined by height: it is a measure of how many pixels are assigned to the body (em) height. Width is arbitrary.
  • I see. Thank you.

    The manual states "Note that Macintosh screen fonts usually have 72x72 ppi resolution and Windows screen fonts usually have 96x96 ppi resolution.". I would have expected this to be determined by the screen size and display resolution. Is this not the case?
  • John Hudson
    John Hudson Posts: 3,544
    This gets a bit complicated. Notional screen font resolution and actual device resolution are not always the same. Back in the early years of Mac OS and Windows, 72ppi and 96ppi were the most common device resolutionns of those respective systems. So those were the target resolutions used when developing bitmap fonts for those operating systems.

    When screen resolutions began to increase, the operating systems needed to come up with ways to ensure that text in bitmap fonts didn’t just keep getting smaller and smaller until it was unreadable. So operating systems may sometimes scale bitmap fonts, e.g. assigning a square of four device pixels to a font pixel. There are obviously limits to the effectiveness and accuracy of such methods.

    Increasing screen resolution is one of the reasons bitmap fonts fell our of favour. Hinted TrueType provided more flexibility in targeting a wide range of sizes and device resolutions.
  • Mark Simonson
    Mark Simonson Posts: 1,766
    edited November 5
    The 72 ppi resolution of Macintosh screens stated in the manual was correct for the classic Mac OS. With OS X, the nominal resolution of the Mac was changed to 96 ppi, the same as Windows, at least for Mac web browsers. This was done to reduce cross-platform issues for web design.
  • John Hudson
    John Hudson Posts: 3,544
    edited November 5
    With OS X, the nominal resolution of the Mac was changed to 96 ppi, the same as Windows, at least for Mac web browsers. This was done to reduce cross-platform issues for web design.
    That also gets complicated. The CSS reference pixel is usually reckoned as 1/96 inch, but for text this gets interpreted within the unit scaling model used by individual environments. Apple still maintains the notion of equivalence between point and pixel, which is how they manage consistent type size across browsers, desktop, phone and tablets apps. So although in browsers they’re working with a 1/96 inch pixel, that is being interpreted in terms of the system 1/72 inch pixel.

    [This is something that caused a problem in the implementation of the opsz variable font axis, because Apple implemented it in WebKit using px units instead of pt units, which they could do because for them px = pt = 1/72 inch. Other browser makers followed suit, using px even though their environments didn’t have the same equivalence to pt, resulting in incorrect opticall size selection.]

  • I see. Thank you!