SAP ABAP Class CL_RSTX_FONT_TTF (Main Font Object of a True Type Font)
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-SRV-SCR (Application Component) SAPscript
     STXD (Package) SAPscript
Properties
Class CL_RSTX_FONT_TTF  
Short Description Main Font Object of a True Type Font    
Super Class    
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package STXD   SAPscript 
Created 20130326   SAP 
Last change 20140121   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 ABAP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
2 ZCL_RSTX_FONT_LOOKUP_SUBTABLE Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
3 ZCL_ZHEI_FONT_LOOKUP_SUBTABLE Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
4 ZCL_ZHEI_FONT_MAIN Forward declaration class (CLASS c DEFINITION DEFERRED)  Forward declaration class (CLASS c DEFINITION DEFERRED)
Interfaces
Class CL_RSTX_FONT_TTF has no interface implemented.
Friends
Class CL_RSTX_FONT_TTF has no friend class.
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 C_FONT_TYPE_TTF Constant Private Type reference (TYPE) TFO_BUFFER-FONT_TYPE 'TT' Buffer table key 'True Type Font' 20130415
2 C_FONT_TYPE_UPE Constant Private Type reference (TYPE) TFO_BUFFER-FONT_TYPE 'UP' Buffer table key 'UPE Font' 20130415
3 C_RAW_TYPE_CLASS_DEFINITION Constant Public Type reference (TYPE) I 41 20130326
4 C_RAW_TYPE_COVERAGE Constant Public Type reference (TYPE) I 40 20130326
5 C_RAW_TYPE_GDEF Constant Public Type reference (TYPE) I 2 20130326
6 C_RAW_TYPE_GLYPHS Constant Public Type reference (TYPE) I 1 20130326
7 C_RAW_TYPE_GSUB Constant Public Type reference (TYPE) I 3 20130326
8 C_RAW_TYPE_GSUB_CHAINING Constant Public Type reference (TYPE) I 17 20130326
9 C_RAW_TYPE_GSUB_CONTEXTUAL Constant Public Type reference (TYPE) I 16 20130326
10 C_RAW_TYPE_GSUB_LIGATURE Constant Public Type reference (TYPE) I 15 20130326
11 C_RAW_TYPE_GSUB_MULTIPLE Constant Public Type reference (TYPE) I 14 20130326
12 C_RAW_TYPE_GSUB_REVERSE Constant Public Type reference (TYPE) I 18 20130326
13 C_RAW_TYPE_GSUB_SINGLE Constant Public Type reference (TYPE) I 13 20130326
14 ERROR_OCCURRED Instance attribute Private Type reference (TYPE) ABAP_BOOL Did an error occur during the processing? 20130326
15 FONT_HEADER Instance attribute Private Type reference (TYPE) T_FONT_HEADER Information about the font 20130326
16 FONT_PARSER Instance attribute Private Object reference (TYPE REF TO) CL_RSTX_FONT_PARSER Reference of font parser 20130326
17 GDEF_FILTERING_SET_TAB Instance attribute Private Type reference (TYPE) T_GDEF_FILTERING_SET_TAB Mark Glyph Sets Table of GDEF table 20130326
18 GDEF_GLYPH_CLASS_DEF Instance attribute Private Object reference (TYPE REF TO) CL_RSTX_FONT_CLASS_DEFINITION Glyph Class Definition Table of GDEF table 20130326
19 GDEF_MARK_ATTACH_CLASS Instance attribute Private Object reference (TYPE REF TO) CL_RSTX_FONT_CLASS_DEFINITION Mark Attachment Class Definition Table of GDEF table 20130326
20 GLYPH_UC_TAB Instance attribute Private Type reference (TYPE) T_MAP_GLYPH_UC_TAB Mapping glyph ID to Unicode codepoint 20130326
21 GSUB_FEATURE_TAB Instance attribute Private Type reference (TYPE) T_FEATURE_LIST Feature table of GSUB table 20130326
22 GSUB_LOOKUP_TAB Instance attribute Private Type reference (TYPE) T_LOOKUP_LIST Lookup table of GSUB table 20130326
23 GSUB_SCRIPT_TAB Instance attribute Private Type reference (TYPE) T_SCRIPT_LIST Script table of GSUB table 20130326
24 HMTX_DEFAULT_WIDTH Instance attribute Private Type reference (TYPE) I Width of glyphs which are not in hmtx table 20130326
25 HMTX_HMETRICS Instance attribute Private Type reference (TYPE) T_INTEGER_TABLE Contents of hmtx table 20130326
26 NUMBER_OF_HMETRICS Instance attribute Private Type reference (TYPE) I Number of hMetric entries in 'hmtx' table 20130326
27 NUM_GLYPHS Instance attribute Private Type reference (TYPE) I Number of Glyphs in the font 20130326
28 OFFSET_TABLE_TAB Instance attribute Private Type reference (TYPE) T_HEADER_OFFSET_TAB Offsets of subtables 20130326
29 UC_GLYPH_TAB Instance attribute Private Type reference (TYPE) T_MAP_UC_GLYPH_TAB Mapping Unicode codepoint to glyph ID 20130326
30 UNITS_PER_EM Instance attribute Private Type reference (TYPE) I Unit which is used by width 20130326
31 VERSION Instance attribute Private Type reference (TYPE) I 1 Version number of the Class 20130326
Methods
# Method Level Visibility Method type Description Created on
1 CHECK_CONSISTENCY Instance method Private Method Checks required tables and check sums 20130326
2 CHECK_REQUIRED_TABLE_EXISTS Instance method Private Method Checks whether a required table exists in the font file 20130326
3 CLEAR_BUFFER Static method Public Method Delete all font entries from buffer table TFO_BUFFER 20130415
4 CONSTRUCTOR Instance method Public Constructor 20130326
5 GET_ALL_DATA_RAW Instance method Private Method Get all data of the font tables in raw format 20130326
6 GET_CMAP Instance method Private Method Reads the cmap table from the font file 20130326
7 GET_FEATURELIST Instance method Private Method Reads the feature list table from the font file 20130326
8 GET_FONT_DATA Instance method Public Method Get some font tables of the font 20130326
9 GET_FONT_HEADER Instance method Private Method Reads the font header 20130326
10 GET_FONT_PARSER Instance method Public Method Get the reference to the font parser 20130327
11 GET_FONT_TABLES Instance method Private Method Read the fonts tables of the font file 20130326
12 GET_GDEF Instance method Private Method Reads the GDEF table from the font file 20130326
13 GET_GSUB Instance method Private Method Reads the GSUB table from the font file 20130326
14 GET_HEAD Instance method Private Method Reads the head table from the font file 20130326
15 GET_HHEA Instance method Private Method Reads the hhea table from the font file 20130326
16 GET_HMTX Instance method Private Method Reads the hmtx table from the font file 20130326
17 GET_LOOKUPLIST Instance method Private Method Reads the lookup list table from the font file 20130326
18 GET_MAXP Instance method Private Method Reads the maxp table from the font file 20130326
19 GET_SCRIPTLIST Instance method Private Method Reads the script list table from the font file 20130326
20 LOAD_FONT_FILE Instance method Private Method Reads the font file from the database 20130326
21 PARSE_FONT_FILE Instance method Private Method Parses the font file 20130326
22 POST_PROCESSING Instance method Private Method Steps which must be done after all tables were read 20130326
23 READ_FONT Instance method Private Method Read font from buffer; if not available, load from database 20130326
24 SET_ALL_DATA_RAW Instance method Private Method Fill all font tables from data in raw format 20130326
Events
Class CL_RSTX_FONT_TTF has no event.
Types
# Type Visibility Typing Associated Type Description Created on Type Source
1 T_FEATURE_ENTRY Public See coding 20130326 begin of t_feature_entry, index type i, " Index of the feature, starting with 0 tag type t_tag, " 4-byte FeatureTag identifier attrib type i, " is set, if feature is only applied, if the glyph has a special attribute (like: is part of Reph) lookup_tab type t_integer_table, " Index of Lookup in Lookup List Table end of t_feature_entry
2 T_FEATURE_LIST Public See coding 20130326 t_feature_list type sorted table of t_feature_entry with unique key index
3 T_FONT_HEADER Private See coding 20130326 begin of t_font_header, family type tdfamily, bold type tdbold, italic type tditalic, upe_physid type tfr_physfontid, upe_logidx type tfr_index, stream type xstring, check_font_consistency type abap_bool, font_was_loaded type abap_bool, end of t_font_header
4 T_GDEF_FILTERING_SET Public See coding 20130326 begin of t_gdef_filtering_set, index type i, coverage type ref to CL_RSTX_FONT_COVERAGE, end of t_gdef_filtering_set
5 T_GDEF_FILTERING_SET_RAW Public See coding 20130326 begin of t_gdef_filtering_set_raw, index type i, coverage type i, end of t_gdef_filtering_set_raw
6 T_GDEF_FILTERING_SET_TAB Public See coding 20130326 t_gdef_filtering_set_tab type sorted table of t_gdef_filtering_set with unique key index
7 T_GDEF_FILTERING_SET_TAB_RAW Public See coding 20130326 t_gdef_filtering_set_tab_raw type sorted table of t_gdef_filtering_set_raw with unique key index
8 T_HEADER_OFFSET_LINE Private See coding 20130326 begin of t_header_offset_line, tag type t_tag, check_sum_hi type i, check_sum_lo type i, offset type i, length type i, end of t_header_offset_line
9 T_HEADER_OFFSET_TAB Private See coding 20130326 t_header_offset_tab type standard table of t_header_offset_line with key tag
10 T_INTEGER_TABLE Public Type reference (TYPE) CL_RSTX_FONT_PARSER=>T_INTEGER_TABLE 20130326
11 T_LOOKUP_ENTRY Public See coding 20130326 begin of t_lookup_entry, index type i, " Index of lookup, starting with 0 header type CL_RSTX_FONT_LOOKUP_SUBTABLE=>t_header, " Header of subtable subtable_tab type standard table of ref to CL_RSTX_FONT_LOOKUP_SUBTABLE with default key, " references to subtables end of t_lookup_entry
12 T_LOOKUP_ENTRY_RAW Public See coding 20130326 begin of t_lookup_entry_raw, index type i, " Index of lookup, starting with 0 header type CL_RSTX_FONT_LOOKUP_SUBTABLE=>t_header, " Header of subtable subtable_tab type standard table of i with default key, end of t_lookup_entry_raw
13 T_LOOKUP_LIST Public See coding 20130326 t_lookup_list type sorted table of t_lookup_entry with unique key index
14 T_LOOKUP_LIST_RAW Public See coding 20130326 t_lookup_list_raw type sorted table of t_lookup_entry_raw with unique key index
15 T_MAP_GLYPH_UC_TAB Public See coding 20130326 t_map_glyph_uc_tab type hashed table of t_map_uc_glyph with unique key glyphid
16 T_MAP_UC_GLYPH Public Type reference (TYPE) CL_RSTX_PDFFONT=>T_MAP_UC_GLYPH 20130326
17 T_MAP_UC_GLYPH_TAB Public See coding 20130326 t_map_uc_glyph_tab type hashed table of t_map_uc_glyph with unique key ucix
18 T_RAW_DATA Public See coding 20130326 begin of T_RAW_DATA, type type i, subtype type i, raw type xstring, end of T_RAW_DATA
19 T_RAW_DATA_TAB Public See coding 20130326 T_RAW_DATA_TAB type standard table of T_RAW_DATA with default key
20 T_SCRIPT_ENTRY Public See coding 20130326 begin of t_script_entry, script_tag type t_tag, " 4-byte ScriptTag identifier language_tag type t_tag, " 4-byte LangSysTag identifier feature_tab type t_integer_table, " ID of feature in Feature List Table (including required feature) feature_required type i, " ID of required feature end of t_script_entry
21 T_SCRIPT_LIST Public See coding 20130326 t_script_list type sorted table of t_script_entry with unique key script_tag language_tag
22 T_TAG Public Type reference (TYPE) CL_RSTX_FONT_PARSER=>T_TAG 20130326
Method Signatures

