mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 02:37:35 +00:00
LibGfx: Make Font::width() return a float
This commit is contained in:
parent
b9d2b8f7b2
commit
3407ab0fd1
25 changed files with 40 additions and 40 deletions
|
@ -335,9 +335,9 @@ int BitmapFont::glyph_or_emoji_width_for_variable_width_font(u32 code_point) con
|
|||
return glyph_height() * emoji->width() / emoji->height();
|
||||
}
|
||||
|
||||
int BitmapFont::width(StringView view) const { return unicode_view_width(Utf8View(view)); }
|
||||
int BitmapFont::width(Utf8View const& view) const { return unicode_view_width(view); }
|
||||
int BitmapFont::width(Utf32View const& view) const { return unicode_view_width(view); }
|
||||
float BitmapFont::width(StringView view) const { return unicode_view_width(Utf8View(view)); }
|
||||
float BitmapFont::width(Utf8View const& view) const { return unicode_view_width(view); }
|
||||
float BitmapFont::width(Utf32View const& view) const { return unicode_view_width(view); }
|
||||
|
||||
template<typename T>
|
||||
ALWAYS_INLINE int BitmapFont::unicode_view_width(T const& view) const
|
||||
|
|
|
@ -88,9 +88,9 @@ public:
|
|||
update_x_height();
|
||||
}
|
||||
|
||||
int width(StringView) const override;
|
||||
int width(Utf8View const&) const override;
|
||||
int width(Utf32View const&) const override;
|
||||
virtual float width(StringView) const override;
|
||||
virtual float width(Utf8View const&) const override;
|
||||
virtual float width(Utf32View const&) const override;
|
||||
|
||||
DeprecatedString name() const override { return m_name; }
|
||||
void set_name(DeprecatedString name) { m_name = move(name); }
|
||||
|
|
|
@ -140,9 +140,9 @@ public:
|
|||
virtual u8 baseline() const = 0;
|
||||
virtual u8 mean_line() const = 0;
|
||||
|
||||
virtual int width(StringView) const = 0;
|
||||
virtual int width(Utf8View const&) const = 0;
|
||||
virtual int width(Utf32View const&) const = 0;
|
||||
virtual float width(StringView) const = 0;
|
||||
virtual float width(Utf8View const&) const = 0;
|
||||
virtual float width(Utf32View const&) const = 0;
|
||||
|
||||
virtual DeprecatedString name() const = 0;
|
||||
|
||||
|
|
|
@ -10,12 +10,12 @@
|
|||
|
||||
namespace Gfx {
|
||||
|
||||
int ScaledFont::width(StringView view) const { return unicode_view_width(Utf8View(view)); }
|
||||
int ScaledFont::width(Utf8View const& view) const { return unicode_view_width(view); }
|
||||
int ScaledFont::width(Utf32View const& view) const { return unicode_view_width(view); }
|
||||
float ScaledFont::width(StringView view) const { return unicode_view_width(Utf8View(view)); }
|
||||
float ScaledFont::width(Utf8View const& view) const { return unicode_view_width(view); }
|
||||
float ScaledFont::width(Utf32View const& view) const { return unicode_view_width(view); }
|
||||
|
||||
template<typename T>
|
||||
ALWAYS_INLINE int ScaledFont::unicode_view_width(T const& view) const
|
||||
ALWAYS_INLINE float ScaledFont::unicode_view_width(T const& view) const
|
||||
{
|
||||
if (view.is_empty())
|
||||
return 0;
|
||||
|
|
|
@ -54,9 +54,9 @@ public:
|
|||
virtual u8 glyph_fixed_width() const override;
|
||||
virtual u8 baseline() const override { return m_point_height; } // FIXME: Read from font
|
||||
virtual u8 mean_line() const override { return m_point_height; } // FIXME: Read from font
|
||||
virtual int width(StringView) const override;
|
||||
virtual int width(Utf8View const&) const override;
|
||||
virtual int width(Utf32View const&) const override;
|
||||
virtual float width(StringView) const override;
|
||||
virtual float width(Utf8View const&) const override;
|
||||
virtual float width(Utf32View const&) const override;
|
||||
virtual DeprecatedString name() const override { return DeprecatedString::formatted("{} {}", family(), variant()); }
|
||||
virtual bool is_fixed_width() const override { return m_font->is_fixed_width(); }
|
||||
virtual u8 glyph_spacing() const override { return 0; }
|
||||
|
@ -75,7 +75,7 @@ private:
|
|||
mutable HashMap<u32, RefPtr<Gfx::Bitmap>> m_cached_glyph_bitmaps;
|
||||
|
||||
template<typename T>
|
||||
int unicode_view_width(T const& view) const;
|
||||
float unicode_view_width(T const& view) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -2443,7 +2443,7 @@ void Gfx::Painter::draw_ui_text(Gfx::IntRect const& rect, StringView text, Gfx::
|
|||
Optional<size_t> underline_offset;
|
||||
auto name_to_draw = parse_ampersand_string(text, &underline_offset);
|
||||
|
||||
Gfx::IntRect text_rect { 0, 0, font.width(name_to_draw), static_cast<int>(ceilf(font.pixel_size())) };
|
||||
Gfx::IntRect text_rect { 0, 0, static_cast<int>(ceilf(font.width(name_to_draw))), static_cast<int>(ceilf(font.pixel_size())) };
|
||||
text_rect.align_within(rect, text_alignment);
|
||||
|
||||
draw_text(text_rect, name_to_draw, font, text_alignment, color);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue