//======================================================================== // // FoFiIdentifier.h // // Copyright 2009 Glyph & Cog, LLC // //======================================================================== //======================================================================== // // Modified under the Poppler project - http://poppler.freedesktop.org // // All changes made under the Poppler project to this file are licensed // under GPL version 2 or later // // Copyright (C) 2018 Albert Astals Cid // // To see a description of the changes please see the Changelog file that // came with your tarball or type make ChangeLog if you are building from git // //======================================================================== #ifndef FOFIIDENTIFIER_H #define FOFIIDENTIFIER_H #ifdef USE_GCC_PRAGMAS #pragma interface #endif //------------------------------------------------------------------------ // FoFiIdentifier //------------------------------------------------------------------------ enum FoFiIdentifierType { fofiIdType1PFA, // Type 1 font in PFA format fofiIdType1PFB, // Type 1 font in PFB format fofiIdCFF8Bit, // 8-bit CFF font fofiIdCFFCID, // CID CFF font fofiIdTrueType, // TrueType font fofiIdTrueTypeCollection, // TrueType collection fofiIdOpenTypeCFF8Bit, // OpenType wrapper with 8-bit CFF font fofiIdOpenTypeCFFCID, // OpenType wrapper with CID CFF font fofiIdUnknown, // unknown type fofiIdError // error in reading the file }; class FoFiIdentifier { public: static FoFiIdentifierType identifyMem(const char *file, int len); static FoFiIdentifierType identifyFile(const char *fileName); static FoFiIdentifierType identifyStream(int (*getChar)(void *data), void *data); }; #endif