Merge branch 'master' into jgrpp
This commit is contained in:
@@ -2284,7 +2284,7 @@ DEF_CONSOLE_CMD(ConFont)
|
|||||||
InitFontCache(fs == FS_MONO);
|
InitFontCache(fs == FS_MONO);
|
||||||
fc = FontCache::Get(fs);
|
fc = FontCache::Get(fs);
|
||||||
}
|
}
|
||||||
IConsolePrintF(CC_DEFAULT, "%s: \"%s\" %d %s [\"%s\" %d %s]", FontSizeToName(fs), fc->GetFontName(), fc->GetFontSize(), GetFontAAState(fs) ? "aa" : "noaa", setting->font.c_str(), setting->size, setting->aa ? "aa" : "noaa");
|
IConsolePrintF(CC_DEFAULT, "%s: \"%s\" %d %s [\"%s\" %d %s]", FontSizeToName(fs), fc->GetFontName().c_str(), fc->GetFontSize(), GetFontAAState(fs) ? "aa" : "noaa", setting->font.c_str(), setting->size, setting->aa ? "aa" : "noaa");
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
@@ -273,7 +273,7 @@ char *CrashLog::LogConfiguration(char *buffer, const char *last) const
|
|||||||
auto log_font = [&](FontSize fs) -> const char * {
|
auto log_font = [&](FontSize fs) -> const char * {
|
||||||
FontCache *fc = FontCache::Get(fs);
|
FontCache *fc = FontCache::Get(fs);
|
||||||
if (fc != nullptr) {
|
if (fc != nullptr) {
|
||||||
return fc->GetFontName();
|
return fc->GetFontName().c_str();
|
||||||
} else {
|
} else {
|
||||||
return "[NULL]";
|
return "[NULL]";
|
||||||
}
|
}
|
||||||
|
@@ -138,7 +138,7 @@ public:
|
|||||||
* Get the name of this font.
|
* Get the name of this font.
|
||||||
* @return The name of the font.
|
* @return The name of the font.
|
||||||
*/
|
*/
|
||||||
virtual const char *GetFontName() = 0;
|
virtual std::string GetFontName() = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the font cache of a given font size.
|
* Get the font cache of a given font size.
|
||||||
|
@@ -15,6 +15,7 @@
|
|||||||
#include "../core/math_func.hpp"
|
#include "../core/math_func.hpp"
|
||||||
#include "../zoom_func.h"
|
#include "../zoom_func.h"
|
||||||
#include "../fileio_func.h"
|
#include "../fileio_func.h"
|
||||||
|
#include "../string_func.h"
|
||||||
#include "truetypefontcache.h"
|
#include "truetypefontcache.h"
|
||||||
|
|
||||||
#include "../table/control_codes.h"
|
#include "../table/control_codes.h"
|
||||||
@@ -41,7 +42,7 @@ public:
|
|||||||
~FreeTypeFontCache();
|
~FreeTypeFontCache();
|
||||||
void ClearFontCache() override;
|
void ClearFontCache() override;
|
||||||
GlyphID MapCharToGlyph(WChar key) override;
|
GlyphID MapCharToGlyph(WChar key) override;
|
||||||
const char *GetFontName() override { return face->family_name; }
|
std::string GetFontName() override { return stdstr_fmt("%s, %s", face->family_name, face->style_name); }
|
||||||
bool IsBuiltInFont() override { return false; }
|
bool IsBuiltInFont() override { return false; }
|
||||||
const void *GetOSHandle() override { return &face; }
|
const void *GetOSHandle() override { return &face; }
|
||||||
};
|
};
|
||||||
|
@@ -31,7 +31,7 @@ public:
|
|||||||
virtual bool GetDrawGlyphShadow();
|
virtual bool GetDrawGlyphShadow();
|
||||||
virtual GlyphID MapCharToGlyph(WChar key) { assert(IsPrintable(key)); return SPRITE_GLYPH | key; }
|
virtual GlyphID MapCharToGlyph(WChar key) { assert(IsPrintable(key)); return SPRITE_GLYPH | key; }
|
||||||
virtual const void *GetFontTable(uint32 tag, size_t &length) { length = 0; return nullptr; }
|
virtual const void *GetFontTable(uint32 tag, size_t &length) { length = 0; return nullptr; }
|
||||||
virtual const char *GetFontName() { return "sprite"; }
|
virtual std::string GetFontName() { return "sprite"; }
|
||||||
virtual bool IsBuiltInFont() { return true; }
|
virtual bool IsBuiltInFont() { return true; }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -30,7 +30,7 @@ public:
|
|||||||
|
|
||||||
void ClearFontCache() override;
|
void ClearFontCache() override;
|
||||||
GlyphID MapCharToGlyph(WChar key) override;
|
GlyphID MapCharToGlyph(WChar key) override;
|
||||||
const char *GetFontName() override { return font_name.c_str(); }
|
std::string GetFontName() override { return font_name; }
|
||||||
bool IsBuiltInFont() override { return false; }
|
bool IsBuiltInFont() override { return false; }
|
||||||
const void *GetOSHandle() override { return font.get(); }
|
const void *GetOSHandle() override { return font.get(); }
|
||||||
};
|
};
|
||||||
|
@@ -180,7 +180,7 @@ static CTRunDelegateCallbacks _sprite_font_callback = {
|
|||||||
if (font == nullptr) {
|
if (font == nullptr) {
|
||||||
if (!_font_cache[i.second->fc->GetSize()]) {
|
if (!_font_cache[i.second->fc->GetSize()]) {
|
||||||
/* Cache font information. */
|
/* Cache font information. */
|
||||||
CFAutoRelease<CFStringRef> font_name(CFStringCreateWithCString(kCFAllocatorDefault, i.second->fc->GetFontName(), kCFStringEncodingUTF8));
|
CFAutoRelease<CFStringRef> font_name(CFStringCreateWithCString(kCFAllocatorDefault, i.second->fc->GetFontName().c_str(), kCFStringEncodingUTF8));
|
||||||
_font_cache[i.second->fc->GetSize()].reset(CTFontCreateWithName(font_name.get(), i.second->fc->GetFontSize(), nullptr));
|
_font_cache[i.second->fc->GetSize()].reset(CTFontCreateWithName(font_name.get(), i.second->fc->GetFontSize(), nullptr));
|
||||||
}
|
}
|
||||||
font = _font_cache[i.second->fc->GetSize()].get();
|
font = _font_cache[i.second->fc->GetSize()].get();
|
||||||
|
@@ -34,7 +34,7 @@ public:
|
|||||||
~Win32FontCache();
|
~Win32FontCache();
|
||||||
void ClearFontCache() override;
|
void ClearFontCache() override;
|
||||||
GlyphID MapCharToGlyph(WChar key) override;
|
GlyphID MapCharToGlyph(WChar key) override;
|
||||||
const char *GetFontName() override { return this->fontname.c_str(); }
|
std::string GetFontName() override { return this->fontname; }
|
||||||
const void *GetOSHandle() override { return &this->logfont; }
|
const void *GetOSHandle() override { return &this->logfont; }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user