summaryrefslogtreecommitdiff
path: root/sw/source/filter/ww8/docxattributeoutput.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/filter/ww8/docxattributeoutput.cxx')
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx34
1 files changed, 34 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 1eb94a147798..1bb10ee9ce56 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -3804,6 +3804,30 @@ void DocxAttributeOutput::EmbedFontStyle( const OUString& name, int tag, FontFam
FSEND );
}
+OString DocxAttributeOutput::TransHighLightColor( const Color& rColor )
+{
+ switch (rColor.GetColor())
+ {
+ case 0x000000: return OString("black"); break;
+ case 0x0000ff: return OString("blue"); break;
+ case 0x00ffff: return OString("cyan"); break;
+ case 0x00ff00: return OString("green"); break;
+ case 0xff00ff: return OString("magenta"); break;
+ case 0xff0000: return OString("red"); break;
+ case 0xffff00: return OString("yellow"); break;
+ case 0xffffff: return OString("white"); break;
+ case 0x000080: return OString("darkBlue"); break;
+ case 0x008080: return OString("darkCyan"); break;
+ case 0x008000: return OString("darkGreen"); break;
+ case 0x800080: return OString("darkMagenta"); break;
+ case 0x800000: return OString("darkRed"); break;
+ case 0x808000: return OString("darkYellow"); break;
+ case 0x808080: return OString("darkGray"); break;
+ case 0xC0C0C0: return OString("lightGray"); break;
+ default: return OString(); break;
+ }
+}
+
void DocxAttributeOutput::NumberingDefinition( sal_uInt16 nId, const SwNumRule &rRule )
{
// nId is the same both for abstract numbering definition as well as the
@@ -4389,6 +4413,16 @@ void DocxAttributeOutput::CharBorder(
impl_borderLine( m_pSerializer, XML_bdr, pAllBorder, nDist, bShadow );
}
+void DocxAttributeOutput::CharHighLight( const SvxBrushItem& rHighLight )
+{
+ const OString sColor = TransHighLightColor( rHighLight.GetColor() );
+ if ( !sColor.isEmpty() )
+ {
+ m_pSerializer->singleElementNS( XML_w, XML_highlight,
+ FSNS( XML_w, XML_val ), sColor.getStr(), FSEND );
+ }
+}
+
void DocxAttributeOutput::TextINetFormat( const SwFmtINetFmt& rLink )
{
const SwTxtINetFmt* pINetFmt = rLink.GetTxtINetFmt();