mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-02-10 18:05:41 +08:00
fix bug #69781
This commit is contained in:
@ -294,7 +294,9 @@ namespace DocFileFormat
|
||||
boost::optional<double> ShadowOriginY;
|
||||
boost::optional<size_t> xCoord;
|
||||
boost::optional<size_t> yCoord;
|
||||
|
||||
boost::optional<size_t> xCoord2;
|
||||
boost::optional<size_t> yCoord2;
|
||||
|
||||
bool bStroked = true;
|
||||
bool bFilled = true;
|
||||
bool hasTextbox = false;
|
||||
@ -480,6 +482,14 @@ namespace DocFileFormat
|
||||
m_pXmlWriter->WriteAttribute(L"wrapcoords", wrapCoords);
|
||||
}
|
||||
}break;
|
||||
case ODRAW::geoLeft:
|
||||
{
|
||||
xCoord2 = iter->op;
|
||||
}break;
|
||||
case ODRAW::geoTop:
|
||||
{
|
||||
yCoord2 = iter->op;
|
||||
}break;
|
||||
case ODRAW::geoRight:
|
||||
{
|
||||
xCoord = iter->op;
|
||||
@ -1021,7 +1031,15 @@ namespace DocFileFormat
|
||||
|
||||
if ( xCoord && yCoord )
|
||||
{
|
||||
m_pXmlWriter->WriteAttribute( L"coordsize", ( FormatUtils::SizeTToWideString( *xCoord ) + L"," + FormatUtils::SizeTToWideString( *yCoord ) ));
|
||||
if (xCoord2 && yCoord2)
|
||||
{
|
||||
m_pXmlWriter->WriteAttribute(L"coordorigin", (FormatUtils::SizeTToWideString(*xCoord2) + L"," + FormatUtils::SizeTToWideString(*yCoord2)));
|
||||
m_pXmlWriter->WriteAttribute(L"coordsize", (FormatUtils::SizeTToWideString(*xCoord - *xCoord2) + L"," + FormatUtils::SizeTToWideString(*yCoord - *yCoord2)));
|
||||
}
|
||||
else
|
||||
{
|
||||
m_pXmlWriter->WriteAttribute(L"coordsize", (FormatUtils::SizeTToWideString(*xCoord) + L"," + FormatUtils::SizeTToWideString(*yCoord)));
|
||||
}
|
||||
}
|
||||
|
||||
int nCode = 0;
|
||||
|
||||
@ -1275,24 +1275,28 @@ void MSOPATHINFO::load(IBinaryReader* reader)
|
||||
case 0x09:
|
||||
{
|
||||
m_eRuler = ODRAW::rtQuadrBesier;
|
||||
break;
|
||||
}
|
||||
|
||||
}break;
|
||||
case 0x0A:
|
||||
{
|
||||
m_eRuler = ODRAW::rtNoFill;
|
||||
break;
|
||||
}
|
||||
|
||||
}break;
|
||||
case 0x0B:
|
||||
{
|
||||
m_eRuler = ODRAW::rtNoStroke;
|
||||
break;
|
||||
}
|
||||
case 0x0C:
|
||||
case 0x10:
|
||||
|
||||
}break;
|
||||
case 0x0C: //msopathEscapeAutoLine
|
||||
{
|
||||
m_eRuler = ODRAW::rtLineTo;
|
||||
break;
|
||||
}
|
||||
mem = 2;
|
||||
}break;
|
||||
case 0x10: // msopathEscapeSmoothLine
|
||||
{
|
||||
m_eRuler = ODRAW::rtLineTo;
|
||||
|
||||
}break;
|
||||
case 0x0D:
|
||||
case 0x0E:
|
||||
case 0x0F:
|
||||
@ -1301,9 +1305,8 @@ void MSOPATHINFO::load(IBinaryReader* reader)
|
||||
case 0x13:
|
||||
case 0x14:
|
||||
{
|
||||
m_eRuler = ODRAW::rtCurveTo;
|
||||
break;
|
||||
}
|
||||
m_eRuler = ODRAW::rtCurveTo;
|
||||
}break;
|
||||
case 0x15:
|
||||
{
|
||||
m_eRuler = ODRAW::rtFillColor;
|
||||
|
||||
Reference in New Issue
Block a user