cairo 1.12.6-x86-mingw32 → 1.12.7-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of cairo might be problematic. Click here for more details.

Files changed (188) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +1 -1
  3. data/NEWS +24 -0
  4. data/README.rdoc +1 -1
  5. data/Rakefile +57 -14
  6. data/ext/cairo/rb_cairo.h +1 -1
  7. data/ext/cairo/rb_cairo_surface.c +2 -0
  8. data/lib/1.9/cairo.so +0 -0
  9. data/lib/2.0/cairo.so +0 -0
  10. data/lib/2.1/cairo.so +0 -0
  11. data/lib/cairo/papers.rb +24 -0
  12. data/test/test_image_surface.rb +28 -0
  13. data/vendor/local/bin/fc-cache.exe +0 -0
  14. data/vendor/local/bin/fc-cat.exe +0 -0
  15. data/vendor/local/bin/fc-list.exe +0 -0
  16. data/vendor/local/bin/fc-match.exe +0 -0
  17. data/vendor/local/bin/fc-pattern.exe +0 -0
  18. data/vendor/local/bin/fc-query.exe +0 -0
  19. data/vendor/local/bin/fc-scan.exe +0 -0
  20. data/vendor/local/bin/fc-validate.exe +0 -0
  21. data/vendor/local/bin/freetype-config +6 -10
  22. data/vendor/local/bin/libcairo-2.dll +0 -0
  23. data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
  24. data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
  25. data/vendor/local/bin/libfontconfig-1.dll +0 -0
  26. data/vendor/local/bin/libfreetype-6.dll +0 -0
  27. data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
  28. data/vendor/local/bin/libpixman-1-0.dll +0 -0
  29. data/vendor/local/bin/libpng-config +1 -1
  30. data/vendor/local/bin/libpng16-16.dll +0 -0
  31. data/vendor/local/bin/libpng16-config +1 -1
  32. data/vendor/local/bin/libxml2-2.dll +0 -0
  33. data/vendor/local/bin/png-fix-itxt.exe +0 -0
  34. data/vendor/local/bin/pngfix.exe +0 -0
  35. data/vendor/local/bin/xmlcatalog.exe +0 -0
  36. data/vendor/local/bin/xmllint.exe +0 -0
  37. data/vendor/local/bin/zlib1.dll +0 -0
  38. data/vendor/local/etc/fonts/conf.d/30-metric-aliases.conf +259 -53
  39. data/vendor/local/etc/fonts/conf.d/30-urw-aliases.conf +4 -20
  40. data/vendor/local/etc/fonts/conf.d/45-latin.conf +16 -0
  41. data/vendor/local/etc/fonts/conf.d/README +3 -3
  42. data/vendor/local/etc/fonts/fonts.conf +1 -1
  43. data/vendor/local/include/cairo/cairo-gobject.h +4 -0
  44. data/vendor/local/include/cairo/cairo-version.h +1 -1
  45. data/vendor/local/include/fontconfig/fcprivate.h +2 -1
  46. data/vendor/local/include/fontconfig/fontconfig.h +7 -3
  47. data/vendor/local/include/freetype2/{freetype/config → config}/ftconfig.h +105 -13
  48. data/vendor/local/include/freetype2/{freetype/config → config}/ftheader.h +71 -58
  49. data/vendor/local/include/freetype2/{freetype/config → config}/ftmodule.h +0 -0
  50. data/vendor/local/include/freetype2/{freetype/config → config}/ftoption.h +41 -35
  51. data/vendor/local/include/freetype2/{freetype/config → config}/ftstdlib.h +0 -0
  52. data/vendor/local/include/freetype2/{freetype/freetype.h → freetype.h} +83 -40
  53. data/vendor/local/include/freetype2/ft2build.h +42 -0
  54. data/vendor/local/include/freetype2/{freetype/ftadvanc.h → ftadvanc.h} +14 -11
  55. data/vendor/local/include/freetype2/{freetype/ftautoh.h → ftautoh.h} +11 -3
  56. data/vendor/local/include/freetype2/{freetype/ftbbox.h → ftbbox.h} +3 -3
  57. data/vendor/local/include/freetype2/{freetype/ftbdf.h → ftbdf.h} +0 -0
  58. data/vendor/local/include/freetype2/{freetype/ftbitmap.h → ftbitmap.h} +4 -4
  59. data/vendor/local/include/freetype2/{freetype/ftbzip2.h → ftbzip2.h} +0 -0
  60. data/vendor/local/include/freetype2/{freetype/ftcache.h → ftcache.h} +4 -87
  61. data/vendor/local/include/freetype2/ftcffdrv.h +254 -0
  62. data/vendor/local/include/freetype2/{freetype/ftchapters.h → ftchapters.h} +4 -16
  63. data/vendor/local/include/freetype2/{freetype/ftcid.h → ftcid.h} +0 -0
  64. data/vendor/local/include/freetype2/{freetype/fterrdef.h → fterrdef.h} +0 -0
  65. data/vendor/local/include/freetype2/{freetype/fterrors.h → fterrors.h} +0 -0
  66. data/vendor/local/include/freetype2/{freetype/ftgasp.h → ftgasp.h} +0 -0
  67. data/vendor/local/include/freetype2/{freetype/ftglyph.h → ftglyph.h} +5 -5
  68. data/vendor/local/include/freetype2/{freetype/ftgxval.h → ftgxval.h} +5 -5
  69. data/vendor/local/include/freetype2/{freetype/ftgzip.h → ftgzip.h} +48 -1
  70. data/vendor/local/include/freetype2/{freetype/ftimage.h → ftimage.h} +20 -11
  71. data/vendor/local/include/freetype2/{freetype/ftincrem.h → ftincrem.h} +0 -0
  72. data/vendor/local/include/freetype2/{freetype/ftlcdfil.h → ftlcdfil.h} +3 -3
  73. data/vendor/local/include/freetype2/{freetype/ftlist.h → ftlist.h} +6 -6
  74. data/vendor/local/include/freetype2/{freetype/ftlzw.h → ftlzw.h} +0 -0
  75. data/vendor/local/include/freetype2/{freetype/ftmac.h → ftmac.h} +3 -3
  76. data/vendor/local/include/freetype2/{freetype/ftmm.h → ftmm.h} +3 -4
  77. data/vendor/local/include/freetype2/{freetype/ftmodapi.h → ftmodapi.h} +15 -8
  78. data/vendor/local/include/freetype2/{freetype/ftmoderr.h → ftmoderr.h} +0 -0
  79. data/vendor/local/include/freetype2/{freetype/ftotval.h → ftotval.h} +3 -3
  80. data/vendor/local/include/freetype2/{freetype/ftoutln.h → ftoutln.h} +16 -7
  81. data/vendor/local/include/freetype2/{freetype/ftpfr.h → ftpfr.h} +0 -0
  82. data/vendor/local/include/freetype2/{freetype/ftrender.h → ftrender.h} +0 -0
  83. data/vendor/local/include/freetype2/{freetype/ftsizes.h → ftsizes.h} +2 -2
  84. data/vendor/local/include/freetype2/{freetype/ftsnames.h → ftsnames.h} +3 -3
  85. data/vendor/local/include/freetype2/{freetype/ftstroke.h → ftstroke.h} +0 -0
  86. data/vendor/local/include/freetype2/{freetype/ftsynth.h → ftsynth.h} +2 -2
  87. data/vendor/local/include/freetype2/{freetype/ftsystem.h → ftsystem.h} +0 -0
  88. data/vendor/local/include/freetype2/{freetype/fttrigon.h → fttrigon.h} +0 -0
  89. data/vendor/local/include/freetype2/ftttdrv.h +170 -0
  90. data/vendor/local/include/freetype2/{freetype/fttypes.h → fttypes.h} +3 -3
  91. data/vendor/local/include/freetype2/{freetype/ftwinfnt.h → ftwinfnt.h} +4 -3
  92. data/vendor/local/include/freetype2/{freetype/ftxf86.h → ftxf86.h} +2 -2
  93. data/vendor/local/include/freetype2/{freetype/t1tables.h → t1tables.h} +0 -0
  94. data/vendor/local/include/freetype2/{freetype/ttnameid.h → ttnameid.h} +2 -2
  95. data/vendor/local/include/freetype2/{freetype/tttables.h → tttables.h} +24 -14
  96. data/vendor/local/include/freetype2/{freetype/tttags.h → tttags.h} +5 -1
  97. data/vendor/local/include/freetype2/{freetype/ttunpat.h → ttunpat.h} +0 -0
  98. data/vendor/local/include/libpng16/png.h +30 -12
  99. data/vendor/local/include/libpng16/pngconf.h +2 -1
  100. data/vendor/local/include/libpng16/pnglibconf.h +3 -3
  101. data/vendor/local/include/pixman-1/pixman-version.h +3 -3
  102. data/vendor/local/include/pixman-1/pixman.h +1 -1
  103. data/vendor/local/include/png.h +30 -12
  104. data/vendor/local/include/pngconf.h +2 -1
  105. data/vendor/local/include/pnglibconf.h +3 -3
  106. data/vendor/local/lib/fontconfig.def +2 -1
  107. data/vendor/local/lib/libcairo-gobject.a +0 -0
  108. data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
  109. data/vendor/local/lib/libcairo-gobject.la +3 -3
  110. data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
  111. data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
  112. data/vendor/local/lib/libcairo-script-interpreter.la +3 -3
  113. data/vendor/local/lib/libcairo.a +0 -0
  114. data/vendor/local/lib/libcairo.dll.a +0 -0
  115. data/vendor/local/lib/libcairo.la +3 -3
  116. data/vendor/local/lib/libfontconfig.a +0 -0
  117. data/vendor/local/lib/libfontconfig.dll.a +0 -0
  118. data/vendor/local/lib/libfontconfig.la +3 -3
  119. data/vendor/local/lib/libfreetype.a +0 -0
  120. data/vendor/local/lib/libfreetype.dll.a +0 -0
  121. data/vendor/local/lib/libfreetype.la +3 -3
  122. data/vendor/local/lib/libpixman-1.a +0 -0
  123. data/vendor/local/lib/libpixman-1.dll.a +0 -0
  124. data/vendor/local/lib/libpixman-1.la +4 -4
  125. data/vendor/local/lib/libpng.a +0 -0
  126. data/vendor/local/lib/libpng.dll.a +0 -0
  127. data/vendor/local/lib/libpng.la +2 -2
  128. data/vendor/local/lib/libpng16.a +0 -0
  129. data/vendor/local/lib/libpng16.dll.a +0 -0
  130. data/vendor/local/lib/libpng16.la +2 -2
  131. data/vendor/local/lib/libxml2.a +0 -0
  132. data/vendor/local/lib/libxml2.dll.a +0 -0
  133. data/vendor/local/lib/libz.a +0 -0
  134. data/vendor/local/lib/libz.dll.a +0 -0
  135. data/vendor/local/lib/pkgconfig/cairo-fc.pc +1 -1
  136. data/vendor/local/lib/pkgconfig/cairo-ft.pc +1 -1
  137. data/vendor/local/lib/pkgconfig/cairo-gobject.pc +1 -1
  138. data/vendor/local/lib/pkgconfig/cairo-pdf.pc +1 -1
  139. data/vendor/local/lib/pkgconfig/cairo-png.pc +1 -1
  140. data/vendor/local/lib/pkgconfig/cairo-ps.pc +1 -1
  141. data/vendor/local/lib/pkgconfig/cairo-script.pc +1 -1
  142. data/vendor/local/lib/pkgconfig/cairo-svg.pc +1 -1
  143. data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +1 -1
  144. data/vendor/local/lib/pkgconfig/cairo-win32.pc +1 -1
  145. data/vendor/local/lib/pkgconfig/cairo.pc +3 -3
  146. data/vendor/local/lib/pkgconfig/fontconfig.pc +6 -4
  147. data/vendor/local/lib/pkgconfig/freetype2.pc +4 -4
  148. data/vendor/local/lib/pkgconfig/libpng.pc +1 -1
  149. data/vendor/local/lib/pkgconfig/libpng16.pc +1 -1
  150. data/vendor/local/lib/pkgconfig/pixman-1.pc +1 -1
  151. data/vendor/local/share/fontconfig/conf.avail/30-metric-aliases.conf +259 -53
  152. data/vendor/local/share/fontconfig/conf.avail/30-urw-aliases.conf +4 -20
  153. data/vendor/local/share/fontconfig/conf.avail/45-latin.conf +16 -0
  154. data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +1 -1
  155. data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +1 -1
  156. data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +1 -1
  157. data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +3 -3
  158. data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +3 -3
  159. data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +6 -6
  160. data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +3 -3
  161. data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +8 -8
  162. data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +3 -3
  163. data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +14 -14
  164. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +1 -1
  165. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +5 -5
  166. data/vendor/local/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html +0 -8
  167. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +1 -1
  168. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +1 -1
  169. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +3 -3
  170. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +4 -4
  171. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +2 -2
  172. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +31 -31
  173. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +11 -11
  174. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +13 -13
  175. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +8 -8
  176. data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +11 -11
  177. data/vendor/local/share/gtk-doc/html/cairo/index.html +1 -1
  178. data/vendor/local/share/license/fontconfig/README +83 -2
  179. data/vendor/local/share/license/freetype/README +5 -5
  180. data/vendor/local/share/license/freetype/README.git +5 -1
  181. data/vendor/local/share/license/libpng/README +18 -18
  182. data/vendor/local/share/man/man3/libpng.3 +136 -54
  183. data/vendor/local/share/man/man3/libpngpf.3 +2 -2
  184. data/vendor/local/share/man/man5/png.5 +1 -1
  185. metadata +74 -80
  186. data/vendor/local/etc/fonts/fonts.conf.bak +0 -155
  187. data/vendor/local/include/freetype2/freetype/ftcffdrv.h +0 -150
  188. data/vendor/local/include/ft2build.h +0 -61
