Forgot your password?

typodupeerror

Comment: Re:I wrote a CFF renderer in C# (Score 1) 77

by anss123 (#43631595) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType

but they were probably quite big on the "C" in the "CFF"

My impression is that the TrueType guys obsessed about file size. Every table has its own structure, which is more compact than CFF's "one size fits all" approach.

Type1 is the most complex container. I can easily make a T1 font that is valid but unparsable by common parsers. Not sure what Adobe was thinking there.

(and now you can even download them together with web pages)

The web fonts that are getting popular now are basically just TrueType with the tables ordered in a sensible sequence and some compression added (though you can embed a CFF font into a WOFF container, but I've yet to encounter such a font... I don't know how to handle subroutines when a CFF font is embedded in a TrueType container, so I'm a bit interested in getting my hand on such a font so that I can add support for it in my renderer.)

Comment: Re:I wrote a CFF renderer in C# (Score 2) 77

by anss123 (#43631431) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType
It's a very simple format. Just define a couple of structs, and implement a few commands, and it spits out the relevant font data in a nice "dictionary" like struct. Compare that with Type 1, where you need to write either a fuzzy parser or (what I did) a post script interpreter. TrueType is even worse, needing numerous parsers as each table is in its own unique format.

So no metacompiling, but a pleasant surprise after having struggled through the other two and done in a tenth of the time. The only stumbling block for parsing CFF is encryption (the charstrings are encrypted in a lame attempt to stop people from writing their own renderers), but the documentation now contains all the info you need to handle that.

Comment: Re:Meh , fonts. Big deal. (Score 4, Informative) 77

by anss123 (#43631071) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType
The problem with bitmapped fonts were never that they look bad, but they are difficult to scale to different font sizes. Say, if you got a bitmapped font with the sizes for 8pt and 12pt embedded, but you need them at 9.5pt, then you're stuck with using a image scaling algorithm.

TrueType/CFF are based on vectors, and saying that we don't need vector based fonts is a bit like saying that we don't need SVG since we got PNG.

Comment: Re:I wrote a CFF renderer in C# (Score 2) 77

by anss123 (#43631037) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType
Shouldn't be. Hinting is really just a hack to make fonts look good when you only have a handful of pixels to draw with.

However asian true type fonts often abuse the hinting engine. I.e if you render them unhinted they don't render fully (True type hints are Turing complete programs, with all the ills that bring).

Comment: Re:I wrote a CFF renderer in C# (Score 4, Informative) 77

by anss123 (#43630895) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType
In cff files there are commands that that describes the elements of a glyph. This is used to determine what is important when rendering fonts at small sizes. For instance you don't want the hole in the "A" character to disappear at smaller sizes.

True type files have small programs that you execute when rendering at small sizes that moves the points that makes up the glyph. CFF and Type1 has commands like "stemv" that describes a vertical stem, and then it's up to the renderer to best figure out what to do.

Type3 fonts have no hinting, and is often thought of as ugly for that reason, but with sufficient DPI they are just as good looking as any other type of font. They are a bit more annoying to render than Type 1 fonts, as they can contain color and even pattern fills, but AFAIK is not used much. My renderer can handle them too, except if they contain transparencies (AFAIK none do).

Comment: I wrote a CFF renderer in C# (Score 4, Interesting) 77

by anss123 (#43630813) Attached to: Google and Adobe Contribute Open Source Rasterizer to FreeType
The big headache with rendering CFF is the hinting. I just ignored the hints, which gave okay result with 12+ font sizes. But without proper hinting small font sizes quickly become unclear.

CFF is very similar to Type1 fonts, so presumably this will also result in better looking Type1 fonts. Basically CFF is a compact way of storing Type1 fonts. I particularly liked how the CFF container format works. It almost parses itself, type1 fonts take more effort to parse, and true type fonts take a lot more effort to parse (but non-hinted true type rendering is OTOH super easy.)

Comment: Re:It's a mobile sensor and communications platfor (Score 1) 257

by anss123 (#43444865) Attached to: What's Next For Smartphone Innovation

- A good (near-medical quality) heartrate monitor is doable right now, but would benefit from better color detection in the camera and for Android, a better API. It only works on iPads right now.

I got an app called "instant heart rate" on my Lumia 920. It's free but does appear to work pretty well, and it's easy to use.

According to the website (www.azumio.com) it's also on iOS devices. Don't know if it's near medical quality though.

Comment: Re:I've been playing it since yesterday. (Score 1) 149

by anss123 (#43289535) Attached to: <em>BioShock: Infinite</em> Released

The plot line is better than Bioshock and the world is friggen awesome.

Solid 10 so far.

If Bioshock 1 is a 10 I give Infinite a 8. Both the plot and the gameplay is a step back. The game is better than I expected though.

Anyone else creeped out by the facial animations? They're freakish. Bioshock 1 too had poor character animation, but there they hid it with dim lighting. Besides the poor animation I've also seen characters walk through tables or throws stuff through walls. There's apparently no hit detection when an animation plays. Elizabeth also clearly have the ability to teleport when you're not watching, just turn around and she's there. A bit like Dr. Watson.

Comment: I pledged $60 to project Giana (Score 3, Informative) 86

by anss123 (#41430109) Attached to: When Kickstarter Projects Go Missing
And for that I get the game, soundtrack and art book in a jewel case. Shipping is free, and had I pledged more I could have gotten more stuff. Had the kickstarter failed to be founded, I would have paid nothing.

This particular project has a good chance of delivering, having already made a working demo of the game, so the $60 was not much different that preordering some limited edition of the next CoD game. Without kickstarter this game would never have been made, so in my eyes kickstarter have served a purpose that no other service I know of could have managed.

Naturally there's always a chance they will take their money and run, but the last $60 CoD game I bought was absolute garbage (despite stellar reviews), so there's always a bit of risk involved no matter how you spend your hard earned coin. It may not be a risk you are willing to take, but fortunately plenty of folks are, and thus project like Giana can see the light of day.

Comment: Re:pfffffft (Score 1) 231

by anss123 (#41369505) Attached to: Apple iPad 2 As Fast As the Cray-2 Supercomputer
LINPACK is highly parallel. I.e. why I stated "LINPACK like workloads".

How useful LINPACK is to super computers isn't within my field of expertise, but if Arm is truly better on a performance per watt scale and some other constraint don't step in, then it does not matter how much faster a single chip is than the arm solution, as one can just add more arms (for LINPACK like workloads).

I'm somewhat skeptical to that article, reads too much like an advertisement, but the results may still be significant for the super computer landscape.

The bug starts here.

Working...