Font library (Rasterworks)

Discussing libraries simplifying applications development
  • Are you going to develop web browser? Soon, the system fonts might fit most of requirements...
  • Pathoswithin wrote:Are you going to develop web browser? Soon, the system fonts might fit most of requirements...
    I have been developing it on and off for some time now.
    You can find some screenshots here. I have some free time coming up and would like to get this project to the 'usable' state.

    It is important for me that drawing text happens fast, in the off-screen buffer. (A library with the font loaded in shared memory.)
    Putting this in kernel is not a good idea IMHO.

    PS: 'most' of the requirements is not enough to earn my money :wink:
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Its not about money, its about what you can use (not many programmers here, you know), I am doing it anyway:
    1. Fast 32bpp buffer output.
    2. Integer scaling.
    3. ClearType for not scaled.
    +
    4. About those raster unicode fonts, what format they have?
    5. I think, I can manage free scaling, bold and italic program effects as outer library.
  • this free font is distributed in BDF format.
    According to wikipedia, it's a font format by adobe.
    Of course, it can be converted to whatever format suits best.

    This font is not 'scalable' and thus comes in many sizes (which can not all fit on the floppy).
    But I think that one font size + your AEB scaling algorithm will give acceptable results.

    Forum user Seppe has done some work on unicode rasterfonts as well, but the resulting font files are too big for the main image..
    viewtopic.php?f=23&t=2771
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • I wander, what format those urf have? Under HEX looks like there are some service symbols, so their size is far from minimal. BDF format is very similar to our, the only problem is to restore right char order. How many unicode symbols you need? Can Seppe provide some developments to recompile BDF/urf?
  • Urf format (1 and 2) specifications can be found on his ftp folder.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • I found it, at last. Now I can... Oh shi
    Looks like Seppe knows how to make things... more complex, and more violent. BDF than.
    So, there is nothing better than uw-ttyp0? Final decision? Which size than? Current system font is 9 x(5+1), x2 will be 18 x(10+2). So we need something intermediate, but these have different proportions: 12 x(5+1) — 18 x(8+1)
  • Advantage of uw-ttyp0 is that it's readily available in easy to convert format. Disadvantage is that it's monospaced (harder to read) and not every unicode character is available.

    What I had in mind is some basic bitmap font (lets say 12 pixels in height) that can be scaled using AEB (be it on the fly, or pre-buffered).
    I could also ask Seppe for the raw bitmaps he captured from an open truetype font.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • For me 12 is too small.
    Maybe 14 or 16 height?

    Here is an example of 16 height fonts.
    Attachments
    FNAV_FNT.PNG
    FNAV_FNT.PNG (6.36 KiB)
    Viewed 13825 times

    [The extension bmp has been deactivated and can no longer be displayed.]

    Из хаоса в космос
  • Well, it all depends how good a 12 scales to a 14 or 16..
    Your example looks too high (or maybe just too fat) for me, but I must admit, my default font in browser is "Times new roman" at size 16.
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • So, you need Unicode font with characters from cp1251 and cp1252? Some characters will be about № 2xxx, right? So there will gaps in the font anyway? I need to imagine the font map. And, which characters should be 128 — 255?
  • Latest Unicode revisions have more then 100 000 characters, it would be insane to implement all of them, don't you think?
    We must make a selection of most needed characters, so there must indeed be gaps in the font, and preferably not just kilobytes of 0's ;)
    Codepoints 128 to 255 in unicode are called the "latin supplement block" (https://en.wikipedia.org/wiki/Latin-1_S ... e_block%29)

    EDIT: What I want is probably more accurately described as "Latin and Cyrillic unicode blocks". eg "rows" 00, 01 and 04.
    See https://en.wikipedia.org/wiki/Unicode#S ... ed_subsets
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • So 128 to 255 will be same as ISO-8859-1? And what about "General Punctuation (2000–206F)" (presents in cp1251 and cp1252)?
  • Pathoswithin: The whole point of Unicode is assigning an unique code to every possible character. This certain region may resemble ISO-8859-1 but it is not exactly the same.
    Better to forget all about codepages and think unicode instead: http://unicode.org/charts/

    What about "general punctuation"? Do we need it?
    "Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." Albert Einstein
  • Who is online

    Users browsing this forum: No registered users and 8 guests