Example #1
0
FXFT_Face CFX_FontMgr::AddCachedFace(const CFX_ByteString& face_name,
                                     int weight, FX_BOOL bItalic, FX_LPBYTE pData, FX_DWORD size, int face_index)
{
    CTTFontDesc* pFontDesc = FX_NEW CTTFontDesc;
    if (!pFontDesc) {
        return NULL;
    }
    pFontDesc->m_Type = 1;
    pFontDesc->m_SingleFace.m_pFace = NULL;
    pFontDesc->m_SingleFace.m_bBold = weight;
    pFontDesc->m_SingleFace.m_bItalic = bItalic;
    pFontDesc->m_pFontData = pData;
    pFontDesc->m_RefCount = 1;
    FXFT_Library library;
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
    library = m_FTLibrary;
    int ret = FXFT_New_Memory_Face(library, pData, size, face_index, &pFontDesc->m_SingleFace.m_pFace);
    if (ret) {
        delete pFontDesc;
        return NULL;
    }
    ret = FXFT_Set_Pixel_Sizes(pFontDesc->m_SingleFace.m_pFace, 64, 64);
    if (ret) {
        delete pFontDesc;
        return NULL;
    }
    CFX_ByteString key(face_name);
    key += ',';
    key += CFX_ByteString::FormatInteger(weight);
    key += bItalic ? 'I' : 'N';
    m_FaceMap.SetAt(key, pFontDesc);
    return pFontDesc->m_SingleFace.m_pFace;
}
FX_BOOL CFPF_SkiaFontMgr::InitFTLibrary()
{
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
    return m_FTLibrary != NULL;
}
Example #3
0
void CFX_FontMgr::InitFTLibrary() {
  if (m_FTLibrary)
    return;
  FXFT_Init_FreeType(&m_FTLibrary);
  m_FTLibrarySupportsHinting =
      FXFT_Library_SetLcdFilter(m_FTLibrary, FT_LCD_FILTER_DEFAULT) !=
      FT_Err_Unimplemented_Feature;
}
Example #4
0
FX_BOOL CFX_Font::LoadFile(IFX_FileRead* pFile)
{
    m_bEmbedded = FALSE;
    FXFT_Library library;
    if (CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary);
    }
    library = CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary;
    FXFT_Stream stream = NULL;
    if (!_LoadFile(library, &m_Face, pFile, &stream)) {
        return FALSE;
    }
    m_pOwnedStream = stream;
    FXFT_Set_Pixel_Sizes(m_Face, 0, 64);
    return TRUE;
}
Example #5
0
FXFT_Face CFX_FontMgr::FindSubstFont(const CFX_ByteString& face_name, FX_BOOL bTrueType,
                                     FX_DWORD flags, int weight, int italic_angle, int CharsetCP, CFX_SubstFont* pSubstFont)
{
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
    if (m_pExtMapper) {
        FXFT_Face face = m_pExtMapper->FindSubstFont(face_name, bTrueType, flags, weight, italic_angle,
                         CharsetCP, pSubstFont);
        if (face) {
            return face;
        }
    }
    return m_pBuiltinMapper->FindSubstFont(face_name, bTrueType, flags, weight, italic_angle,
                                           CharsetCP, pSubstFont);
}
Example #6
0
static FXFT_Face FT_LoadFont(FX_LPBYTE pData, int size)
{
    FXFT_Library library;
    if (CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary);
    }
    library = CFX_GEModule::Get()->GetFontMgr()->m_FTLibrary;
    FXFT_Face face;
    int error = FXFT_New_Memory_Face(library, pData, size, 0, &face);
    if (error) {
        return NULL;
    }
    error = FXFT_Set_Pixel_Sizes(face, 64, 64);
    if (error) {
        return NULL;
    }
    return face;
}
Example #7
0
FXFT_Face CFX_FontMgr::GetFileFace(FX_LPCSTR filename, int face_index)
{
    FXFT_Library library;
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
    library = m_FTLibrary;
    FXFT_Face face = NULL;
    int ret = FXFT_New_Face(library, filename, face_index, &face);
    if (ret) {
        return NULL;
    }
    ret = FXFT_Set_Pixel_Sizes(face, 64, 64);
    if (ret) {
        return NULL;
    }
    return face;
}
Example #8
0
FXFT_Face CFX_FontMgr::GetFixedFace(FX_LPCBYTE pData, FX_DWORD size, int face_index)
{
    FXFT_Library library;
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
    library = m_FTLibrary;
    FXFT_Face face = NULL;
    int ret = FXFT_New_Memory_Face(library, pData, size, face_index, &face);
    if (ret) {
        return NULL;
    }
    ret = FXFT_Set_Pixel_Sizes(face, 64, 64);
    if (ret) {
        return NULL;
    }
    return face;
}
Example #9
0
void CFX_FontMgr::InitFTLibrary()
{
    if (m_FTLibrary == NULL) {
        FXFT_Init_FreeType(&m_FTLibrary);
    }
}
Example #10
0
FX_BOOL CFPF_SkiaFontMgr::InitFTLibrary() {
  if (!m_FTLibrary)
    FXFT_Init_FreeType(&m_FTLibrary);
  return !!m_FTLibrary;
}