1e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Copyright 2014 PDFium Authors. All rights reserved. 2e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Use of this source code is governed by a BSD-style license that can be 3e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// found in the LICENSE file. 4ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 5e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 7e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#ifndef FPDFSDK_INCLUDE_FORMFILLER_FFL_CBA_FONTMAP_H_ 8e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#define FPDFSDK_INCLUDE_FORMFILLER_FFL_CBA_FONTMAP_H_ 9e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 10ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann#include "fpdfsdk/include/pdfwindow/PWL_FontMap.h" 11e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 12e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganovclass CPDF_Dictionary; 13e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganovclass CPDFSDK_Annot; 14e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 15ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmannclass CBA_FontMap : public CPWL_FontMap { 16ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann public: 17ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CBA_FontMap(CPDFSDK_Annot* pAnnot, IFX_SystemHandler* pSystemHandler); 18ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann ~CBA_FontMap() override; 19ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 20ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void SetDefaultFont(CPDF_Font* pFont, const CFX_ByteString& sFontName); 21ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 22ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void Reset(); 23ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void SetAPType(const CFX_ByteString& sAPType); 24ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 25ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann private: 26ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann // CPWL_FontMap: 27ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void Initialize() override; 28ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Document* GetDocument() override; 29ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Font* FindFontSameCharset(CFX_ByteString& sFontAlias, 30ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t nCharset) override; 31ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void AddedFont(CPDF_Font* pFont, const CFX_ByteString& sFontAlias) override; 32ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 33ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Font* FindResFontSameCharset(CPDF_Dictionary* pResDict, 34ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CFX_ByteString& sFontAlias, 35ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann int32_t nCharset); 36ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Font* GetAnnotDefaultFont(CFX_ByteString& csNameTag); 37ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann void AddFontToAnnotDict(CPDF_Font* pFont, const CFX_ByteString& sAlias); 38ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann 39ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Document* m_pDocument; 40ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Dictionary* m_pAnnotDict; 41ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CPDF_Font* m_pDefaultFont; 42ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CFX_ByteString m_sDefaultFontName; 43ac3d58cff7c80b0ef56bf55130d91da17cbaa3c4Philip P. Moltmann CFX_ByteString m_sAPType; 44e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov}; 45e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov 46e6986e1e8d4a57987f47c215490cb080a65ee29aSvet Ganov#endif // FPDFSDK_INCLUDE_FORMFILLER_FFL_CBA_FONTMAP_H_ 47