mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Merge pull request #1279 from ONLYOFFICE/fix/SvgConversion
Fixes in svg conversion
This commit is contained in:
@ -9,7 +9,7 @@ namespace NSCSS
|
||||
{
|
||||
namespace NSProperties
|
||||
{
|
||||
#define CHECK_CONDITIONS (m_bImportant || unLevel <= m_unLevel)
|
||||
#define CHECK_CONDITIONS (m_bImportant || unLevel < m_unLevel)
|
||||
|
||||
static bool CutImportant(std::wstring& wsValue)
|
||||
{
|
||||
@ -435,7 +435,7 @@ namespace NSCSS
|
||||
|
||||
bool CColor::SetValue(const std::wstring &wsValue, unsigned int unLevel, bool bHardMode)
|
||||
{
|
||||
if (wsValue.empty() || (CHECK_CONDITIONS && !bHardMode))
|
||||
if ((CHECK_CONDITIONS && !bHardMode) || (wsValue.empty() && unLevel == m_unLevel))
|
||||
return false;
|
||||
|
||||
if (wsValue.empty())
|
||||
@ -665,6 +665,10 @@ namespace NSCSS
|
||||
enType = TransformScale;
|
||||
else if (std::wstring::npos != wsTransform.find(L"rotate"))
|
||||
enType = TransformRotate;
|
||||
else if (std::wstring::npos != wsTransform.find(L"skewx"))
|
||||
enType = TransformSkewX;
|
||||
else if (std::wstring::npos != wsTransform.find(L"skewy"))
|
||||
enType = TransformSkewY;
|
||||
else
|
||||
{
|
||||
Clear();
|
||||
@ -739,6 +743,16 @@ namespace NSCSS
|
||||
else
|
||||
return false;
|
||||
|
||||
break;
|
||||
}
|
||||
case TransformSkewX:
|
||||
case TransformSkewY:
|
||||
{
|
||||
if (arValues.empty())
|
||||
return false;
|
||||
|
||||
m_oValue.push_back(std::make_pair(std::vector<double>{arValues[0]}, enType));
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -855,6 +869,16 @@ namespace NSCSS
|
||||
oMatrix.RotateAt(oElement.first[0], -oElement.first[1], -oElement.first[2]);
|
||||
break;
|
||||
}
|
||||
case TransformSkewX:
|
||||
{
|
||||
oMatrix.Shear(oElement.first[0] * 3.14 / 180.0, 0);
|
||||
break;
|
||||
}
|
||||
case TransformSkewY:
|
||||
{
|
||||
oMatrix.Shear(0, oElement.first[0] * 3.14 / 180.0);
|
||||
break;
|
||||
}
|
||||
default: break;
|
||||
}
|
||||
}
|
||||
@ -890,6 +914,16 @@ namespace NSCSS
|
||||
oMatrix.RotateAt(oElement.first[0], -oElement.first[1], -oElement.first[2], order);
|
||||
break;
|
||||
}
|
||||
case TransformSkewX:
|
||||
{
|
||||
oMatrix.Shear(oElement.first[0] * 3.14 / 180.0, 0, order);
|
||||
break;
|
||||
}
|
||||
case TransformSkewY:
|
||||
{
|
||||
oMatrix.Shear(0, oElement.first[0] * 3.14 / 180.0, order);
|
||||
break;
|
||||
}
|
||||
default: break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -234,6 +234,8 @@ namespace NSCSS
|
||||
TransformTranslate,
|
||||
TransformScale,
|
||||
TransformRotate,
|
||||
TransformSkewX,
|
||||
TransformSkewY,
|
||||
TransformNone
|
||||
} TransformType;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user