// CodeGear C++Builder
// Copyright (c) 1995, 2009 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Fpdfextensions.pas' rev: 21.00

#ifndef FpdfextensionsHPP
#define FpdfextensionsHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Fpdfview.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Fpdfextensions
{
//-- type declarations -------------------------------------------------------
struct UNSUPPORT_INFO;
typedef UNSUPPORT_INFO *PUNSUPPORT_INFO;

typedef void __cdecl (*FSDK_UnSupport_Handler)(PUNSUPPORT_INFO pThis, int nType);

struct UNSUPPORT_INFO
{
	
public:
	int version;
	FSDK_UnSupport_Handler FSDK_UnSupport_Handler;
};


typedef int __cdecl (*TFSDK_SetUnSpObjProcessHandler)(UNSUPPORT_INFO &unsp_info);

typedef void __cdecl (*TFSDK_SetTimeFunction)(void * func);

typedef void __cdecl (*TFSDK_SetLocaltimeFunction)(void * func);

typedef int __cdecl (*TFPDFDoc_GetPageMode)(void * document);

struct FPDF_SYSFONTINFO;
typedef FPDF_SYSFONTINFO *PFPDF_SYSFONTINFO;

typedef void __cdecl (*Release)(PFPDF_SYSFONTINFO pThis);

typedef void __cdecl (*EnumFonts)(PFPDF_SYSFONTINFO pThis, void * pMapper);

typedef void * __cdecl (*MapFont)(PFPDF_SYSFONTINFO pThis, int weight, int bItalic, int charset, int pitch_family, char * face, int &bExact);

typedef void * __cdecl (*GetFont)(PFPDF_SYSFONTINFO pThis, char * face);

typedef unsigned __cdecl (*GetFontData)(PFPDF_SYSFONTINFO pThis, void * hFont, unsigned table, System::PByte buffer, unsigned buf_size);

typedef unsigned __cdecl (*GetFaceName)(PFPDF_SYSFONTINFO pThis, void * hFont, char * buffer, unsigned buf_size);

typedef int __cdecl (*GetFontCharset)(PFPDF_SYSFONTINFO pThis, void * hFont);

typedef void __cdecl (*DeleteFont)(PFPDF_SYSFONTINFO pThis, void * hFont);

struct FPDF_SYSFONTINFO
{
	
public:
	int version;
	Release Release;
	EnumFonts EnumFonts;
	MapFont MapFont;
	GetFont GetFont;
	GetFontData GetFontData;
	GetFaceName GetFaceName;
	GetFontCharset GetFontCharset;
	DeleteFont DeleteFont;
};


struct FPDF_CharsetFontMap
{
	
public:
	int charset;
	char *fontname;
};


typedef FPDF_CharsetFontMap *PFPDF_CharsetFontMap;

typedef PFPDF_CharsetFontMap __cdecl (*TFPDF_GetDefaultTTFMap)(void);

typedef unsigned __cdecl (*TFPDF_GetDefaultTTFMapCount)(void);

typedef PFPDF_CharsetFontMap __cdecl (*TFPDF_GetDefaultTTFMapEntry)(unsigned index);

typedef void __cdecl (*TFPDF_AddInstalledFont)(void * mapper, char * face, int charset);

typedef void __cdecl (*TFPDF_SetSystemFontInfo)(FPDF_SYSFONTINFO &pFontInfo);

typedef PFPDF_SYSFONTINFO __cdecl (*TFPDF_GetDefaultSystemFontInfo)(void);

typedef void __cdecl (*TFPDF_FreeDefaultSystemFontInfo)(PFPDF_SYSFONTINFO pFontInfo);

//-- var, const, procedure ---------------------------------------------------
static const ShortInt FPDF_UNSP_DOC_XFAFORM = 0x1;
static const ShortInt FPDF_UNSP_DOC_PORTABLECOLLECTION = 0x2;
static const ShortInt FPDF_UNSP_DOC_ATTACHMENT = 0x3;
static const ShortInt FPDF_UNSP_DOC_SECURITY = 0x4;
static const ShortInt FPDF_UNSP_DOC_SHAREDREVIEW = 0x5;
static const ShortInt FPDF_UNSP_DOC_SHAREDFORM_ACROBAT = 0x6;
static const ShortInt FPDF_UNSP_DOC_SHAREDFORM_FILESYSTEM = 0x7;
static const ShortInt FPDF_UNSP_DOC_SHAREDFORM_EMAIL = 0x8;
static const ShortInt FPDF_UNSP_ANNOT_3DANNOT = 0xb;
static const ShortInt FPDF_UNSP_ANNOT_MOVIE = 0xc;
static const ShortInt FPDF_UNSP_ANNOT_SOUND = 0xd;
static const ShortInt FPDF_UNSP_ANNOT_SCREEN_MEDIA = 0xe;
static const ShortInt FPDF_UNSP_ANNOT_SCREEN_RICHMEDIA = 0xf;
static const ShortInt FPDF_UNSP_ANNOT_ATTACHMENT = 0x10;
static const ShortInt FPDF_UNSP_ANNOT_SIG = 0x11;
static const ShortInt PAGEMODE_UNKNOWN = -1;
static const ShortInt PAGEMODE_USENONE = 0x0;
static const ShortInt PAGEMODE_USEOUTLINES = 0x1;
static const ShortInt PAGEMODE_USETHUMBS = 0x2;
static const ShortInt PAGEMODE_FULLSCREEN = 0x3;
static const ShortInt PAGEMODE_USEOC = 0x4;
static const ShortInt PAGEMODE_USEATTACHMENTS = 0x5;
static const ShortInt FXFONT_ANSI_CHARSET = 0x0;
static const ShortInt FXFONT_DEFAULT_CHARSET = 0x1;
static const ShortInt FXFONT_SYMBOL_CHARSET = 0x2;
static const Byte FXFONT_SHIFTJIS_CHARSET = 0x80;
static const Byte FXFONT_HANGEUL_CHARSET = 0x81;
static const Byte FXFONT_GB2312_CHARSET = 0x86;
static const Byte FXFONT_CHINESEBIG5_CHARSET = 0x88;
static const Byte FXFONT_GREEK_CHARSET = 0xa1;
static const Byte FXFONT_VIETNAMESE_CHARSET = 0xa3;
static const Byte FXFONT_HEBREW_CHARSET = 0xb1;
static const Byte FXFONT_ARABIC_CHARSET = 0xb2;
static const Byte FXFONT_CYRILLIC_CHARSET = 0xcc;
static const Byte FXFONT_THAI_CHARSET = 0xde;
static const Byte FXFONT_EASTERNEUROPEAN_CHARSET = 0xee;
static const ShortInt FXFONT_FF_FIXEDPITCH = 0x1;
static const ShortInt FXFONT_FF_ROMAN = 0x10;
static const ShortInt FXFONT_FF_SCRIPT = 0x40;
static const Word FXFONT_FW_NORMAL = 0x190;
static const Word FXFONT_FW_BOLD = 0x2bc;

}	/* namespace Fpdfextensions */
using namespace Fpdfextensions;
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// FpdfextensionsHPP
