|
Hi! I tried to compile the latest trunk version. I get an error that PdfFontMetrics is abstract #ifdef _WIN32 PdfFont* PdfFontCache::GetWin32Font( TISortedFontList itSorted, TSortedFontList & vecContainer, const char* pszFontName, bool bBold, bool bItalic, bool bEmbedd, const PdfEncoding * const pEncoding ) { ... PdfFontMetrics* pMetrics; PdfFont* pFont = NULL; try { pMetrics = new PdfFontMetrics( &m_ftLibrary, pBuffer, nLen ); ... } free( pBuffer ); return pFont; } ... #endif Maybe did something else wrong, but when I view the sources, I think the compiler is right. I guess that the Windows-Version was noch updated correctly in the latest refactoring!? Ulrich Here is the complete compiler output: 1>------ Build started: Project: podofo_shared, Configuration: Debug Win32 ------ 1> PdfFontCache.cpp 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontCache.cpp(503): error C2259: 'PoDoFo::PdfFontMetrics' : cannot instantiate abstract class 1> due to following members: 1> 'void PoDoFo::PdfFontMetrics::GetWidthArray(PoDoFo::PdfVariant &,unsigned int,unsigned int) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(51) : see declaration of 'PoDoFo::PdfFontMetrics::GetWidthArray' 1> 'double PoDoFo::PdfFontMetrics::GetGlyphWidth(int) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(57) : see declaration of 'PoDoFo::PdfFontMetrics::GetGlyphWidth' 1> 'void PoDoFo::PdfFontMetrics::GetBoundingBox(PoDoFo::PdfArray &) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(64) : see declaration of 'PoDoFo::PdfFontMetrics::GetBoundingBox' 1> 'double PoDoFo::PdfFontMetrics::CharWidth(unsigned char) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(137) : see declaration of 'PoDoFo::PdfFontMetrics::CharWidth' 1> 'double PoDoFo::PdfFontMetrics::UnicodeCharWidth(unsigned short) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(144) : see declaration of 'PoDoFo::PdfFontMetrics::UnicodeCharWidth' 1> 'double PoDoFo::PdfFontMetrics::GetLineSpacing(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(155) : see declaration of 'PoDoFo::PdfFontMetrics::GetLineSpacing' 1> 'double PoDoFo::PdfFontMetrics::GetUnderlineThickness(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(166) : see declaration of 'PoDoFo::PdfFontMetrics::GetUnderlineThickness' 1> 'double PoDoFo::PdfFontMetrics::GetUnderlinePosition(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(178) : see declaration of 'PoDoFo::PdfFontMetrics::GetUnderlinePosition' 1> 'double PoDoFo::PdfFontMetrics::GetStrikeOutPosition(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(190) : see declaration of 'PoDoFo::PdfFontMetrics::GetStrikeOutPosition' 1> 'double PoDoFo::PdfFontMetrics::GetStrikeoutThickness(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(202) : see declaration of 'PoDoFo::PdfFontMetrics::GetStrikeoutThickness' 1> 'const char *PoDoFo::PdfFontMetrics::GetFontData(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(218) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontData' 1> 'PoDoFo::pdf_long PoDoFo::PdfFontMetrics::GetFontDataLen(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(223) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontDataLen' 1> 'const char *PoDoFo::PdfFontMetrics::GetFontname(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(228) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontname' 1> 'unsigned int PoDoFo::PdfFontMetrics::GetWeight(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(240) : see declaration of 'PoDoFo::PdfFontMetrics::GetWeight' 1> 'double PoDoFo::PdfFontMetrics::GetAscent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(249) : see declaration of 'PoDoFo::PdfFontMetrics::GetAscent' 1> 'double PoDoFo::PdfFontMetrics::GetPdfAscent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(257) : see declaration of 'PoDoFo::PdfFontMetrics::GetPdfAscent' 1> 'double PoDoFo::PdfFontMetrics::GetDescent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(267) : see declaration of 'PoDoFo::PdfFontMetrics::GetDescent' 1> 'double PoDoFo::PdfFontMetrics::GetPdfDescent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(275) : see declaration of 'PoDoFo::PdfFontMetrics::GetPdfDescent' 1> 'int PoDoFo::PdfFontMetrics::GetItalicAngle(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(281) : see declaration of 'PoDoFo::PdfFontMetrics::GetItalicAngle' 1> 'long PoDoFo::PdfFontMetrics::GetGlyphId(long) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(329) : see declaration of 'PoDoFo::PdfFontMetrics::GetGlyphId' 1> 'bool PoDoFo::PdfFontMetrics::IsSymbol(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(338) : see declaration of 'PoDoFo::PdfFontMetrics::IsSymbol' 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontCache.cpp(503): error C2664: 'PoDoFo::PdfFontMetrics::PdfFontMetrics(PoDoFo::EPdfFontType,const char *,const char *)' : cannot convert parameter 1 from 'FT_Library *' to 'PoDoFo::EPdfFontType' 1> There is no context in which this conversion is possible 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontCache.cpp(565): error C2259: 'PoDoFo::PdfFontMetrics' : cannot instantiate abstract class 1> due to following members: 1> 'void PoDoFo::PdfFontMetrics::GetWidthArray(PoDoFo::PdfVariant &,unsigned int,unsigned int) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(51) : see declaration of 'PoDoFo::PdfFontMetrics::GetWidthArray' 1> 'double PoDoFo::PdfFontMetrics::GetGlyphWidth(int) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(57) : see declaration of 'PoDoFo::PdfFontMetrics::GetGlyphWidth' 1> 'void PoDoFo::PdfFontMetrics::GetBoundingBox(PoDoFo::PdfArray &) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(64) : see declaration of 'PoDoFo::PdfFontMetrics::GetBoundingBox' 1> 'double PoDoFo::PdfFontMetrics::CharWidth(unsigned char) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(137) : see declaration of 'PoDoFo::PdfFontMetrics::CharWidth' 1> 'double PoDoFo::PdfFontMetrics::UnicodeCharWidth(unsigned short) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(144) : see declaration of 'PoDoFo::PdfFontMetrics::UnicodeCharWidth' 1> 'double PoDoFo::PdfFontMetrics::GetLineSpacing(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(155) : see declaration of 'PoDoFo::PdfFontMetrics::GetLineSpacing' 1> 'double PoDoFo::PdfFontMetrics::GetUnderlineThickness(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(166) : see declaration of 'PoDoFo::PdfFontMetrics::GetUnderlineThickness' 1> 'double PoDoFo::PdfFontMetrics::GetUnderlinePosition(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(178) : see declaration of 'PoDoFo::PdfFontMetrics::GetUnderlinePosition' 1> 'double PoDoFo::PdfFontMetrics::GetStrikeOutPosition(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(190) : see declaration of 'PoDoFo::PdfFontMetrics::GetStrikeOutPosition' 1> 'double PoDoFo::PdfFontMetrics::GetStrikeoutThickness(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(202) : see declaration of 'PoDoFo::PdfFontMetrics::GetStrikeoutThickness' 1> 'const char *PoDoFo::PdfFontMetrics::GetFontData(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(218) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontData' 1> 'PoDoFo::pdf_long PoDoFo::PdfFontMetrics::GetFontDataLen(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(223) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontDataLen' 1> 'const char *PoDoFo::PdfFontMetrics::GetFontname(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(228) : see declaration of 'PoDoFo::PdfFontMetrics::GetFontname' 1> 'unsigned int PoDoFo::PdfFontMetrics::GetWeight(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(240) : see declaration of 'PoDoFo::PdfFontMetrics::GetWeight' 1> 'double PoDoFo::PdfFontMetrics::GetAscent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(249) : see declaration of 'PoDoFo::PdfFontMetrics::GetAscent' 1> 'double PoDoFo::PdfFontMetrics::GetPdfAscent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(257) : see declaration of 'PoDoFo::PdfFontMetrics::GetPdfAscent' 1> 'double PoDoFo::PdfFontMetrics::GetDescent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(267) : see declaration of 'PoDoFo::PdfFontMetrics::GetDescent' 1> 'double PoDoFo::PdfFontMetrics::GetPdfDescent(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(275) : see declaration of 'PoDoFo::PdfFontMetrics::GetPdfDescent' 1> 'int PoDoFo::PdfFontMetrics::GetItalicAngle(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(281) : see declaration of 'PoDoFo::PdfFontMetrics::GetItalicAngle' 1> 'long PoDoFo::PdfFontMetrics::GetGlyphId(long) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(329) : see declaration of 'PoDoFo::PdfFontMetrics::GetGlyphId' 1> 'bool PoDoFo::PdfFontMetrics::IsSymbol(void) const' : is abstract 1> c:\work\trunk5\3rdparty\podofo\src\PdfFontMetrics.h(338) : see declaration of 'PoDoFo::PdfFontMetrics::IsSymbol' 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontCache.cpp(565): error C2664: 'PoDoFo::PdfFontMetrics::PdfFontMetrics(PoDoFo::EPdfFontType,const char *,const char *)' : cannot convert parameter 1 from 'FT_Library *' to 'PoDoFo::EPdfFontType' 1> There is no context in which this conversion is possible 1> PdfFontMetricsObject.cpp 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontMetricsObject.cpp(43): warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data 1>..\..\..\..\..\3rdparty\podofo\src\PdfFontMetricsObject.cpp(44): warning C4244: '=' : conversion from '__int64' to 'int', possible loss of data 1> Generating Code... 1>c:\work\trunk5\3rdparty\podofo\src\pdffontmetricsobject.cpp(110): error C4716: 'PoDoFo::PdfFontMetricsObject::GetGlyphWidth' : must return a value 1>c:\work\trunk5\3rdparty\podofo\src\pdffontmetricsobject.cpp(115): error C4716: 'PoDoFo::PdfFontMetricsObject::GetGlyphId' : must return a value --
Ulrich Simon |
------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________ Podofo-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/podofo-users

