Update VLWCompress\readme.md
This commit is contained in:
		
							parent
							
								
									9393f05fdc
								
							
						
					
					
						commit
						90812ea857
					
				|  | @ -3,41 +3,46 @@ | |||
| Used to transform 8bit VLW file into 4bit VLW file with no padding support. | ||||
| 
 | ||||
| **Advantage**:  It will save at least 50% space. | ||||
| 
 | ||||
| **Limitation**: Fonts that height over 255 are not being generated properly. | ||||
| 
 | ||||
| To Compile,run the command below: | ||||
|      | ||||
| 	Windows(MinGW needed): `gcc vlwcompress.c -o vlwcompress.exe` | ||||
| 	Linux  (GCC needed):   `gcc vlwcompress.c -o vlwcompress` | ||||
| Windows(MinGW needed): `gcc vlwcompress.c -o vlwcompress.exe` | ||||
| Linux  (GCC needed):   `gcc vlwcompress.c -o vlwcompress` | ||||
| 	 | ||||
| 	 | ||||
| #### Compressed Font format  | ||||
| 
 | ||||
| 
 | ||||
| Header of vlw file is the same as uncompressed;it comprises 6 uint32_t parameters (24 bytes total): | ||||
|       1. The gCount (number of character glyphs) | ||||
|       2. A version number (0xB = 11 for uncompressed,0XC = 12 for compressed 4bit) | ||||
|       3. The font size (in points, not pixels) | ||||
|       4. Deprecated mboxY parameter (typically set to 0) | ||||
|       5. Ascent in pixels from baseline to top of "d" | ||||
|       6. Descent in pixels from baseline to bottom of "p" | ||||
|        | ||||
| 1. The gCount (number of character glyphs) | ||||
| 2. A version number (0xB = 11 for uncompressed,0XC = 12 for compressed 4bit) | ||||
| 3. The font size (in points, not pixels) | ||||
| 4. Deprecated mboxY parameter (typically set to 0) | ||||
| 5. Ascent in pixels from baseline to top of "d" | ||||
| 6. Descent in pixels from baseline to bottom of "p" | ||||
| 
 | ||||
|     Next are gCount sets of values for each glyph(8 bytes): | ||||
|       1. (16 bits) Glyph Unicode | ||||
|       2. (8 bits)  Height of bitmap bounding box | ||||
|       3. (8 bits)  Width of bitmap bounding box    | ||||
|       4. (8 bits)  gxAdvance for cursor (setWidth in Processing) | ||||
|       5. (16 bits) dY = distance from cursor baseline to top of glyph bitmap (signed value +ve = up) | ||||
|       6. (8 bits)  dX = distance from cursor to left side of glyph bitmap (signed value -ve = left) | ||||
| Next are gCount sets of values for each glyph(8 bytes): | ||||
|        | ||||
| 1. (16 bits) Glyph Unicode | ||||
| 2. (8 bits)  Height of bitmap bounding box | ||||
| 3. (8 bits)  Width of bitmap bounding box    | ||||
| 4. (8 bits)  gxAdvance for cursor (setWidth in Processing) | ||||
| 5. (16 bits) dY = distance from cursor baseline to top of glyph bitmap (signed value +ve = up) | ||||
| 6. (8 bits)  dX = distance from cursor to left side of glyph bitmap (signed value -ve = left) | ||||
| 
 | ||||
|     The bitmaps start next at 24 + (8 * gCount) bytes from the start of the file. | ||||
|     Each pixel is 0.5 byte, an 4 bit Alpha value which represents the transparency from | ||||
|     0xF foreground colour, 0x0 background.When a line consist of odd number of pixels,the last byte  | ||||
| 	for the last pixel of the line will be filled with 0 as low 4 bits. | ||||
| 	4 bits alpha value will be generated to 8 bits before drawing. | ||||
| The bitmaps start next at 24 + (8 * gCount) bytes from the start of the file. | ||||
| Each pixel is 0.5 byte, an 4 bit Alpha value which represents the transparency from  | ||||
| 0xF foreground colour, 0x0 background.When a line consist of odd number of pixels,the last byte  | ||||
| for the last pixel of the line will be filled with 0 as low 4 bits. | ||||
| 4 bits alpha value will be converted to 8 bits before drawing. | ||||
| 
 | ||||
|     After the bitmaps is (Not modified): | ||||
|        1 byte for font name string length (excludes null) | ||||
|        a zero terminated character string giving the font name | ||||
|        1 byte for Postscript name string length | ||||
|        a zero/one terminated character string giving the font name | ||||
|        last byte is 0 for non-anti-aliased and 1 for anti-aliased (smoothed) | ||||
| After the bitmaps is (Not modified): | ||||
| 
 | ||||
| - 1 byte for font name string length (excludes null) | ||||
| - a zero terminated character string giving the font name | ||||
| - 1 byte for Postscript name string length | ||||
| - a zero/one terminated character string giving the font name | ||||
| - last byte is 0 for non-anti-aliased and 1 for anti-aliased (smoothed) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Lucy2003
						Lucy2003