⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ftcharmap-test.cpp

📁 ftgl-2.1.2 夸平台的opengl显示字体
💻 CPP
字号:
#include <iostream>#include <cppunit/extensions/HelperMacros.h>#include <cppunit/TestCaller.h>#include <cppunit/TestCase.h>#include <cppunit/TestSuite.h>#include <assert.h>#include <ft2build.h>#include FT_FREETYPE_H#include FT_GLYPH_H#include "Fontdefs.h"#include "FTFace.h"#include "FTCharmap.h"class FTCharmapTest : public CppUnit::TestCase{    CPPUNIT_TEST_SUITE( FTCharmapTest);        CPPUNIT_TEST( testConstructor);        CPPUNIT_TEST( testSetEncoding);        CPPUNIT_TEST( testGetGlyphListIndex);        CPPUNIT_TEST( testGetFontIndex);        CPPUNIT_TEST( testInsertCharacterIndex);    CPPUNIT_TEST_SUITE_END();            public:        FTCharmapTest() : CppUnit::TestCase( "FTCharmap Test")        {            setUpFreetype();        }                FTCharmapTest( const std::string& name) : CppUnit::TestCase(name) {}                ~FTCharmapTest()        {            tearDownFreetype();        }                        void testConstructor()        {            CPPUNIT_ASSERT( charmap->Error() == 0);            CPPUNIT_ASSERT( charmap->Encoding() == ft_encoding_unicode);        }                        void testSetEncoding()        {            CPPUNIT_ASSERT( charmap->CharMap( ft_encoding_unicode));                        CPPUNIT_ASSERT( charmap->Error() == 0);            CPPUNIT_ASSERT( charmap->Encoding() == ft_encoding_unicode);                        CPPUNIT_ASSERT( !charmap->CharMap( ft_encoding_johab));                        CPPUNIT_ASSERT( charmap->Error() == 0x06); // invalid argument            CPPUNIT_ASSERT( charmap->Encoding() == ft_encoding_none);        }                        void testGetGlyphListIndex()        {            charmap->CharMap( ft_encoding_johab);                        CPPUNIT_ASSERT( charmap->Error() == 0x06); // invalid argument            CPPUNIT_ASSERT( charmap->GlyphListIndex( CHARACTER_CODE_A)    == 0);            CPPUNIT_ASSERT( charmap->GlyphListIndex( BIG_CHARACTER_CODE)  == 0);            CPPUNIT_ASSERT( charmap->GlyphListIndex( NULL_CHARACTER_CODE) == 0);            charmap->CharMap( ft_encoding_unicode);                        CPPUNIT_ASSERT( charmap->Error() == 0);            CPPUNIT_ASSERT( charmap->GlyphListIndex( CHARACTER_CODE_A)    == 0);            CPPUNIT_ASSERT( charmap->GlyphListIndex( BIG_CHARACTER_CODE)  == 0);            CPPUNIT_ASSERT( charmap->GlyphListIndex( NULL_CHARACTER_CODE) == 0);                    }            void testGetFontIndex()        {            charmap->CharMap( ft_encoding_johab);                        CPPUNIT_ASSERT( charmap->Error() == 0x06); // invalid argument            CPPUNIT_ASSERT( charmap->FontIndex( CHARACTER_CODE_A)    == FONT_INDEX_OF_A);            CPPUNIT_ASSERT( charmap->FontIndex( BIG_CHARACTER_CODE)  == BIG_FONT_INDEX);            CPPUNIT_ASSERT( charmap->FontIndex( NULL_CHARACTER_CODE) == NULL_FONT_INDEX);            charmap->CharMap( ft_encoding_unicode);            CPPUNIT_ASSERT( charmap->Error() == 0);            CPPUNIT_ASSERT( charmap->FontIndex( CHARACTER_CODE_A)    == FONT_INDEX_OF_A);            CPPUNIT_ASSERT( charmap->FontIndex( BIG_CHARACTER_CODE)  == BIG_FONT_INDEX);            CPPUNIT_ASSERT( charmap->FontIndex( NULL_CHARACTER_CODE) == NULL_FONT_INDEX);        }                void testInsertCharacterIndex()        {            CPPUNIT_ASSERT( charmap->GlyphListIndex( CHARACTER_CODE_A) == 0);            CPPUNIT_ASSERT( charmap->FontIndex( CHARACTER_CODE_A) == FONT_INDEX_OF_A);            charmap->InsertIndex( CHARACTER_CODE_A, 69);            CPPUNIT_ASSERT( charmap->FontIndex( CHARACTER_CODE_A) == FONT_INDEX_OF_A);            CPPUNIT_ASSERT( charmap->GlyphListIndex( CHARACTER_CODE_A) == 69);            charmap->InsertIndex( CHARACTER_CODE_G, 999);            CPPUNIT_ASSERT( charmap->GlyphListIndex( CHARACTER_CODE_G) == 999);        }                void setUp()         {            charmap = new FTCharmap( face);        }                        void tearDown()         {            delete charmap;        }            private:        FTFace*      face;        FTCharmap* charmap;        void setUpFreetype()        {            face = new FTFace( GOOD_FONT_FILE);            CPPUNIT_ASSERT( !face->Error());        }                void tearDownFreetype()        {            delete face;        }};CPPUNIT_TEST_SUITE_REGISTRATION( FTCharmapTest);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -