diff --git a/RtfFile/Format/RtfProperty.cpp b/RtfFile/Format/RtfProperty.cpp
index c960a78e1a..1969079b65 100644
--- a/RtfFile/Format/RtfProperty.cpp
+++ b/RtfFile/Format/RtfProperty.cpp
@@ -463,13 +463,16 @@ std::wstring RtfColor::RenderToRtf(RenderParameter oRenderParameter )
std::wstring RtfColor::RenderToOOX(RenderParameter oRenderParameter)
{
std::wstring sResult;
+
+ oRenderParameter.sValue = ToHexColor();
+
if( RENDER_TO_OOX_PARAM_COLOR_VALUE == oRenderParameter.nType )
{
- sResult += ToHexColor();
+ sResult += oRenderParameter.sValue;
}
else if( RENDER_TO_OOX_PARAM_COLOR_ATTRIBUTE == oRenderParameter.nType )
{
- sResult += oRenderParameter.sValue;
+ sResult += L"w:color=\"" + oRenderParameter.sValue + L"\"";
}
else if( RENDER_TO_OOX_PARAM_COLOR_TAG == oRenderParameter.nType )
{
@@ -481,7 +484,7 @@ std::wstring RtfColor::RenderToOOX(RenderParameter oRenderParameter)
}
else
{
- sResult += L"";
+ sResult += L"";
}
return sResult;
}
@@ -1755,7 +1758,7 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nUnderlineColor )
{
RtfColor oCurColor;
- if( true == poRtfDocument->m_oColorTable.GetColor( m_nUnderlineColor, oCurColor ) )
+ if ( true == poRtfDocument->m_oColorTable.GetColor( m_nUnderlineColor, oCurColor ) )
{
RenderParameter oNewParam = oRenderParameter;
oNewParam.nType = RENDER_TO_OOX_PARAM_COLOR_ATTRIBUTE;