@@ -38,9 +38,9 @@ FT_BEGIN_HEADER
38
38
  /* library from a single source directory. */
39
39
  /* */
40
40
  /* - You can put a copy of this file in your build directory, more */
41
- /* precisely in `$BUILD/freetype/config/ftoption.h', where `$BUILD' */
42
- /* is the name of a directory that is included _before_ the FreeType */
43
- /* include path during compilation. */
41
+ /* precisely in `$BUILD/config/ftoption.h', where `$BUILD' is the */
42
+ /* name of a directory that is included _before_ the FreeType include */
43
+ /* path during compilation. */
44
44
  /* */
45
45
  /* The default FreeType Makefiles and Jamfiles use the build */
46
46
  /* directory `builds/<system>' by default, but you can easily change */
@@ -51,7 +51,7 @@ FT_BEGIN_HEADER
51
51
  /* locate this file during the build. For example, */
52
52
  /* */
53
53
  /* #define FT_CONFIG_OPTIONS_H <myftoptions.h> */
54
- /* #include <freetype/config/ftheader.h> */
54
+ /* #include <config/ftheader.h> */
55
55
  /* */
56
56
  /* will use `$BUILD/myftoptions.h' instead of this file for macro */
57
57
  /* definitions. */
@@ -59,7 +59,7 @@ FT_BEGIN_HEADER
59
59
  /* Note also that you can similarly pre-define the macro */
