mirror of
https://gitlab.freedesktop.org/freetype/freetype.git
synced 2026-05-16 16:48:07 +02:00
Add necessary functions to reconstruct loca and hmtx tables (the 2 remaining tables that can have a transform). `woff2_open_font' is now capable of loading a woff2 font face. This code may still need more refining and better memory management. * include/freetype/internal/wofftypes.h (WOFF2_HeaderRec): Add total (final) size of sfnt stream. (WOFF2_InfoRec): Add header checksum value. * src/sfnt/sfobjs.c (sfnt_open_font): Change `face_instance_index' parameter to its pointer so its value can be modified by `woff2_open_font'. * src/sfnt/sfwoff2.c: (WRITE_SFNT_BUF_AT): New macro to write into sfnt buffer at given position. (write_buf): Add parameter `extend_buf' which allows caller to specify whether buffer should be reallocated before copying data. Modify macro `WRITE_SFNT_BUF' accordingly. (pad4): New function to pad buffer to closest multiple of 4. (store_loca): Store loca values (provided by `reconstruct_glyf') to output stream. (reconstruct_glyf): Calculate loca values and store them. (reconstruct_hmtx): Reconstruct transformed hmtx table. (reconstruct_font): Call `reconstruct_hmtx', write table record entries, and calculate table checksums. Also calculate font checksum and update `checksumAdjustment' entry in head table. (woff2_open_font): Open stream for sfnt buffer, swap out input stream and return. * src/sfnt/sfwoff2.h (woff2_open_font): Modify parameter to accept pointer to `face_index'. |
||
|---|---|---|
| .. | ||
| freetype | ||
| ft2build.h | ||