Method CHECK_CONSISTENCY Signature

Method CHECK_CONSISTENCY on class CL_RSTX_FONT_TTF has no parameter.
Method CHECK_CONSISTENCY on class CL_RSTX_FONT_TTF has no exception.

Method CHECK_REQUIRED_TABLE_EXISTS Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing TAG Call by reference Type reference (TYPE) T_TAG Tag of required table 20130326

Method CHECK_REQUIRED_TABLE_EXISTS on class CL_RSTX_FONT_TTF has no exception.

Method CLEAR_BUFFER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing ALL_ENTRIES Call by reference Type reference (TYPE) C Clear all buffer entries? 20130416
2 Importing BOLD Call by reference Type reference (TYPE) TDBOLD Font attribute bold type 20130416
3 Importing FAMILY Call by reference Type reference (TYPE) TDFAMILY Font attribute: Name of font family 20130416
4 Importing ITALIC Call by reference Type reference (TYPE) TDITALIC Font attribute italic 20130416
5 Importing UPE_LOGIDX Call by reference Type reference (TYPE) TFR_INDEX Typeface Repo - Logical Index into Font Binary 20130416
6 Importing UPE_PHYSID Call by reference Type reference (TYPE) TFR_PHYSFONTID Typeface Repo - Physical Font ID 20130416