60
60
  /* FT_CONFIG_MODULES_H used to locate the file listing of the modules */
61
61
  /* that are statically linked to the library at compile time. By */
62
- /* default, this file is <freetype/config/ftmodule.h>. */
62
+ /* default, this file is <config/ftmodule.h>. */
63
63
  /* */
64
64
  /* We highly recommend using the third method whenever possible. */
65
65
  /* */
@@ -214,6 +214,20 @@ FT_BEGIN_HEADER
214
214
  /* #define FT_CONFIG_OPTION_DISABLE_STREAM_SUPPORT */
215
215
 
216
216
 
217
+ /*************************************************************************/
218
+ /* */
219
+ /* PNG bitmap support. */
220
+ /* */
221
+ /* FreeType now handles loading color bitmap glyphs in the PNG format. */
222
+ /* This requires help from the external libpng library. Uncompressed */
223
+ /* color bitmaps do not need any external libraries and will be */
224
+ /* supported regardless of this configuration. */
225
+ /* */
226
+ /* Define this macro if you want to enable this `feature'. */
227
+ /* */
228
+ /* #define FT_CONFIG_OPTION_USE_PNG */
229
+
230
+
217
231
  /*************************************************************************/
218
232
  /* */
219
233
  /* DLL export compilation */
@@ -514,7 +528,7 @@ FT_BEGIN_HEADER
514
528
  /* does not contain any glyph name though. */
