From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .../docs/reference/ft2-ot_validation.html | 247 +++++++++++++++++++++ 1 file changed, 247 insertions(+) create mode 100644 modules/freetype2/docs/reference/ft2-ot_validation.html (limited to 'modules/freetype2/docs/reference/ft2-ot_validation.html') diff --git a/modules/freetype2/docs/reference/ft2-ot_validation.html b/modules/freetype2/docs/reference/ft2-ot_validation.html new file mode 100644 index 000000000..342a8cf2a --- /dev/null +++ b/modules/freetype2/docs/reference/ft2-ot_validation.html @@ -0,0 +1,247 @@ + + + + +FreeType-2.7.1 API Reference + + + + + +

FreeType-2.7.1 API Reference

+ +

OpenType Validation

+

Synopsis

+ + + +
FT_OpenType_Validate 
FT_OpenType_FreeFT_VALIDATE_OTXXX
+ + +

This section contains the declaration of functions to validate some OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF, MATH).

+ +
+

FT_OpenType_Validate

+

Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).

+
+  FT_EXPORT( FT_Error )
+  FT_OpenType_Validate( FT_Face    face,
+                        FT_UInt    validation_flags,
+                        FT_Bytes  *BASE_table,
+                        FT_Bytes  *GDEF_table,
+                        FT_Bytes  *GPOS_table,
+                        FT_Bytes  *GSUB_table,
+                        FT_Bytes  *JSTF_table );
+
+ +

Validate various OpenType tables to assure that all offsets and indices are valid. The idea is that a higher-level library that actually does the text layout can access those tables without error checking (which can be quite time consuming).

+ +

input

+ + + +
face +

A handle to the input face.

+
validation_flags +

A bit field that specifies the tables to be validated. See FT_VALIDATE_OTXXX for possible values.

+
+ +

output

+ + + + + + +
BASE_table +

A pointer to the BASE table.

+
GDEF_table +

A pointer to the GDEF table.

+
GPOS_table +

A pointer to the GPOS table.

+
GSUB_table +

A pointer to the GSUB table.

+
JSTF_table +

A pointer to the JSTF table.

+
+ +

return

+

FreeType error code. 0 means success.

+ +

note

+

This function only works with OpenType fonts, returning an error otherwise.

+

After use, the application should deallocate the five tables with FT_OpenType_Free. A NULL value indicates that the table either doesn't exist in the font, or the application hasn't asked for validation.

+ +
+
+ +
+

FT_OpenType_Free

+

Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).

+
+  FT_EXPORT( void )
+  FT_OpenType_Free( FT_Face   face,
+                    FT_Bytes  table );
+
+ +

Free the buffer allocated by OpenType validator.

+ +

input

+ + + +
face +

A handle to the input face.

+
table +

The pointer to the buffer that is allocated by FT_OpenType_Validate.

+
+ +

note

+

This function must be used to free the buffer allocated by FT_OpenType_Validate only.

+ +
+
+ +
+

FT_VALIDATE_OTXXX

+

Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).

+
+#define FT_VALIDATE_BASE  0x0100
+#define FT_VALIDATE_GDEF  0x0200
+#define FT_VALIDATE_GPOS  0x0400
+#define FT_VALIDATE_GSUB  0x0800
+#define FT_VALIDATE_JSTF  0x1000
+#define FT_VALIDATE_MATH  0x2000
+
+#define FT_VALIDATE_OT  ( FT_VALIDATE_BASE | \
+                          FT_VALIDATE_GDEF | \
+                          FT_VALIDATE_GPOS | \
+                          FT_VALIDATE_GSUB | \
+                          FT_VALIDATE_JSTF | \
+                          FT_VALIDATE_MATH )
+
+ +

A list of bit-field constants used with FT_OpenType_Validate to indicate which OpenType tables should be validated.

+ +

values

+ + + + + + + + +
FT_VALIDATE_BASE +

Validate BASE table.

+
FT_VALIDATE_GDEF +

Validate GDEF table.

+
FT_VALIDATE_GPOS +

Validate GPOS table.

+
FT_VALIDATE_GSUB +

Validate GSUB table.

+
FT_VALIDATE_JSTF +

Validate JSTF table.

+
FT_VALIDATE_MATH +

Validate MATH table.

+
FT_VALIDATE_OT +

Validate all OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF, MATH).

+
+ +
+
+ + + -- cgit v1.2.3