mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 06:37:44 +00:00
LibTTF+LibGfx: Make Gfx::Font::bold_variant() work for TTF fonts
There's no need for this to be a virtual, it's just a font database lookup and can be done in the Font base class.
This commit is contained in:
parent
9f601fcbcf
commit
f5e914fb9f
5 changed files with 7 additions and 8 deletions
|
@ -317,11 +317,11 @@ String BitmapFont::qualified_name() const
|
||||||
return String::formatted("{} {} {}", family(), presentation_size(), weight());
|
return String::formatted("{} {} {}", family(), presentation_size(), weight());
|
||||||
}
|
}
|
||||||
|
|
||||||
const Font& BitmapFont::bold_variant() const
|
Font const& Font::bold_variant() const
|
||||||
{
|
{
|
||||||
if (m_bold_variant)
|
if (m_bold_variant)
|
||||||
return *m_bold_variant;
|
return *m_bold_variant;
|
||||||
m_bold_variant = Gfx::FontDatabase::the().get(m_family, m_presentation_size, 700);
|
m_bold_variant = Gfx::FontDatabase::the().get(family(), presentation_size(), 700);
|
||||||
if (!m_bold_variant)
|
if (!m_bold_variant)
|
||||||
m_bold_variant = this;
|
m_bold_variant = this;
|
||||||
return *m_bold_variant;
|
return *m_bold_variant;
|
||||||
|
|
|
@ -105,8 +105,6 @@ public:
|
||||||
|
|
||||||
String qualified_name() const override;
|
String qualified_name() const override;
|
||||||
|
|
||||||
Font const& bold_variant() const override;
|
|
||||||
|
|
||||||
static size_t glyph_count_by_type(FontTypes type);
|
static size_t glyph_count_by_type(FontTypes type);
|
||||||
static String type_name_by_type(FontTypes type);
|
static String type_name_by_type(FontTypes type);
|
||||||
|
|
||||||
|
@ -143,8 +141,6 @@ private:
|
||||||
|
|
||||||
bool m_fixed_width { false };
|
bool m_fixed_width { false };
|
||||||
bool m_owns_arrays { false };
|
bool m_owns_arrays { false };
|
||||||
|
|
||||||
mutable RefPtr<Gfx::Font> m_bold_variant;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -121,7 +121,10 @@ public:
|
||||||
|
|
||||||
virtual String qualified_name() const = 0;
|
virtual String qualified_name() const = 0;
|
||||||
|
|
||||||
virtual const Font& bold_variant() const = 0;
|
Font const& bold_variant() const;
|
||||||
|
|
||||||
|
private:
|
||||||
|
mutable RefPtr<Gfx::Font> m_bold_variant;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
#include <AK/Utf32View.h>
|
#include <AK/Utf32View.h>
|
||||||
#include <AK/Utf8View.h>
|
#include <AK/Utf8View.h>
|
||||||
#include <LibCore/File.h>
|
#include <LibCore/File.h>
|
||||||
|
#include <LibGfx/FontDatabase.h>
|
||||||
#include <LibTTF/Cmap.h>
|
#include <LibTTF/Cmap.h>
|
||||||
#include <LibTTF/Font.h>
|
#include <LibTTF/Font.h>
|
||||||
#include <LibTTF/Glyf.h>
|
#include <LibTTF/Glyf.h>
|
||||||
|
|
|
@ -144,7 +144,6 @@ public:
|
||||||
virtual String family() const override { return m_font->family(); }
|
virtual String family() const override { return m_font->family(); }
|
||||||
virtual String variant() const override { return m_font->variant(); }
|
virtual String variant() const override { return m_font->variant(); }
|
||||||
virtual String qualified_name() const override { return String::formatted("{} {} {}", family(), presentation_size(), weight()); }
|
virtual String qualified_name() const override { return String::formatted("{} {} {}", family(), presentation_size(), weight()); }
|
||||||
virtual const Font& bold_variant() const override { return *this; } // FIXME: Perhaps remove this from the Gfx::Font interface
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
NonnullRefPtr<TTF::Font> m_font;
|
NonnullRefPtr<TTF::Font> m_font;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue