This commit is contained in:
Elena.Subbotina
2024-01-24 21:18:37 +03:00
parent 50f3ad5d65
commit fefe6b3053
3 changed files with 14 additions and 8 deletions

View File

@ -112,7 +112,7 @@ namespace ComplexTypes
if ( m_sVal.IsInit() )
{
sResult += L"w:val=\"" + *m_sVal + L"\" ";
sResult += L"w:val=\"" + XmlUtils::EncodeXmlString(*m_sVal, false) + L"\" ";
}
return sResult;
}

View File

@ -87,9 +87,8 @@ namespace ComplexTypes
void ReadAttributes(XmlUtils::CXmlLiteReader& oReader);
public:
nullable<SimpleTypes::COnOff> m_oNull;
nullable_string m_sVal;
nullable<SimpleTypes::COnOff> m_oNull;
nullable_string m_sVal;
};
//--------------------------------------------------------------------------------

View File

@ -40,6 +40,10 @@ std::wstring RtfOldList::RenderToRtf(RenderParameter oRenderParameter)
sResult += m_oText->RenderToRtf( oRenderParameter );
return sResult;
}
static inline bool IsControlSymbol(unsigned short c)
{
return (c <= 31) ? (true) : (false);
}
std::wstring RtfOldList::RenderToOOX(RenderParameter oRenderParameter)
{
std::wstring sResult;
@ -61,12 +65,15 @@ std::wstring RtfOldList::RenderToOOX(RenderParameter oRenderParameter)
if(!sText.empty() )
{
// В символьном шрифте обрезать надо, в других случаях - нет
if (/*bIsSymbol && */(sText[0] & 0xF000) != 0)
wchar_t xchBullet = sText[0];
if ((xchBullet & 0xF000) != 0)
{
sText[0] &= 0x00FF;
xchBullet &= 0x00FF;
}
if (!IsControlSymbol(xchBullet))
{
sResult += L"<w:lvlText w:val=\"" + XmlUtils::EncodeXmlString(sText) + L"\"/>";
}
sResult += L"<w:lvlText w:val=\"" + XmlUtils::EncodeXmlString( sText ) + L"\"/>";
}
else
{