canvas::Text: Make font resolution user configurable
This commit is contained in:
parent
02babbe340
commit
ece743342a
@ -34,7 +34,7 @@ namespace canvas
|
|||||||
|
|
||||||
TextOSG(canvas::Text* text);
|
TextOSG(canvas::Text* text);
|
||||||
|
|
||||||
void setCharacterSize(float height);
|
void setFontResolution(int res);
|
||||||
void setCharacterAspect(float aspect);
|
void setCharacterAspect(float aspect);
|
||||||
void setFill(const std::string& fill);
|
void setFill(const std::string& fill);
|
||||||
void setBackgroundColor(const std::string& fill);
|
void setBackgroundColor(const std::string& fill);
|
||||||
@ -58,27 +58,15 @@ namespace canvas
|
|||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void Text::TextOSG::setCharacterSize(float height)
|
void Text::TextOSG::setFontResolution(int res)
|
||||||
{
|
{
|
||||||
TextBase::setCharacterSize(height);
|
TextBase::setFontResolution(res, res);
|
||||||
|
|
||||||
unsigned int res = 32;
|
|
||||||
CanvasPtr canvas = _text_element->_canvas.lock();
|
|
||||||
if( canvas )
|
|
||||||
{
|
|
||||||
float factor = canvas->getSizeY() / canvas->getViewHeight();
|
|
||||||
res = height * factor;
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO different vertical/horizontal resolution?
|
|
||||||
// TODO configurable?
|
|
||||||
setFontResolution(res, res);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void Text::TextOSG::setCharacterAspect(float aspect)
|
void Text::TextOSG::setCharacterAspect(float aspect)
|
||||||
{
|
{
|
||||||
TextBase::setCharacterSize(getCharacterHeight(), aspect);
|
setCharacterSize(getCharacterHeight(), aspect);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
@ -294,6 +282,7 @@ namespace canvas
|
|||||||
addStyle("character-aspect-ratio",
|
addStyle("character-aspect-ratio",
|
||||||
"numeric",
|
"numeric",
|
||||||
&TextOSG::setCharacterAspect, text);
|
&TextOSG::setCharacterAspect, text);
|
||||||
|
addStyle("font-resolution", "numeric", &TextOSG::setFontResolution, text);
|
||||||
addStyle("padding", "numeric", &TextOSG::setBoundingBoxMargin, text);
|
addStyle("padding", "numeric", &TextOSG::setBoundingBoxMargin, text);
|
||||||
// TEXT = 1 default
|
// TEXT = 1 default
|
||||||
// BOUNDINGBOX = 2
|
// BOUNDINGBOX = 2
|
||||||
|
Loading…
Reference in New Issue
Block a user