515
529
  /* */
516
530
  /* Accessing SFNT names is done through the functions declared in */
517
- /* `freetype/ftsnames.h'. */
531
+ /* `ftsnames.h'. */
518
532
  /* */
519
533
  #define TT_CONFIG_OPTION_SFNT_NAMES
520
534
 
@@ -735,6 +749,25 @@ FT_BEGIN_HEADER
735
749
  #undef T1_CONFIG_OPTION_NO_MM_SUPPORT
736
750
 
737
751
 
752
+ /*************************************************************************/
753
+ /*************************************************************************/
754
+ /**** ****/
755
+ /**** C F F D R I V E R C O N F I G U R A T I O N ****/
756
+ /**** ****/
757
+ /*************************************************************************/
758
+ /*************************************************************************/
759
+
760
+
761
+ /*************************************************************************/
762
+ /* */
763
+ /* CFF_CONFIG_OPTION_OLD_ENGINE controls whether the pre-Adobe CFF */
764
+ /* engine gets compiled into FreeType. If defined, it is possible to */
765
+ /* switch between the two engines using the `hinting-engine' property of */
766
+ /* the cff driver module. */
767
+ /* */
768
+ /* #define CFF_CONFIG_OPTION_OLD_ENGINE */
769
+
770
+
738
771
  /*************************************************************************/
739
772
  /*************************************************************************/
740
773
  /**** ****/
@@ -774,39 +807,12 @@ FT_BEGIN_HEADER
774
807
 
775
808
 
776
809
  /*
777
- * Define this variable if you want to keep the layout of internal
778
- * structures that was used prior to FreeType 2.2. This also compiles in
779
- * a few obsolete functions to avoid linking problems on typical Unix
780
- * distributions.
781
- *
782
- * For embedded systems or building a new distribution from scratch, it
783
- * is recommended to disable the macro since it reduces the library's code
784
- * size and activates a few memory-saving optimizations as well.
810
+ * This macro is obsolete. Support has been removed in FreeType
811
+ * version 2.5.
785
812
  */
786
813
  /* #define FT_CONFIG_OPTION_OLD_INTERNALS */
787
814
 
788
815
 
789
- /*
790
- * To detect legacy cache-lookup call from a rogue client (<= 2.1.7),
791
- * we restrict the number of charmaps in a font. The current API of
792
- * FTC_CMapCache_Lookup() takes cmap_index & charcode, but old API
793
- * takes charcode only. To determine the passed value is for cmap_index
794
- * or charcode, the possible cmap_index is restricted not to exceed
795
- * the minimum possible charcode by a rogue client. It is also very
796
- * unlikely that a rogue client is interested in Unicode values 0 to 15.
797
- *
798
- * NOTE: The original threshold was 4 deduced from popular number of
799
- * cmap subtables in UCS-4 TrueType fonts, but now it is not
800
- * irregular for OpenType fonts to have more than 4 subtables,
801
- * because variation selector subtables are available for Apple
802
- * and Microsoft platforms.
803
- */
804
-
805
- #ifdef FT_CONFIG_OPTION_OLD_INTERNALS
806
- #define FT_MAX_CHARMAP_CACHEABLE 15
807
- #endif
808
-
809
-
810
816
  /*
811
817
  * This macro is defined if either unpatented or native TrueType
812
818
  * hinting is requested by the definitions above.
@@ -98,7 +98,10 @@ FT_BEGIN_HEADER
98
98
  /* FT_FACE_FLAG_FIXED_WIDTH */
99
99
  /* FT_FACE_FLAG_HORIZONTAL */
100
100
  /* FT_FACE_FLAG_VERTICAL */
101
+ /* FT_FACE_FLAG_COLOR */
101
102
  /* FT_FACE_FLAG_SFNT */
103
+ /* FT_FACE_FLAG_CID_KEYED */
104
+ /* FT_FACE_FLAG_TRICKY */
102
105
  /* FT_FACE_FLAG_KERNING */
103
106
  /* FT_FACE_FLAG_MULTIPLE_MASTERS */
104
107
  /* FT_FACE_FLAG_GLYPH_NAMES */
@@ -329,12 +332,14 @@ FT_BEGIN_HEADER
329
332
  /* It also embeds a memory manager (see @FT_Memory), as well as a */
330
333
  /* scan-line converter object (see @FT_Raster). */
331
334
  /* */
