- para->renderString(m_text, 0);
- para->realign(eTextPara::dirLeft);
+ para->renderString(m_text.empty()?0:m_text.c_str(), 0);
+
+ if (m_halign == alignLeft)
+ para->realign(eTextPara::dirLeft);
+ else if (m_halign == alignCenter)
+ para->realign(eTextPara::dirCenter);
+ else if (m_halign == alignRight)
+ para->realign(eTextPara::dirRight);
+ else if (m_halign == alignBlock)
+ para->realign(eTextPara::dirBlock);
+