Method CLEAR_BUFFER on class CL_RSTX_FONT_TTF has no exception.

Method CONSTRUCTOR Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing BOLD Call by reference Type reference (TYPE) TDBOLD Font attribute bold type 20130326
2 Importing CHECK_FONT_CONSISTENCY Call by reference Type reference (TYPE) ABAP_BOOL Shall consistency of font be checked 20130326
3 Importing FAMILY Call by reference Type reference (TYPE) TDFAMILY Font attribute: Name of font family 20130326
4 Importing ITALIC Call by reference Type reference (TYPE) TDITALIC Font attribute italic 20130326
5 Importing STREAM Call by reference Type reference (TYPE) XSTRING Stream which contains font file 20130326
6 Importing UPE_LOGIDX Call by reference Type reference (TYPE) TFR_INDEX Typeface Repo - Logical Index into Font Binary 20130326
7 Importing UPE_PHYSID Call by reference Type reference (TYPE) TFR_PHYSFONTID Typeface Repo - Physical Font ID 20130326

Method CONSTRUCTOR on class CL_RSTX_FONT_TTF has no exception.

Method GET_ALL_DATA_RAW Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting RAW_DATA_TAB Call by reference Type reference (TYPE) T_RAW_DATA_TAB Table with raw data 20130326

Method GET_ALL_DATA_RAW on class CL_RSTX_FONT_TTF has no exception.

