1ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Copyright 2014 PDFium Authors. All rights reserved. 2ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Use of this source code is governed by a BSD-style license that can be 3ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// found in the LICENSE file. 4ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 5ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 7ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#ifndef _FX_ANDROID_FONT_H_ 8ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#define _FX_ANDROID_FONT_H_ 9ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#if _FX_OS_ == _FX_ANDROID_ 10ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass IFPF_FontMgr; 11ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovclass CFX_AndroidFontInfo : public IFX_SystemFontInfo 12ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov{ 13ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovpublic: 14ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov CFX_AndroidFontInfo(); 15ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void Release() 16ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov { 17ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov delete this; 18ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov } 19ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 20ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual FX_BOOL EnumFontList(CFX_FontMapper* pMapper); 21ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 22ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void* MapFont(int weight, FX_BOOL bItalic, int charset, int pitch_family, FX_LPCSTR face, FX_BOOL& bExact); 23ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 24ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void* GetFont(FX_LPCSTR face); 25ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual FX_DWORD GetFontData(void* hFont, FX_DWORD table, FX_LPBYTE buffer, FX_DWORD size); 26ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual FX_BOOL GetFaceName(void* hFont, CFX_ByteString& name); 27ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual FX_BOOL GetFontCharset(void* hFont, int& charset); 28ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov 29ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void DeleteFont(void* hFont); 30ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov virtual void* RetainFont(void* hFont); 31ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov FX_BOOL Init(IFPF_FontMgr *pFontMgr); 32ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganovprotected: 33ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov IFPF_FontMgr *m_pFontMgr; 34ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov}; 35ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif 36ee451cb395940862dad63c85adfe8f2fd55e864cSvet Ganov#endif 37