Choosing image formats

From OLPC
Revision as of 01:50, 2 June 2006 by Khim (talk | contribs)
Jump to: navigation, search

There are 4 primary image formats that will be used on the OLPC.

SVG
This is an object-oriented drawing format ideally used for drawings created with tools like Inkspace, CorelDraw, CAD software, etc.
JPEG
This is a compression format that is ideally suited to photographs whether they are scanned or photographed on a digital camera. This is a very, very bad choice for scanned text. You can tell when someone has made this mistake because the text is blurry.
PNG
This is the best choice when you have to scan material like line drawings, cartoons, or text. The common factor in all these source materials is that they have a few different shades of color, perhaps only black and white. Even when the scanned original is stained or has shadows on it, you can usually tell your image editor to convert it to a 2-color black and white image (or increase the contrast to maximum) and sharpen the image
The same applies to JPEGs sourced from a digital camera. For instance, if you photograph some text then take the JPEG from the camera and convert it to PNG. This will sharpen the edges of the letters and make it easier to read. In addition you should reduce the size of the image taking into consideration the number of bits available on the screen. The first systems will be 1200 x 900 at 200dpi.
Important note: PNG can waste a lot of space if you'll try to keep full range of 16777216 colors or even 256 shades of gray - and if it's text or diagram all this space will be wasted anyway. Use PNG with color palette instead.
GIF
This format is only usefull for small animations (big ones will chew space on flash-drive too fast). Properly compressed PNG is almost always smaller then GIF. Just use PNG with index (not true color) and don't forget about Pngcrush!

Some other formats can be usefull as well (DJVU, MNG or JPEG 2000) but they do have only limited support in applications and it's not clear if their advantages are worth the pain of non-standard format support. More about it here.