Al-Qurtas-Islamic-bank-The-.../include/freetype
Moazin Khatti f93a897afe Add code to load OT-SVG glyph documents.
* include/freetype/config/ftheader.h (FT_OTSVG_H): New macro.
* include/freetype/freetype.h (FT_FACE_FLAG_SVG, FT_HAS_SVG): New macros.
(FT_LOAD_SVG_ONLY): New internal macro.
* include/freetype/ftimage.h (FT_Glyph_Format): New enumeration value
`FT_GLYPH_FORMAT_SVG`.
* include/freetype/internal/ftobjs.h (FT_GLYPH_OWN_GZIP_SVG): New macro.
* include/freetype/internal/fttrace.h: Add `ttsvg` for `ttsvg.c`.
* include/freetype/internal/sfnt.h(load_svg, free_svg, load_svg_doc): New
functions.
* include/freetype/internal/tttypes.h (TT_FaceRec): Add `svg` for
the SVG table.
* include/freetype/otsvg.h (FT_SVG_DocumentRec): New structure to hold the
SVG document and other necessary information of an OT-SVG glyph in a glyph
slot.
* include/freetype/tttags.h (TTAG_SVG): New macro.

* src/base/ftobjs.c: Include `otsvg.h`.
(ft_glyphslot_init): Allocate `FT_SVG_DocumentRec` in `slot->other`
if the SVG table exists.
(ft_glyphslot_clear): Free it upon clean-up if it is a GZIP compressed
glyph.
(ft_glyphslot_done): Free the document data if it is a GZIP compressed
glyph.
(FT_Load_Glyph): Don't auto-hint SVG documents.

* src/cache/ftcbasic.c (ftc_basic_family_load_glyph): Add support for
FT_GLYPH_FORMAT_SVG.

* src/sfnt/rules.mk (SFNT_DRV_SRC): Add `ttsvg.c`.
* src/sfnt/sfdriver.c: Include `ttsvg.h`.
(sfnt_interface): Add `tt_face_load_svg`, `tt_face_free_svg` and
`tt_face_load_svg_doc`.
* src/sfnt/sfnt.c: Include `ttsvg.c`.
* src/sfnt/sfobjs.c (sfnt_load_face, sfnt_done_face): Add code to load and
free data of the the SVG table.
* src/sfnt/ttsvg.c: New file, implementing `tt_face_load_svg`,
`tt_face_free_svg` and `tt_face_load_svg_doc`.
* src/sfnt/ttsvg.h: Declarations of the SVG functions in
`ttsvg.c`.
2022-01-20 16:45:18 +00:00
..
config Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
internal Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
freetype.h Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
ftadvanc.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftbbox.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftbdf.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftbitmap.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftbzip2.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftcache.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftchapters.h [base] Add public API to change the levels of tracing components. 2020-12-01 09:25:53 +01:00
ftcid.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftcolor.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftdriver.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
fterrdef.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
fterrors.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftfntfmt.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftgasp.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftglyph.h Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
ftgxval.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftgzip.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftimage.h Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
ftincrem.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftlcdfil.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftlist.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftlogging.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftlzw.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftmac.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftmm.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftmodapi.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftmoderr.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftotval.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftoutln.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftparams.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftpfr.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftrender.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftsizes.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftsnames.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftstroke.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftsynth.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftsystem.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
fttrigon.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
fttypes.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ftwinfnt.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
otsvg.h Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00
t1tables.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
ttnameid.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
tttables.h Update all copyright notices. 2022-01-11 10:54:10 +01:00
tttags.h Add code to load OT-SVG glyph documents. 2022-01-20 16:45:18 +00:00