mirror of
https://github.com/amyinspace/MagicSetEditor2.git
synced 2026-06-13 05:57:00 -04:00
don't include spacing in symbol font text drawing alignment&size calculations
git-svn-id: svn://svn.code.sf.net/p/magicseteditor/code/trunk@1119 0fc631ac-6414-0410-93d0-97cfa31319b6
This commit is contained in:
@@ -283,10 +283,14 @@ void SymbolFont::drawSymbol(RotatedDC& dc, RealRect sym_rect, double font_size,
|
|||||||
// find bitmap
|
// find bitmap
|
||||||
Bitmap bmp = sym.getBitmap(*this, dc.trS(font_size));
|
Bitmap bmp = sym.getBitmap(*this, dc.trS(font_size));
|
||||||
// draw aligned in the rectangle
|
// draw aligned in the rectangle
|
||||||
dc.DrawBitmap(bmp, align_in_rect(align, dc.trInvS(RealSize(bmp.GetWidth(), bmp.GetHeight())), sym_rect));
|
RealSize bmp_size = dc.trInvS(RealSize(bmp));
|
||||||
|
RealPoint bmp_pos = align_in_rect(align, bmp_size, sym_rect);
|
||||||
|
dc.DrawBitmap(bmp, bmp_pos);
|
||||||
|
|
||||||
// 2. draw text
|
// 2. draw text
|
||||||
if (text.empty() || !sym.text_font) return;
|
if (text.empty() || !sym.text_font) return;
|
||||||
|
// only use the bitmap rectangle
|
||||||
|
sym_rect = RealRect(bmp_pos, bmp_size);
|
||||||
// subtract margins from size
|
// subtract margins from size
|
||||||
sym_rect.x += font_size * sym.text_margin_left;
|
sym_rect.x += font_size * sym.text_margin_left;
|
||||||
sym_rect.y += font_size * sym.text_margin_top;
|
sym_rect.y += font_size * sym.text_margin_top;
|
||||||
|
|||||||
@@ -101,10 +101,10 @@ class SymbolFont : public Packaged {
|
|||||||
/// Draws a single symbol inside the given rectangle
|
/// Draws a single symbol inside the given rectangle
|
||||||
void drawSymbol (RotatedDC& dc, RealRect sym_rect, double font_size, const Alignment& align, SymbolInFont& sym, const String& text);
|
void drawSymbol (RotatedDC& dc, RealRect sym_rect, double font_size, const Alignment& align, SymbolInFont& sym, const String& text);
|
||||||
|
|
||||||
/// Size of a single symbol
|
/// Size of a single symbol, including spacing
|
||||||
RealSize symbolSize (double font_size, const DrawableSymbol& sym);
|
RealSize symbolSize (double font_size, const DrawableSymbol& sym);
|
||||||
public:
|
public:
|
||||||
/// The default size of symbols
|
/// The default size of symbols, including spacing
|
||||||
RealSize defaultSymbolSize(double font_size);
|
RealSize defaultSymbolSize(double font_size);
|
||||||
|
|
||||||
DECLARE_REFLECTION();
|
DECLARE_REFLECTION();
|
||||||
|
|||||||
Reference in New Issue
Block a user