这篇教程C++ FT_FACE_FIND_SERVICE函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中FT_FACE_FIND_SERVICE函数的典型用法代码示例。如果您正苦于以下问题:C++ FT_FACE_FIND_SERVICE函数的具体用法?C++ FT_FACE_FIND_SERVICE怎么用?C++ FT_FACE_FIND_SERVICE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了FT_FACE_FIND_SERVICE函数的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: FT_Get_CID_Registry_Ordering_Supplement FT_Get_CID_Registry_Ordering_Supplement( FT_Face face, const char* *registry, const char* *ordering, FT_Int *supplement) { FT_Error error; const char* r = NULL; const char* o = NULL; FT_Int s = 0; error = FT_ERR( Invalid_Argument ); if ( face ) { FT_Service_CID service; FT_FACE_FIND_SERVICE( face, service, CID ); if ( service && service->get_ros ) error = service->get_ros( face, &r, &o, &s ); } if ( registry ) *registry = r; if ( ordering ) *ordering = o; if ( supplement ) *supplement = s; return error; }
开发者ID:151706061,项目名称:PDFium,代码行数:35,
示例2: FT_Get_FSType_Flags FT_Get_FSType_Flags( FT_Face face ) { TT_OS2* os2; /* first, try to get the fs_type directly from the font */ if ( face ) { FT_Service_PsInfo service = NULL; FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_get_font_extra ) { PS_FontExtraRec extra; if ( !service->ps_get_font_extra( face, &extra ) && extra.fs_type != 0 ) return extra.fs_type; } } /* look at FSType before fsType for Type42 */ if ( ( os2 = (TT_OS2*)FT_Get_Sfnt_Table( face, ft_sfnt_os2 ) ) != NULL && os2->version != 0xFFFFU ) return os2->fsType; return 0; }
开发者ID:151706061,项目名称:PDFium,代码行数:32,
示例3: FT_Get_BDF_Property FT_Get_BDF_Property( FT_Face face, const char* prop_name, BDF_PropertyRec *aproperty ) { FT_Error error; FT_Service_BDF service; if ( !face ) return FT_THROW( Invalid_Face_Handle ); if ( !aproperty ) return FT_THROW( Invalid_Argument ); aproperty->type = BDF_PROPERTY_TYPE_NONE; FT_FACE_FIND_SERVICE( face, service, BDF ); if ( service && service->get_property ) error = service->get_property( face, prop_name, aproperty ); else error = FT_THROW( Invalid_Argument ); return error; }
开发者ID:1nt3g3r,项目名称:libgdx,代码行数:26,
示例4: _tt_check_patents_in_table static FT_Bool _tt_check_patents_in_table( FT_Face face, FT_ULong tag ) { FT_Stream stream = face->stream; FT_Error error = FT_Err_Ok; FT_Service_SFNT_Table service; FT_Bool result = FALSE; FT_FACE_FIND_SERVICE( face, service, SFNT_TABLE ); if ( service ) { FT_UInt i = 0; FT_ULong tag_i = 0, offset_i = 0, length_i = 0; for ( i = 0; !error && tag_i != tag ; i++ ) error = service->table_info( face, i, &tag_i, &offset_i, &length_i ); if ( error || FT_STREAM_SEEK( offset_i ) ) goto Exit; result = _tt_check_patents_in_range( stream, length_i ); } Exit: return result; }
开发者ID:sheldonrobinson,项目名称:VcXsrv,代码行数:32,
示例5: FT_Get_BDF_Charset_ID FT_Get_BDF_Charset_ID( FT_Face face, const char* *acharset_encoding, const char* *acharset_registry ) { FT_Error error; const char* encoding = NULL; const char* registry = NULL; FT_Service_BDF service; if ( !face ) return FT_THROW( Invalid_Face_Handle ); FT_FACE_FIND_SERVICE( face, service, BDF ); if ( service && service->get_charset_id ) error = service->get_charset_id( face, &encoding, ®istry ); else error = FT_THROW( Invalid_Argument ); if ( acharset_encoding ) *acharset_encoding = encoding; if ( acharset_registry ) *acharset_registry = registry; return error; }
开发者ID:1nt3g3r,项目名称:libgdx,代码行数:29,
示例6: _tt_check_patents_in_table static FT_Bool _tt_check_patents_in_table( FT_Face face, FT_ULong tag ) { FT_Stream stream = face->stream; FT_Error error; FT_Service_SFNT_Table service; FT_Bool result = FALSE; FT_FACE_FIND_SERVICE( face, service, SFNT_TABLE ); if ( service ) { FT_ULong offset, size; error = service->table_info( face, tag, &offset, &size ); if ( error || FT_STREAM_SEEK( offset ) ) goto Exit; result = _tt_check_patents_in_range( stream, size ); } Exit: return result; }
开发者ID:LiberatorUSA,项目名称:GUCEF,代码行数:28,
示例7: FT_Get_Font_Format FT_Get_Font_Format( FT_Face face ) { const char* result = NULL; if ( face ) FT_FACE_FIND_SERVICE( face, result, FONT_FORMAT ); return result; }
开发者ID:UnknownShadow200,项目名称:ClassicalSharp,代码行数:10,
示例8: FT_Get_X11_Font_Format FT_Get_X11_Font_Format( FT_Face face ) { const char* result = NULL; if ( face ) FT_FACE_FIND_SERVICE( face, result, XF86_NAME ); return result; }
开发者ID:2or3,项目名称:PlaygroundOSS,代码行数:10,
示例9: FT_Has_PS_Glyph_Names FT_Has_PS_Glyph_Names( FT_Face face ) { FT_Int result = 0; FT_Service_PsInfo service = NULL; if ( face ) { FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_has_glyph_names ) result = service->ps_has_glyph_names( face ); } return result; }
开发者ID:erichocean,项目名称:myos.android.libraries,代码行数:16,
示例10: FT_Get_PS_Font_ValueFT_Get_PS_Font_Value( FT_Face face, PS_Dict_Keys key, FT_UInt idx, void *value, FT_Long value_len ){ FT_Int result = 0; FT_Service_PsInfo service = NULL; if ( face ) { FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_get_font_value ) result = service->ps_get_font_value( face, key, idx, value, value_len ); } return result;}
开发者ID:Drakey83,项目名称:steamlink-sdk,代码行数:18,
示例11: FT_Get_PS_Font_Private FT_Get_PS_Font_Private( FT_Face face, PS_PrivateRec* afont_private ) { FT_Error error = FT_ERR( Invalid_Argument ); if ( face ) { FT_Service_PsInfo service = NULL; FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_get_font_private ) error = service->ps_get_font_private( face, afont_private ); } return error; }
开发者ID:erichocean,项目名称:myos.android.libraries,代码行数:19,
示例12: FT_Get_PS_Font_Info FT_Get_PS_Font_Info( FT_Face face, PS_FontInfoRec* afont_info ) { FT_Error error = FT_Err_Invalid_Argument; if ( face ) { FT_Service_PsInfo service = NULL; FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_get_font_info ) error = service->ps_get_font_info( face, afont_info ); } return error; }
开发者ID:Keno,项目名称:o3,代码行数:19,
示例13: FT_Get_PS_Font_Private FT_Get_PS_Font_Private( FT_Face face, PS_PrivateRec* afont_private ) { FT_Error error; FT_Service_PsInfo service; if ( !face ) return FT_THROW( Invalid_Face_Handle ); if ( !afont_private ) return FT_THROW( Invalid_Argument ); FT_FACE_FIND_SERVICE( face, service, POSTSCRIPT_INFO ); if ( service && service->ps_get_font_private ) error = service->ps_get_font_private( face, afont_private ); else error = FT_THROW( Invalid_Argument ); return error; }
开发者ID:ImageMagick,项目名称:ttf,代码行数:22,
示例14: FT_Get_CID_Is_Internally_CID_Keyed FT_Get_CID_Is_Internally_CID_Keyed( FT_Face face, FT_Bool *is_cid ) { FT_Error error = FT_ERR( Invalid_Argument ); FT_Bool ic = 0; if ( face ) { FT_Service_CID service; FT_FACE_FIND_SERVICE( face, service, CID ); if ( service && service->get_is_cid ) error = service->get_is_cid( face, &ic); } if ( is_cid ) *is_cid = ic; return error; }
开发者ID:151706061,项目名称:PDFium,代码行数:23,
示例15: FT_Get_BDF_Property FT_Get_BDF_Property( FT_Face face, const char* prop_name, BDF_PropertyRec *aproperty ) { FT_Error error; error = FT_ERR( Invalid_Argument ); aproperty->type = BDF_PROPERTY_TYPE_NONE; if ( face ) { FT_Service_BDF service; FT_FACE_FIND_SERVICE( face, service, BDF ); if ( service && service->get_property ) error = service->get_property( face, prop_name, aproperty ); } return error; }
开发者ID:WHS-TechOps,项目名称:Aviator,代码行数:24,
示例16: FT_Get_CID_From_Glyph_Index FT_Get_CID_From_Glyph_Index( FT_Face face, FT_UInt glyph_index, FT_UInt *cid ) { FT_Error error = FT_ERR( Invalid_Argument ); FT_UInt c = 0; if ( face ) { FT_Service_CID service; FT_FACE_FIND_SERVICE( face, service, CID ); if ( service && service->get_cid_from_glyph_index ) error = service->get_cid_from_glyph_index( face, glyph_index, &c); } if ( cid ) *cid = c; return error; }
开发者ID:151706061,项目名称:PDFium,代码行数:24,
示例17: _tt_face_check_patents static FT_Bool _tt_face_check_patents( FT_Face face ) { FT_Stream stream = face->stream; FT_UInt gindex; FT_Error error; FT_Bool result; FT_Service_TTGlyf service; result = _tt_check_patents_in_table( face, TTAG_fpgm ); if ( result ) goto Exit; result = _tt_check_patents_in_table( face, TTAG_prep ); if ( result ) goto Exit; FT_FACE_FIND_SERVICE( face, service, TT_GLYF ); if ( service == NULL ) goto Exit; for ( gindex = 0; gindex < (FT_UInt)face->num_glyphs; gindex++ ) { FT_ULong offset, num_ins, size; FT_Int num_contours; offset = service->get_location( face, gindex, &size ); if ( size == 0 ) continue; if ( FT_STREAM_SEEK( offset ) || FT_READ_SHORT( num_contours ) ) continue; if ( num_contours >= 0 ) /* simple glyph */ { if ( FT_STREAM_SKIP( 8 + num_contours * 2 ) ) continue; } else /* compound glyph */ { FT_Bool has_instr = 0; if ( FT_STREAM_SKIP( 8 ) ) continue; /* now read each component */ for (;;) { FT_UInt flags, toskip; if( FT_READ_USHORT( flags ) ) break; toskip = 2 + 1 + 1; if ( ( flags & ( 1 << 0 ) ) != 0 ) /* ARGS_ARE_WORDS */ toskip += 2; if ( ( flags & ( 1 << 3 ) ) != 0 ) /* WE_HAVE_A_SCALE */ toskip += 2; else if ( ( flags & ( 1 << 6 ) ) != 0 ) /* WE_HAVE_X_Y_SCALE */ toskip += 4; else if ( ( flags & ( 1 << 7 ) ) != 0 ) /* WE_HAVE_A_2x2 */ toskip += 8; if ( ( flags & ( 1 << 8 ) ) != 0 ) /* WE_HAVE_INSTRUCTIONS */ has_instr = 1; if ( FT_STREAM_SKIP( toskip ) ) goto NextGlyph; if ( ( flags & ( 1 << 5 ) ) == 0 ) /* MORE_COMPONENTS */ break; } if ( !has_instr ) goto NextGlyph; } if ( FT_READ_USHORT( num_ins ) ) continue; result = _tt_check_patents_in_range( stream, num_ins ); if ( result ) goto Exit; NextGlyph: ; } Exit: return result; }
开发者ID:sheldonrobinson,项目名称:VcXsrv,代码行数:99,
注:本文中的FT_FACE_FIND_SERVICE函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ FT_FRAME_ENTER函数代码示例 C++ FT_FACE函数代码示例 |