mirror of
https://github.com/love2d/love.git
synced 2026-08-19 20:19:42 +02:00
Moved more Font code out of the FreeType implementation files.
--HG-- branch : minor
This commit is contained in:
@@ -30,6 +30,19 @@ namespace love
|
|||||||
namespace font
|
namespace font
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Default TrueType font.
|
||||||
|
#include "Vera.ttf.h"
|
||||||
|
|
||||||
|
Rasterizer *Font::newTrueTypeRasterizer(int size)
|
||||||
|
{
|
||||||
|
StrongRef<filesystem::FileData> data(new filesystem::FileData(sizeof(Vera_ttf), "Vera.ttf"));
|
||||||
|
data->release();
|
||||||
|
|
||||||
|
memcpy(data->getData(), Vera_ttf, sizeof(Vera_ttf));
|
||||||
|
|
||||||
|
return newTrueTypeRasterizer(data.get(), size);
|
||||||
|
}
|
||||||
|
|
||||||
Rasterizer *Font::newBMFontRasterizer(love::filesystem::FileData *fontdef, const std::vector<image::ImageData *> &images)
|
Rasterizer *Font::newBMFontRasterizer(love::filesystem::FileData *fontdef, const std::vector<image::ImageData *> &images)
|
||||||
{
|
{
|
||||||
return new BMFontRasterizer(fontdef, images);
|
return new BMFontRasterizer(fontdef, images);
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ public:
|
|||||||
|
|
||||||
virtual Rasterizer *newRasterizer(love::filesystem::FileData *data) = 0;
|
virtual Rasterizer *newRasterizer(love::filesystem::FileData *data) = 0;
|
||||||
|
|
||||||
virtual Rasterizer *newTrueTypeRasterizer(int size) = 0;
|
virtual Rasterizer *newTrueTypeRasterizer(int size);
|
||||||
virtual Rasterizer *newTrueTypeRasterizer(love::filesystem::FileData *data, int size) = 0;
|
virtual Rasterizer *newTrueTypeRasterizer(love::filesystem::FileData *data, int size) = 0;
|
||||||
|
|
||||||
virtual Rasterizer *newBMFontRasterizer(love::filesystem::FileData *fontdef, const std::vector<image::ImageData *> &images);
|
virtual Rasterizer *newBMFontRasterizer(love::filesystem::FileData *fontdef, const std::vector<image::ImageData *> &images);
|
||||||
|
|||||||
@@ -32,9 +32,6 @@ namespace font
|
|||||||
namespace freetype
|
namespace freetype
|
||||||
{
|
{
|
||||||
|
|
||||||
// Default TrueType font.
|
|
||||||
#include "font/Vera.ttf.h"
|
|
||||||
|
|
||||||
Font::Font()
|
Font::Font()
|
||||||
{
|
{
|
||||||
if (FT_Init_FreeType(&library))
|
if (FT_Init_FreeType(&library))
|
||||||
@@ -56,16 +53,6 @@ Rasterizer *Font::newRasterizer(love::filesystem::FileData *data)
|
|||||||
throw love::Exception("Invalid font file: %s", data->getFilename().c_str());
|
throw love::Exception("Invalid font file: %s", data->getFilename().c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
Rasterizer *Font::newTrueTypeRasterizer(int size)
|
|
||||||
{
|
|
||||||
StrongRef<filesystem::FileData> data(new filesystem::FileData(sizeof(Vera_ttf), "Vera.ttf"));
|
|
||||||
data->release();
|
|
||||||
|
|
||||||
memcpy(data->getData(), Vera_ttf, sizeof(Vera_ttf));
|
|
||||||
|
|
||||||
return new TrueTypeRasterizer(library, data.get(), size);
|
|
||||||
}
|
|
||||||
|
|
||||||
Rasterizer *Font::newTrueTypeRasterizer(love::filesystem::FileData *data, int size)
|
Rasterizer *Font::newTrueTypeRasterizer(love::filesystem::FileData *data, int size)
|
||||||
{
|
{
|
||||||
return new TrueTypeRasterizer(library, data, size);
|
return new TrueTypeRasterizer(library, data, size);
|
||||||
|
|||||||
@@ -45,8 +45,6 @@ public:
|
|||||||
|
|
||||||
// Implements Font
|
// Implements Font
|
||||||
Rasterizer *newRasterizer(love::filesystem::FileData *data);
|
Rasterizer *newRasterizer(love::filesystem::FileData *data);
|
||||||
|
|
||||||
Rasterizer *newTrueTypeRasterizer(int size);
|
|
||||||
Rasterizer *newTrueTypeRasterizer(love::filesystem::FileData *data, int size);
|
Rasterizer *newTrueTypeRasterizer(love::filesystem::FileData *data, int size);
|
||||||
|
|
||||||
// Implement Module
|
// Implement Module
|
||||||
|
|||||||
Reference in New Issue
Block a user