332
- /* For multi-threading applications each thread should have its own */
333
- /* FT_Library object. */
335
+ /* In multi-threaded applications, make sure that the same FT_Library */
336
+ /* object or any of its children doesn't get accessed in parallel. */
334
337
  /* */
335
338
  /* <Note> */
336
339
  /* Library objects are normally created by @FT_Init_FreeType, and */
337
- /* destroyed with @FT_Done_FreeType. */
340
+ /* destroyed with @FT_Done_FreeType. If you need reference-counting */
341
+ /* (cf. @FT_Reference_Library), use @FT_New_Library and */
342
+ /* @FT_Done_Library. */
338
343
  /* */
339
344
  typedef struct FT_LibraryRec_ *FT_Library;
340
345
 
@@ -415,7 +420,8 @@ FT_BEGIN_HEADER
415
420
  /* <Note> */
416
421
  /* Each @FT_Face has an _active_ @FT_Size object that is used by */
417
422
  /* functions like @FT_Load_Glyph to determine the scaling */
418
- /* transformation which is used to load and hint glyphs and metrics. */
423
+ /* transformation that in turn is used to load and hint glyphs and */
424
+ /* metrics. */
419
425
  /* */
420
426
  /* You can use @FT_Set_Char_Size, @FT_Set_Pixel_Sizes, */
421
427
  /* @FT_Request_Size or even @FT_Select_Size to change the content */
@@ -550,11 +556,12 @@ FT_BEGIN_HEADER
550
556
  /* FT_ENCODING_MS_SYMBOL :: */
551
557
  /* Corresponds to the Microsoft Symbol encoding, used to encode */
552
558
  /* mathematical symbols in the 32..255 character code range. For */
553
- /* more information, see `http://www.ceviz.net/symbol.htm'. */
559
+ /* more information, see */
560
+ /* `http://www.kostis.net/charsets/symbol.htm'. */
554
561
  /* */
555
562
  /* FT_ENCODING_SJIS :: */
556
563
  /* Corresponds to Japanese SJIS encoding. More info at */
557
- /* at `http://langsupport.japanreference.com/encoding.shtml'. */
564
+ /* at `http://en.wikipedia.org/wiki/Shift_JIS'. */
558
565
  /* See note on multi-byte encodings below. */
559
566
  /* */
560
567
  /* FT_ENCODING_GB2312 :: */
@@ -568,7 +575,7 @@ FT_BEGIN_HEADER
568
575
  /* FT_ENCODING_WANSUNG :: */
569
576
  /* Corresponds to the Korean encoding system known as Wansung. */
570
577
  /* For more information see */
571
- /* `http://www.microsoft.com/typography/unicode/949.txt'. */
578
+ /* `http://msdn.microsoft.com/en-US/goglobal/cc305154'. */
572
579
  /* */
573
580
  /* FT_ENCODING_JOHAB :: */
574
581
  /* The Korean standard character set (KS~C 5601-1992), which */
@@ -643,10 +650,10 @@ FT_BEGIN_HEADER
643
650
  /* FT_ENCODING_APPLE_ROMAN). */
644
651
  /* */
645
652
  /* If `platform_id' is @TT_PLATFORM_MACINTOSH, use the function */
646
- /* @FT_Get_CMap_Language_ID to query the Mac language ID which may */
653
+ /* @FT_Get_CMap_Language_ID to query the Mac language ID that may */
647
654
  /* be needed to be able to distinguish Apple encoding variants. See */
648
655
  /* */
649
- /* http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/README.TXT */
656
+ /* http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/Readme.txt */
650
657
  /* */
651
658
  /* to get an idea how to do that. Basically, if the language ID */
652
659
  /* is~0, don't use it, otherwise subtract 1 from the language ID. */
@@ -806,7 +813,7 @@ FT_BEGIN_HEADER
806
813
  /* highest CID used in the font. */
807
814
  /* */
808
815
  /* family_name :: The face's family name. This is an ASCII */
809
- /* string, usually in English, which describes */
816
+ /* string, usually in English, that describes */
810
817
  /* the typeface's family (like `Times New */
811
818
  /* Roman', `Bodoni', `Garamond', etc). This */
812
819
  /* is a least common denominator used to list */
@@ -818,7 +825,7 @@ FT_BEGIN_HEADER
818
825
  /* PDF file). */
819
826
  /* */
820
827
  /* style_name :: The face's style name. This is an ASCII */
821
- /* string, usually in English, which describes */
828
+ /* string, usually in English, that describes */
822
829
  /* the typeface's style (like `Italic', */
823
830
  /* `Bold', `Condensed', etc). Not all font */
824
831
  /* formats provide a style name, so this field */
@@ -1052,7 +1059,7 @@ FT_BEGIN_HEADER
1052
1059
  /* exist make FT_Load_Glyph return successfully; in all other cases */
1053
1060
  /* you get an `FT_Err_Invalid_Argument' error. */
1054
1061
  /* */
1055
- /* Note that CID-keyed fonts which are in an SFNT wrapper don't */
1062
+ /* Note that CID-keyed fonts that are in an SFNT wrapper don't */
1056
1063
  /* have this flag set since the glyphs are accessed in the normal */
1057
1064
  /* way (using contiguous indices); the `CID-ness' isn't visible to */
1058
1065
  /* the application. */
