Most of the programs out there which make use of thumbnails use a fixed set of sizes for their thumbnails. Often the user can choose a size from this set. However, there is definitely a need for supporting multiple thumbnail sizes. Because of this we define a set of common used values. Maybe these doesn't cover all cases, but for the sake of a standard an existing program should adapt these.
Table 2. Allowed thumbnail dimension.
| Dimension (width x height) | Descriptive name |
|---|---|
| 48x48 | very small |
| 64x64 | small |
| 96x96 | medium |
| 128x128 | large |
| 144x144 | extra large |
| 160x160 | super large |
| 192x192 | ridiculous large |
A program doesn't need to generate a thumbnail for all sizes. Only for the one it actually needs. The sizes define just a rectangle area where the thumbnail must fit in, so don't scale every image to a rectangle thumbnail but preserve the ratio instead. Also, if an image is smaller than 48x48 pixels it shouldn't be scaled at all, just use the original image.
If a program still wants to use another thumbnail dimension than the ones specified in the table, it can read and write the next bigger one and scales it down to the desired size internally.