Method GET_CMAP Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the cmap table 20130326

Method GET_CMAP on class CL_RSTX_FONT_TTF has no exception.

Method GET_FEATURELIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting FEATURE_TAB_COMPLETE Call by reference Type reference (TYPE) T_FEATURE_LIST Table with Feature data 20130326
2 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_FEATURELIST on class CL_RSTX_FONT_TTF has no exception.

Method GET_FONT_DATA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting GDEF_FILTERING_SET_TAB Call by reference Type reference (TYPE) T_GDEF_FILTERING_SET_TAB Mark Glyph Sets Table of GDEF table 20130326
2 Exporting GDEF_GLYPH_CLASS_DEF Call by reference Object reference (TYPE REF TO) CL_RSTX_FONT_CLASS_DEFINITION Glyph Class Definition Table of GDEF table 20130326
3 Exporting GDEF_MARK_ATTACH_CLASS Call by reference Object reference (TYPE REF TO) CL_RSTX_FONT_CLASS_DEFINITION Mark Attachment Class Definition Table of GDEF table 20130326
4 Exporting GLYPH_UC_TAB Call by reference Type reference (TYPE) T_MAP_GLYPH_UC_TAB Mapping glyph ID to Unicode codepoint 20130326
5 Exporting GSUB_FEATURE_TAB Call by reference Type reference (TYPE) T_FEATURE_LIST Feature table of GSUB table 20130326
6 Exporting GSUB_LOOKUP_TAB Call by reference Type reference (TYPE) T_LOOKUP_LIST Lookup table of GSUB table 20130326
7 Exporting GSUB_SCRIPT_TAB Call by reference Type reference (TYPE) T_SCRIPT_LIST Script table of GSUB table 20130326
8 Exporting UC_GLYPH_TAB Call by reference Type reference (TYPE) T_MAP_UC_GLYPH_TAB Mapping Unicode codepoint to glyph ID 20130326