@@ -1060,7 +1067,7 @@ FT_BEGIN_HEADER
1060
1067
  /* FT_FACE_FLAG_TRICKY :: */
1061
1068
  /* Set if the font is `tricky', this is, it always needs the */
1062
1069
  /* font format's native hinting engine to get a reasonable result. */
1063
- /* A typical example is the Chinese font `mingli.ttf' which uses */
1070
+ /* A typical example is the Chinese font `mingli.ttf' that uses */
1064
1071
  /* TrueType bytecode instructions to move and scale all of its */
1065
1072
  /* subglyphs. */
1066
1073
  /* */
@@ -1073,6 +1080,10 @@ FT_BEGIN_HEADER
1073
1080
  /* Currently, there are about a dozen TrueType fonts in the list of */
1074
1081
  /* tricky fonts; they are hard-coded in file `ttobjs.c'. */
1075
1082
  /* */
1083
+ /* FT_FACE_FLAG_COLOR :: */
1084
+ /* Set if the font has color glyph tables. To access color glyphs */
1085
+ /* use @FT_LOAD_COLOR. */
1086
+ /* */
1076
1087
  #define FT_FACE_FLAG_SCALABLE ( 1L << 0 )
1077
1088
  #define FT_FACE_FLAG_FIXED_SIZES ( 1L << 1 )
1078
1089
  #define FT_FACE_FLAG_FIXED_WIDTH ( 1L << 2 )
@@ -1087,6 +1098,7 @@ FT_BEGIN_HEADER
1087
1098
  #define FT_FACE_FLAG_HINTER ( 1L << 11 )
1088
1099
  #define FT_FACE_FLAG_CID_KEYED ( 1L << 12 )
1089
1100
  #define FT_FACE_FLAG_TRICKY ( 1L << 13 )
1101
+ #define FT_FACE_FLAG_COLOR ( 1L << 14 )
1090
1102
 
1091
1103
 
1092
1104
  /*************************************************************************
@@ -1271,6 +1283,20 @@ FT_BEGIN_HEADER
1271
1283
  ( face->face_flags & FT_FACE_FLAG_TRICKY )
1272
1284
 
1273
1285
 
1286
+ /*************************************************************************
1287
+ *
1288
+ * @macro:
1289
+ * FT_HAS_COLOR( face )
1290
+ *
1291
+ * @description:
1292
+ * A macro that returns true whenever a face object contains
1293
+ * tables for color glyphs.
1294
+ *
1295
+ */
1296
+ #define FT_HAS_COLOR( face ) \
1297
+ ( face->face_flags & FT_FACE_FLAG_COLOR )
1298
+
1299
+
1274
1300
  /*************************************************************************/
1275
1301
  /* */
1276
1302
  /* <Const> */
@@ -1392,9 +1418,9 @@ FT_BEGIN_HEADER
1392
1418
  /* <Fields> */
1393
1419
  /* face :: Handle to the parent face object. */
1394
1420
  /* */
1395
- /* generic :: A typeless pointer, which is unused by the FreeType */
1396
- /* library or any of its drivers. It can be used by */
1397
- /* client applications to link their own data to each size */
1421
+ /* generic :: A typeless pointer, unused by the FreeType library or */
1422
+ /* any of its drivers. It can be used by client */
1423
+ /* applications to link their own data to each size */
1398
1424
  /* object. */
1399
1425
  /* */
1400
1426
  /* metrics :: Metrics for this size object. This field is read-only. */
@@ -1462,10 +1488,10 @@ FT_BEGIN_HEADER
1462
1488
  /* listed through a direct, single-linked list */
1463
1489
  /* using its `next' field. */
1464
1490
  /* */
1465
- /* generic :: A typeless pointer which is unused by the */
1466
- /* FreeType library or any of its drivers. It */
1467
- /* can be used by client applications to link */
1468
- /* their own data to each glyph slot object. */
1491
+ /* generic :: A typeless pointer unused by the FreeType */
1492
+ /* library or any of its drivers. It can be */
1493
+ /* used by client applications to link their own */
1494
+ /* data to each glyph slot object. */
1469
1495
  /* */
1470
1496
  /* metrics :: The metrics of the last loaded glyph in the */
1471
1497
  /* slot. The returned values depend on the last */
@@ -1492,8 +1518,8 @@ FT_BEGIN_HEADER
1492
1518
  /* */
1493
1519
  /* advance :: This shorthand is, depending on */
1494
1520
  /* @FT_LOAD_IGNORE_TRANSFORM, the transformed */
1495
- /* advance width for the glyph (in 26.6 */
1496
- /* fractional pixel format). As specified with */
1521
+ /* (hinted) advance width for the glyph, in 26.6 */
1522
+ /* fractional pixel format. As specified with */
1497
1523
  /* @FT_LOAD_VERTICAL_LAYOUT, it uses either the */
1498
1524
  /* `horiAdvance' or the `vertAdvance' value of */
1499
1525
  /* `metrics' field. */
@@ -1582,7 +1608,7 @@ FT_BEGIN_HEADER
1582
1608
  /* `slot->format' is also changed to @FT_GLYPH_FORMAT_BITMAP. */
1583
1609
  /* */
1584
1610
  /* <Note> */
1585
- /* Here a small pseudo code fragment which shows how to use */
1611
+ /* Here a small pseudo code fragment that shows how to use */
1586
1612
  /* `lsb_delta' and `rsb_delta': */
