亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? t1objs.c

?? a very goog book
?? C
?? 第 1 頁 / 共 2 頁
字號:
/***************************************************************************//*                                                                         *//*  t1objs.c                                                               *//*                                                                         *//*    Type 1 objects manager (body).                                       *//*                                                                         *//*  Copyright 1996-2001, 2002 by                                           *//*  David Turner, Robert Wilhelm, and Werner Lemberg.                      *//*                                                                         *//*  This file is part of the FreeType project, and may only be used,       *//*  modified, and distributed under the terms of the FreeType project      *//*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     *//*  this file you indicate that you have read the license and              *//*  understand and accept it fully.                                        *//*                                                                         *//***************************************************************************/#include <ft2build.h>#include FT_INTERNAL_DEBUG_H#include FT_INTERNAL_STREAM_H#include "t1gload.h"#include "t1load.h"#include "t1errors.h"#ifndef T1_CONFIG_OPTION_NO_AFM#include "t1afm.h"#endif#include FT_INTERNAL_POSTSCRIPT_NAMES_H#include FT_INTERNAL_POSTSCRIPT_AUX_H  /*************************************************************************/  /*                                                                       */  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */  /* messages during execution.                                            */  /*                                                                       */#undef  FT_COMPONENT#define FT_COMPONENT  trace_t1objs  /*************************************************************************/  /*                                                                       */  /*                            SIZE FUNCTIONS                             */  /*                                                                       */  /*  note that we store the global hints in the size's "internal" root    */  /*  field                                                                */  /*                                                                       */  /*************************************************************************/  static PSH_Globals_Funcs  T1_Size_Get_Globals_Funcs( T1_Size  size )  {    T1_Face           face     = (T1_Face)size->root.face;    PSHinter_Service  pshinter = (PSHinter_Service)face->pshinter;    FT_Module         module;    module = FT_Get_Module( size->root.face->driver->root.library,                            "pshinter" );    return ( module && pshinter && pshinter->get_globals_funcs )           ? pshinter->get_globals_funcs( module )           : 0 ;  }  FT_LOCAL_DEF( void )  T1_Size_Done( T1_Size  size )  {    if ( size->root.internal )    {      PSH_Globals_Funcs  funcs;      funcs = T1_Size_Get_Globals_Funcs( size );      if ( funcs )        funcs->destroy( (PSH_Globals)size->root.internal );      size->root.internal = 0;    }  }  FT_LOCAL_DEF( FT_Error )  T1_Size_Init( T1_Size  size )  {    FT_Error           error = 0;    PSH_Globals_Funcs  funcs = T1_Size_Get_Globals_Funcs( size );    if ( funcs )    {      PSH_Globals  globals;      T1_Face      face = (T1_Face)size->root.face;      error = funcs->create( size->root.face->memory,                             &face->type1.private_dict, &globals );      if ( !error )        size->root.internal = (FT_Size_Internal)(void*)globals;    }    return error;  }  FT_LOCAL_DEF( FT_Error )  T1_Size_Reset( T1_Size  size )  {    PSH_Globals_Funcs  funcs = T1_Size_Get_Globals_Funcs( size );    FT_Error           error = 0;    if ( funcs )      error = funcs->set_scale( (PSH_Globals)size->root.internal,                                 size->root.metrics.x_scale,                                 size->root.metrics.y_scale,                                 0, 0 );    return error;  }  /*************************************************************************/  /*                                                                       */  /*                            SLOT  FUNCTIONS                            */  /*                                                                       */  /*************************************************************************/  FT_LOCAL_DEF( void )  T1_GlyphSlot_Done( T1_GlyphSlot  slot )  {    slot->root.internal->glyph_hints = 0;  }  FT_LOCAL_DEF( FT_Error )  T1_GlyphSlot_Init( T1_GlyphSlot  slot )  {    T1_Face           face;    PSHinter_Service  pshinter;    face     = (T1_Face)slot->root.face;    pshinter = (PSHinter_Service)face->pshinter;    if ( pshinter )    {      FT_Module  module;      module = FT_Get_Module( slot->root.face->driver->root.library, "pshinter" );      if (module)      {        T1_Hints_Funcs  funcs;        funcs = pshinter->get_t1_funcs( module );        slot->root.internal->glyph_hints = (void*)funcs;      }    }    return 0;  }  /*************************************************************************/  /*                                                                       */  /*                            FACE  FUNCTIONS                            */  /*                                                                       */  /*************************************************************************/  /*************************************************************************/  /*                                                                       */  /* <Function>                                                            */  /*    T1_Face_Done                                                       */  /*                                                                       */  /* <Description>                                                         */  /*    The face object destructor.                                        */  /*                                                                       */  /* <Input>                                                               */  /*    face :: A typeless pointer to the face object to destroy.          */  /*                                                                       */  FT_LOCAL_DEF( void )  T1_Face_Done( T1_Face  face )  {    FT_Memory  memory;    T1_Font    type1 = &face->type1;    if ( face )    {      memory = face->root.memory;#ifndef T1_CONFIG_OPTION_NO_MM_SUPPORT      /* release multiple masters information */      T1_Done_Blend( face );      face->blend = 0;#endif      /* release font info strings */      {        PS_FontInfo  info = &type1->font_info;        FT_FREE( info->version );        FT_FREE( info->notice );        FT_FREE( info->full_name );        FT_FREE( info->family_name );        FT_FREE( info->weight );      }      /* release top dictionary */      FT_FREE( type1->charstrings_len );      FT_FREE( type1->charstrings );      FT_FREE( type1->glyph_names );      FT_FREE( type1->subrs );      FT_FREE( type1->subrs_len );      FT_FREE( type1->subrs_block );      FT_FREE( type1->charstrings_block );      FT_FREE( type1->glyph_names_block );      FT_FREE( type1->encoding.char_index );      FT_FREE( type1->encoding.char_name );      FT_FREE( type1->font_name );#ifndef T1_CONFIG_OPTION_NO_AFM      /* release afm data if present */      if ( face->afm_data )        T1_Done_AFM( memory, (T1_AFM*)face->afm_data );#endif      /* release unicode map, if any */      FT_FREE( face->unicode_map.maps );      face->unicode_map.num_maps = 0;      face->root.family_name = 0;      face->root.style_name  = 0;    }  }  /*************************************************************************/  /*                                                                       */  /* <Function>                                                            */  /*    T1_Face_Init                                                       */  /*                                                                       */  /* <Description>                                                         */  /*    The face object constructor.                                       */  /*                                                                       */  /* <Input>                                                               */  /*    stream     ::  input stream where to load font data.               */  /*                                                                       */  /*    face_index :: The index of the font face in the resource.          */  /*                                                                       */  /*    num_params :: Number of additional generic parameters.  Ignored.   */  /*                                                                       */  /*    params     :: Additional generic parameters.  Ignored.             */  /*                                                                       */  /* <InOut>                                                               */  /*    face       :: The face record to build.                            */  /*                                                                       */  /* <Return>                                                              */  /*    FreeType error code.  0 means success.                             */  /*                                                                       */  FT_LOCAL_DEF( FT_Error )  T1_Face_Init( FT_Stream      stream,                T1_Face        face,                FT_Int         face_index,                FT_Int         num_params,                FT_Parameter*  params )  {    FT_Error          error;    PSNames_Service   psnames;    PSAux_Service     psaux;    PSHinter_Service  pshinter;    FT_UNUSED( num_params );    FT_UNUSED( params );    FT_UNUSED( face_index );    FT_UNUSED( stream );    face->root.num_faces = 1;    face->psnames = FT_Get_Module_Interface( FT_FACE_LIBRARY( face ),                                             "psnames" );    psnames = (PSNames_Service)face->psnames;    face->psaux = FT_Get_Module_Interface( FT_FACE_LIBRARY( face ),                                           "psaux" );    psaux = (PSAux_Service)face->psaux;    face->pshinter = FT_Get_Module_Interface( FT_FACE_LIBRARY( face ),                                              "pshinter" );    pshinter = (PSHinter_Service)face->pshinter;    /* open the tokenizer, this will also check the font format */    error = T1_Open_Face( face );    if ( error )      goto Exit;    /* if we just wanted to check the format, leave successfully now */    if ( face_index < 0 )

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区激情| 久久久亚洲高清| 亚洲成人黄色影院| 7777精品伊人久久久大香线蕉的 | 日韩一区二区免费视频| 日韩黄色免费网站| 日韩精品自拍偷拍| 国产精品1024| 亚洲欧美日韩一区二区 | 国产精品亚洲视频| 国产拍揄自揄精品视频麻豆| 成人免费视频app| 亚洲欧美综合另类在线卡通| 欧美午夜精品免费| 麻豆国产一区二区| 国产精品久久久久久久久久免费看| 91婷婷韩国欧美一区二区| 一级女性全黄久久生活片免费| 欧美日韩你懂得| 国产一区二区三区免费看| 亚洲欧洲成人av每日更新| 在线一区二区视频| 国产美女娇喘av呻吟久久| 亚洲欧洲日产国产综合网| 欧美精三区欧美精三区| 国产综合久久久久久久久久久久| 最新中文字幕一区二区三区| 欧美一区二区三区影视| 成人一二三区视频| 日韩av电影一区| 日韩美女久久久| 精品国产一区二区三区av性色| gogogo免费视频观看亚洲一| 天天综合色天天| 国产精品美日韩| 日韩精品一区二区三区老鸭窝| 色综合一区二区| 国产精品一级片在线观看| 一区二区三区在线观看视频| 久久无码av三级| 欧美情侣在线播放| 成年人午夜久久久| 国产精品一卡二卡在线观看| 日韩精品国产欧美| 亚洲人成精品久久久久| 久久久久久免费毛片精品| 欧美色手机在线观看| 99久免费精品视频在线观看| 欧美日韩国产成人在线91| 粉嫩蜜臀av国产精品网站| 久久成人免费网站| 婷婷久久综合九色综合绿巨人 | 国产精品毛片久久久久久久| 欧美一区二区三区视频免费 | 欧美日韩国产综合久久| jlzzjlzz国产精品久久| 国产麻豆91精品| 精品一区二区三区免费观看| 午夜一区二区三区在线观看| 亚洲人成精品久久久久| 国产精品理伦片| 中文欧美字幕免费| 国产亚洲一本大道中文在线| 538在线一区二区精品国产| 欧美在线视频不卡| 在线国产亚洲欧美| 色视频欧美一区二区三区| 成人97人人超碰人人99| 成人午夜av在线| 国产一区久久久| 国内精品免费在线观看| 久久 天天综合| 九色综合国产一区二区三区| 久久精品国产99| 精品一区二区三区免费播放| 久久国产生活片100| 激情深爱一区二区| 国产乱一区二区| 粉嫩一区二区三区在线看| 国产成人啪午夜精品网站男同| 激情综合色播激情啊| 国内成人精品2018免费看| 久久99热99| 高清国产一区二区| 色婷婷久久久亚洲一区二区三区 | 26uuu欧美| 欧美国产日产图区| 国产精品午夜免费| 亚洲三级免费观看| 亚洲一区二区三区在线| 日韩制服丝袜先锋影音| 麻豆精品视频在线| 粉嫩一区二区三区性色av| 成人国产免费视频| 色天天综合久久久久综合片| 欧美日韩www| 精品国内二区三区| 中文字幕一区二区不卡| 亚洲成人黄色影院| 韩国理伦片一区二区三区在线播放| 国产一区二区91| 91视频一区二区三区| 欧美浪妇xxxx高跟鞋交| 26uuu国产电影一区二区| 国产精品久久久久精k8| 午夜欧美大尺度福利影院在线看| 精品一区精品二区高清| 99久久国产综合精品色伊| 欧美日韩精品福利| 国产亚洲欧美日韩在线一区| 亚洲欧美成人一区二区三区| 亚洲18影院在线观看| 国产成人自拍网| 日韩理论片网站| 蜜桃视频一区二区三区在线观看| 懂色av噜噜一区二区三区av| 欧美三级一区二区| 国产欧美精品一区二区三区四区| 夜夜揉揉日日人人青青一国产精品| 日本视频在线一区| 成人手机在线视频| 欧美一级搡bbbb搡bbbb| 亚洲欧洲精品一区二区三区不卡| 天堂一区二区在线免费观看| 国产aⅴ综合色| 3atv一区二区三区| 中文字幕亚洲电影| 美女在线观看视频一区二区| 色综合久久99| 久久久亚洲欧洲日产国码αv| 亚洲影视在线播放| 成人av资源在线观看| 欧美成人伊人久久综合网| 亚洲免费视频中文字幕| 国产不卡视频在线播放| 欧美一区二区三区在线视频| 一区二区三区四区亚洲| 高清成人免费视频| 久久综合久久鬼色| 日本免费在线视频不卡一不卡二| 99久久伊人网影院| 国产亚洲女人久久久久毛片| 青青草国产精品亚洲专区无| 在线观看中文字幕不卡| 最新高清无码专区| 国产精品一二三四区| 日韩一区二区电影在线| 一个色妞综合视频在线观看| 成人av网站在线观看免费| 久久天天做天天爱综合色| 午夜激情一区二区三区| 欧美在线小视频| 亚洲视频一区二区在线观看| 成人福利电影精品一区二区在线观看| 欧美电视剧免费全集观看| 日本不卡免费在线视频| 欧美精品日日鲁夜夜添| 亚洲国产美国国产综合一区二区| 99国产精品国产精品毛片| 国产精品不卡一区| 99re8在线精品视频免费播放| 国产精品午夜在线观看| 成人综合婷婷国产精品久久免费| 久久久久久久久久久久久夜| 国产一区二区视频在线播放| 精品国产免费视频| 国产一区中文字幕| 久久中文娱乐网| 国产乱色国产精品免费视频| 国产日韩三级在线| 成人精品鲁一区一区二区| 亚洲欧洲精品一区二区三区| 99热精品一区二区| 亚洲综合男人的天堂| 欧美日韩成人综合| 久久er99精品| 日本一区二区在线不卡| 99久久免费精品| 一区二区三区四区精品在线视频| 在线观看成人免费视频| 亚洲成av人片www| 日韩欧美一级特黄在线播放| 狠狠久久亚洲欧美| 亚洲国产精品精华液ab| 96av麻豆蜜桃一区二区| 亚洲a一区二区| 精品福利av导航| 99九九99九九九视频精品| 亚洲午夜一二三区视频| 欧美一区永久视频免费观看| 国产一区欧美日韩| 中文字幕亚洲欧美在线不卡| 在线看一区二区| 久久精品国产亚洲高清剧情介绍| 久久久久久久网| 99精品一区二区三区| 97久久精品人人爽人人爽蜜臀| 亚洲第一搞黄网站| 久久免费视频色| 色呦呦日韩精品|