Method GET_FONT_DATA on class CL_RSTX_FONT_TTF has no exception.

Method GET_FONT_HEADER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing UPE_LOGIDX Call by reference Type reference (TYPE) TFR_INDEX Typeface Repo - Logical Index into Font Binary 20130326

Method GET_FONT_HEADER on class CL_RSTX_FONT_TTF has no exception.

Method GET_FONT_PARSER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning FONT_PARSER Value transfer Object reference (TYPE REF TO) CL_RSTX_FONT_PARSER Reference to the font parser 20130327

Method GET_FONT_PARSER on class CL_RSTX_FONT_TTF has no exception.

Method GET_FONT_TABLES Signature

Method GET_FONT_TABLES on class CL_RSTX_FONT_TTF has no parameter.
Method GET_FONT_TABLES on class CL_RSTX_FONT_TTF has no exception.

Method GET_GDEF Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_GDEF on class CL_RSTX_FONT_TTF has no exception.

Method GET_GSUB Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_GSUB on class CL_RSTX_FONT_TTF has no exception.

Method GET_HEAD Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_HEAD on class CL_RSTX_FONT_TTF has no exception.

Method GET_HHEA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_HHEA on class CL_RSTX_FONT_TTF has no exception.

Method GET_HMTX Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_HMTX on class CL_RSTX_FONT_TTF has no exception.

Method GET_LOOKUPLIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326
2 Exporting LOOKUP_TAB_COMPLETE Call by reference Type reference (TYPE) T_LOOKUP_LIST Table with Lookup data 20130326
3 Importing PART_OF Call by reference Type reference (TYPE) T_TAG 'GSUB' or 'GPOS' 20130326

Method GET_LOOKUPLIST on class CL_RSTX_FONT_TTF has no exception.

Method GET_MAXP Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326

Method GET_MAXP on class CL_RSTX_FONT_TTF has no exception.

Method GET_SCRIPTLIST Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing GLOBAL_OFFSET Call by reference Type reference (TYPE) I Start offset of the hhea table 20130326
2 Exporting SCRIPT_TAB_COMPLETE Call by reference Type reference (TYPE) T_SCRIPT_LIST Table with Script data 20130326

Method GET_SCRIPTLIST on class CL_RSTX_FONT_TTF has no exception.

Method LOAD_FONT_FILE Signature

Method LOAD_FONT_FILE on class CL_RSTX_FONT_TTF has no parameter.
Method LOAD_FONT_FILE on class CL_RSTX_FONT_TTF has no exception.

Method PARSE_FONT_FILE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing UPE_LOGIDX Call by reference Type reference (TYPE) TFR_INDEX Typeface Repo - Logical Index into Font Binary 20130326

Method PARSE_FONT_FILE on class CL_RSTX_FONT_TTF has no exception.

Method POST_PROCESSING Signature

Method POST_PROCESSING on class CL_RSTX_FONT_TTF has no parameter.
Method POST_PROCESSING on class CL_RSTX_FONT_TTF has no exception.

Method READ_FONT Signature

Method READ_FONT on class CL_RSTX_FONT_TTF has no parameter.
Method READ_FONT on class CL_RSTX_FONT_TTF has no exception.

Method SET_ALL_DATA_RAW Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing RAW_DATA_TAB Call by reference Type reference (TYPE) T_RAW_DATA_TAB Table with raw data 20130326
2 Exporting RC Call by reference Attribute reference (LIKE) SY-SUBRC Return code 20130326

Method SET_ALL_DATA_RAW on class CL_RSTX_FONT_TTF has no exception.
History
Last changed by/on SAP  20140121 
SAP Release Created in 740