1587
1613
  /* */
1588
1614
  /* { */
@@ -1678,6 +1704,9 @@ FT_BEGIN_HEADER
1678
1704
  /* For multi-threading applications each thread should have its own */
1679
1705
  /* FT_Library object. */
1680
1706
  /* */
1707
+ /* If you need reference-counting (cf. @FT_Reference_Library), use */
1708
+ /* @FT_New_Library and @FT_Done_Library. */
1709
+ /* */
1681
1710
  FT_EXPORT( FT_Error )
1682
1711
  FT_Init_FreeType( FT_Library *alibrary );
1683
1712
 
@@ -1808,7 +1837,7 @@ FT_BEGIN_HEADER
1808
1837
  /* opening a new face. */
1809
1838
  /* */
1810
1839
  /* <Note> */
1811
- /* The stream type is determined by the contents of `flags' which */
1840
+ /* The stream type is determined by the contents of `flags' that */
1812
1841
  /* are tested in the following order by @FT_Open_Face: */
1813
1842
  /* */
1814
1843
  /* If the `FT_OPEN_MEMORY' bit is set, assume that this is a */
@@ -1872,6 +1901,10 @@ FT_BEGIN_HEADER
1872
1901
  /* <Return> */
1873
1902
  /* FreeType error code. 0~means success. */
1874
1903
  /* */
1904
+ /* <Note> */
1905
+ /* Use @FT_Done_Face to destroy the created @FT_Face object (along */
1906
+ /* with its slot and sizes). */
1907
+ /* */
1875
1908
  FT_EXPORT( FT_Error )
1876
1909
  FT_New_Face( FT_Library library,
1877
1910
  const char* filepathname,
@@ -1885,7 +1918,7 @@ FT_BEGIN_HEADER
1885
1918
  /* FT_New_Memory_Face */
1886
1919
  /* */
1887
1920
  /* <Description> */
1888
- /* This function calls @FT_Open_Face to open a font which has been */
1921
+ /* This function calls @FT_Open_Face to open a font that has been */
1889
1922
  /* loaded into memory. */
1890
1923
  /* */
1891
1924
  /* <InOut> */
@@ -1931,7 +1964,7 @@ FT_BEGIN_HEADER
1931
1964
  /* library :: A handle to the library resource. */
1932
1965
  /* */
1933
1966
  /* <Input> */
1934
- /* args :: A pointer to an `FT_Open_Args' structure which must */
1967
+ /* args :: A pointer to an `FT_Open_Args' structure that must */
1935
1968
  /* be filled by the caller. */
1936
1969
  /* */
1937
1970
  /* face_index :: The index of the face within the font. The first */
@@ -1947,7 +1980,7 @@ FT_BEGIN_HEADER
1947
1980
  /* */
1948
1981
  /* <Note> */
1949
1982
  /* Unlike FreeType 1.x, this function automatically creates a glyph */
1950
- /* slot for the face object which can be accessed directly through */
1983
+ /* slot for the face object that can be accessed directly through */
1951
1984
  /* `face->glyph'. */
1952
1985
  /* */
1953
1986
  /* FT_Open_Face can be used to quickly check whether the font */
@@ -1956,7 +1989,7 @@ FT_BEGIN_HEADER
1956
1989
  /* if the font format is recognized, or non-zero otherwise; */
1957
1990
  /* the function returns a more or less empty face handle in `*aface' */
1958
1991
  /* (if `aface' isn't NULL). The only useful field in this special */
1959
- /* case is `face->num_faces' which gives the number of faces within */
1992
+ /* case is `face->num_faces' that gives the number of faces within */
1960
1993
  /* the font file. After examination, the returned @FT_Face structure */
1961
1994
  /* should be deallocated with a call to @FT_Done_Face. */
1962
1995
  /* */
@@ -2014,7 +2047,7 @@ FT_BEGIN_HEADER
2014
2047
  /* face :: The target face object. */
2015
2048
  /* */
2016
2049
  /* <Input> */
2017
- /* parameters :: A pointer to @FT_Open_Args which must be filled by */
2050
+ /* parameters :: A pointer to @FT_Open_Args that must be filled by */
2018
2051
  /* the caller. */
2019
2052
  /* */
2020
2053
  /* <Return> */
@@ -2045,7 +2078,7 @@ FT_BEGIN_HEADER
2045
2078
  /* then only destroys a face if the counter is~1, otherwise it simply */
2046
2079
  /* decrements the counter. */
2047
2080
  /* */
2048
- /* This function helps in managing life-cycles of structures which */
2081
+ /* This function helps in managing life-cycles of structures that */
2049
2082
  /* reference @FT_Face objects. */
2050
2083
  /* */
2051
2084
  /* <Input> */
@@ -2352,7 +2385,7 @@ FT_BEGIN_HEADER
2352
2385
  /* the details. */
2353
2386
  /* */
2354
2387
  /* For subsetted CID-keyed fonts, `FT_Err_Invalid_Argument' is */
2355
- /* returned for invalid CID values (this is, for CID values which */
2388
+ /* returned for invalid CID values (this is, for CID values that */
2356
2389
  /* don't have a corresponding glyph in the font). See the discussion */
2357
2390
  /* of the @FT_FACE_FLAG_CID_KEYED flag for more details. */
2358
2391
  /* */
@@ -2523,6 +2556,14 @@ FT_BEGIN_HEADER
2523
2556
  * FT_LOAD_NO_AUTOHINT ::
2524
2557
  * Disable auto-hinter. See also the note below.
2525
2558
  *
2559
+ * FT_LOAD_COLOR ::
2560
+ * This flag is used to request loading of color embedded-bitmap
2561
+ * images. The resulting color bitmaps, if available, will have the
2562
+ * @FT_PIXEL_MODE_BGRA format. When the flag is not used and color
2563
+ * bitmaps are found, they will be converted to 256-level gray
2564
+ * bitmaps transparently. Those bitmaps will be in the
2565
+ * @FT_PIXEL_MODE_GRAY format.
2566
+ *
2526
2567
  * @note:
2527
2568
  * By default, hinting is enabled and the font's native hinter (see
2528
2569
  * @FT_FACE_FLAG_HINTER) is preferred over the auto-hinter. You can
@@ -2560,6 +2601,8 @@ FT_BEGIN_HEADER
2560
2601
  #define FT_LOAD_MONOCHROME ( 1L << 12 )
2561
2602
  #define FT_LOAD_LINEAR_DESIGN ( 1L << 13 )
2562
2603
  #define FT_LOAD_NO_AUTOHINT ( 1L << 15 )
2604
+ /* Bits 16..19 are used by `FT_LOAD_TARGET_' */
2605
+ #define FT_LOAD_COLOR ( 1L << 20 )
2563
2606
 
2564
2607
  /* */
2565
2608
 
@@ -2616,7 +2659,7 @@ FT_BEGIN_HEADER
2616
2659
  * `load_flags'. They can't be ORed.
2617
2660
  *
2618
2661
  * If @FT_LOAD_RENDER is also set, the glyph is rendered in the
2619
- * corresponding mode (i.e., the mode which matches the used algorithm
2662
+ * corresponding mode (i.e., the mode that matches the used algorithm
2620
2663
  * best). An exeption is FT_LOAD_TARGET_MONO since it implies
2621
2664
  * @FT_LOAD_MONOCHROME.
2622
2665
  *
@@ -2984,7 +3027,7 @@ FT_BEGIN_HEADER
2984
3027
  /* */
2985
3028
  /* This function is not compiled within the library if the config */
2986
3029
  /* macro `FT_CONFIG_OPTION_NO_GLYPH_NAMES' is defined in */
2987
- /* `include/freetype/config/ftoptions.h'. */
3030
+ /* `ftoptions.h'. */
2988
3031
  /* */
2989
3032
  FT_EXPORT( FT_Error )
2990
3033
  FT_Get_Glyph_Name( FT_Face face,
@@ -3040,8 +3083,8 @@ FT_BEGIN_HEADER
3040
3083
  /* */
3041
3084
  /* Because many fonts contain more than a single cmap for Unicode */
3042
3085
  /* encoding, this function has some special code to select the one */
3043
- /* which covers Unicode best (`best' in the sense that a UCS-4 cmap */
3044
- /* is preferred to a UCS-2 cmap). It is thus preferable to */
3086
+ /* that covers Unicode best (`best' in the sense that a UCS-4 cmap is */
3087
+ /* preferred to a UCS-2 cmap). It is thus preferable to */
3045
3088
  /* @FT_Set_Charmap in this case. */
3046
3089
  /* */
3047
3090
  FT_EXPORT( FT_Error )
@@ -3395,7 +3438,7 @@ FT_BEGIN_HEADER
3395
3438
  /* */
3396
3439
  /* <Note> */
3397
3440
  /* Use this function rather than directly reading the `fs_type' field */
3398
- /* in the @PS_FontInfoRec structure which is only guaranteed to */
3441
+ /* in the @PS_FontInfoRec structure, which is only guaranteed to */
3399
3442
  /* return the correct results for Type~1 fonts. */
3400
3443
  /* */
3401
3444
  /* <Since> */
@@ -3575,7 +3618,7 @@ FT_BEGIN_HEADER
3575
3618
  /* The character codepoint in Unicode. */
3576
3619
  /* */
3577
3620
  /* <Return> */
3578
- /* A pointer to an array of variant selector code points which are */
3621
+ /* A pointer to an array of variant selector code points that are */
3579
3622
  /* active for the given character, or NULL if the corresponding list */
3580
3623
  /* is empty. */
3581
3624
  /* */
@@ -3609,7 +3652,7 @@ FT_BEGIN_HEADER
3609
3652
  /* The variant selector code point in Unicode. */
3610
3653
  /* */
3611
3654
  /* <Return> */
3612
- /* A list of all the code points which are specified by this selector */
3655
+ /* A list of all the code points that are specified by this selector */
3613
3656
  /* (both default and non-default codes are returned) or NULL if there */
3614
3657
  /* is no valid cmap or the variant selector is invalid. */
3615
3658
  /* */
@@ -3881,8 +3924,8 @@ FT_BEGIN_HEADER
3881
3924
  *
3882
3925
  */
3883
3926
  #define FREETYPE_MAJOR 2
3884
- #define FREETYPE_MINOR 4
3885
- #define FREETYPE_PATCH 12
3927
+ #define FREETYPE_MINOR 5
3928
+ #define FREETYPE_PATCH 2
3886
3929
 
3887
3930
 
3888
3931
  /*************************************************************************/