mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Refactoring
This commit is contained in:
@ -151,6 +151,8 @@ namespace Aggplus
|
|||||||
RELEASEOBJECT(m_pGraphics);
|
RELEASEOBJECT(m_pGraphics);
|
||||||
RELEASEOBJECT(m_pBitmap);
|
RELEASEOBJECT(m_pBitmap);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
RELEASEINTERFACE(m_pAlphaMask);
|
||||||
}
|
}
|
||||||
|
|
||||||
INT CGraphics::IsDib()
|
INT CGraphics::IsDib()
|
||||||
@ -1201,33 +1203,40 @@ namespace Aggplus
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
Status CGraphics::SetAlphaMask(const CAlphaMask &oAlphaMask)
|
Status CGraphics::SetAlphaMask(CAlphaMask* pAlphaMask)
|
||||||
{
|
{
|
||||||
m_oAlphaMask = oAlphaMask;
|
RELEASEINTERFACE(m_pAlphaMask);
|
||||||
m_oAlphaMask.m_internal->StartApplying();
|
m_pAlphaMask = pAlphaMask;
|
||||||
|
if (m_pAlphaMask)
|
||||||
|
{
|
||||||
|
m_pAlphaMask->AddRef();
|
||||||
|
m_pAlphaMask->m_internal->StartApplying();
|
||||||
|
}
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
Status CGraphics::CreateAlphaMask()
|
Status CGraphics::CreateAlphaMask()
|
||||||
{
|
{
|
||||||
return m_oAlphaMask.CrateImageBuffer(m_frame_buffer.width(), m_frame_buffer.height());
|
RELEASEINTERFACE(m_pAlphaMask);
|
||||||
|
m_pAlphaMask = new CAlphaMask();
|
||||||
|
return m_pAlphaMask->CreateImageBuffer(m_frame_buffer.width(), m_frame_buffer.height());
|
||||||
}
|
}
|
||||||
|
|
||||||
Status CGraphics::ResetAlphaMask()
|
Status CGraphics::ResetAlphaMask()
|
||||||
{
|
{
|
||||||
m_oAlphaMask.Clear();
|
RELEASEINTERFACE(m_pAlphaMask);
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
Status CGraphics::StartApplyingAlphaMask()
|
Status CGraphics::StartApplyingAlphaMask()
|
||||||
{
|
{
|
||||||
m_oAlphaMask.m_internal->StartApplying();
|
m_pAlphaMask->m_internal->StartApplying();
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGraphics::CalculateFullTransform()
|
void CGraphics::CalculateFullTransform()
|
||||||
{
|
{
|
||||||
m_oFullTransform = m_oCoordTransform;
|
m_oFullTransform = m_oCoordTransform;
|
||||||
m_oFullTransform.Multiply(&m_oBaseTransform, MatrixOrderAppend);
|
m_oFullTransform.Multiply(&m_oBaseTransform, MatrixOrderAppend);
|
||||||
m_oFullTransform.Multiply(&m_oTransform, MatrixOrderPrepend);
|
m_oFullTransform.Multiply(&m_oTransform, MatrixOrderPrepend);
|
||||||
}
|
}
|
||||||
@ -1236,18 +1245,18 @@ namespace Aggplus
|
|||||||
return m_oClip.IsClip();
|
return m_oClip.IsClip();
|
||||||
}
|
}
|
||||||
|
|
||||||
agg::rendering_buffer &CGraphics::GetRenderingBuffer()
|
agg::rendering_buffer& CGraphics::GetRenderingBuffer()
|
||||||
{
|
{
|
||||||
if (GenerationAlphaMask == m_oAlphaMask.m_internal->GetStatus())
|
if (m_pAlphaMask && GenerationAlphaMask == m_pAlphaMask->m_internal->GetStatus())
|
||||||
return m_oAlphaMask.m_internal->GetRenderingBuffer();
|
return m_pAlphaMask->m_internal->GetRenderingBuffer();
|
||||||
|
|
||||||
return m_frame_buffer.ren_buf();
|
return m_frame_buffer.ren_buf();
|
||||||
}
|
}
|
||||||
|
|
||||||
base_renderer_type &CGraphics::GetRendererBase()
|
base_renderer_type& CGraphics::GetRendererBase()
|
||||||
{
|
{
|
||||||
if (GenerationAlphaMask == m_oAlphaMask.m_internal->GetStatus() && ImageBuffer == m_oAlphaMask.m_internal->GetDataType())
|
if (GenerationAlphaMask == m_pAlphaMask->GetStatus() && ImageBuffer == m_pAlphaMask->GetDataType())
|
||||||
return m_oAlphaMask.m_internal->GetRendererBaseImage();
|
return m_pAlphaMask->m_internal->GetRendererBaseImage();
|
||||||
|
|
||||||
return m_frame_buffer.ren_base();
|
return m_frame_buffer.ren_base();
|
||||||
}
|
}
|
||||||
@ -1257,12 +1266,12 @@ namespace Aggplus
|
|||||||
{
|
{
|
||||||
if (!m_oClip.IsClip())
|
if (!m_oClip.IsClip())
|
||||||
{
|
{
|
||||||
if (ApplyingAlphaMask == m_oAlphaMask.m_internal->GetStatus())
|
if (m_pAlphaMask && ApplyingAlphaMask == m_pAlphaMask->GetStatus())
|
||||||
{
|
{
|
||||||
if (ImageBuffer == m_oAlphaMask.m_internal->GetDataType())
|
if (ImageBuffer == m_pAlphaMask->GetDataType())
|
||||||
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_oAlphaMask.m_internal->GetScanlineImage(), ren);
|
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_pAlphaMask->m_internal->GetScanlineImage(), ren);
|
||||||
else if (AlphaBuffer == m_oAlphaMask.m_internal->GetDataType())
|
else if (AlphaBuffer == m_pAlphaMask->GetDataType())
|
||||||
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_oAlphaMask.m_internal->GetScanlineABuffer(), ren);
|
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_pAlphaMask->m_internal->GetScanlineABuffer(), ren);
|
||||||
}
|
}
|
||||||
|
|
||||||
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_rasterizer.get_scanline(), ren);
|
return agg::render_scanlines(m_rasterizer.get_rasterizer(), m_rasterizer.get_scanline(), ren);
|
||||||
@ -1317,12 +1326,12 @@ namespace Aggplus
|
|||||||
{
|
{
|
||||||
if (!m_oClip.IsClip())
|
if (!m_oClip.IsClip())
|
||||||
{
|
{
|
||||||
if (ApplyingAlphaMask == m_oAlphaMask.m_internal->GetStatus())
|
if (m_pAlphaMask && ApplyingAlphaMask == m_pAlphaMask->GetStatus())
|
||||||
{
|
{
|
||||||
if (ImageBuffer == m_oAlphaMask.m_internal->GetDataType())
|
if (ImageBuffer == m_pAlphaMask->GetDataType())
|
||||||
return agg::render_scanlines(ras, m_oAlphaMask.m_internal->GetScanlineImage(), ren);
|
return agg::render_scanlines(ras, m_pAlphaMask->m_internal->GetScanlineImage(), ren);
|
||||||
else if (AlphaBuffer == m_oAlphaMask.m_internal->GetDataType())
|
else if (AlphaBuffer == m_pAlphaMask->GetDataType())
|
||||||
return agg::render_scanlines(ras, m_oAlphaMask.m_internal->GetScanlineABuffer(), ren);
|
return agg::render_scanlines(ras, m_pAlphaMask->m_internal->GetScanlineABuffer(), ren);
|
||||||
}
|
}
|
||||||
|
|
||||||
return agg::render_scanlines(ras, m_rasterizer.get_scanline(), ren);
|
return agg::render_scanlines(ras, m_rasterizer.get_scanline(), ren);
|
||||||
|
|||||||
@ -279,7 +279,7 @@ protected:
|
|||||||
|
|
||||||
CClipMulti m_oClip;
|
CClipMulti m_oClip;
|
||||||
|
|
||||||
CAlphaMask m_oAlphaMask;
|
CAlphaMask* m_pAlphaMask;
|
||||||
|
|
||||||
agg::svg::frame_buffer_rgba m_frame_buffer;
|
agg::svg::frame_buffer_rgba m_frame_buffer;
|
||||||
agg::svg::rasterizer m_rasterizer;
|
agg::svg::rasterizer m_rasterizer;
|
||||||
@ -396,7 +396,7 @@ public:
|
|||||||
INT DrawStringPathC(const LONG& lText, CFontManager* pFont, CBrush* pBrush, double x, double y);
|
INT DrawStringPathC(const LONG& lText, CFontManager* pFont, CBrush* pBrush, double x, double y);
|
||||||
|
|
||||||
//Работа с альфа-маской
|
//Работа с альфа-маской
|
||||||
Status SetAlphaMask(const CAlphaMask& oAlphaMask);
|
Status SetAlphaMask(CAlphaMask* pAlphaMask);
|
||||||
Status CreateAlphaMask();
|
Status CreateAlphaMask();
|
||||||
Status ResetAlphaMask();
|
Status ResetAlphaMask();
|
||||||
Status StartApplyingAlphaMask();
|
Status StartApplyingAlphaMask();
|
||||||
|
|||||||
@ -556,9 +556,9 @@ HRESULT CGraphicsRenderer::put_BrushTexturePath(const std::wstring& bsPath)
|
|||||||
m_oBrush.TexturePath = bsPath;
|
m_oBrush.TexturePath = bsPath;
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
HRESULT CGraphicsRenderer::get_BrushTextureImage(Aggplus::CImage *pImage)
|
HRESULT CGraphicsRenderer::get_BrushTextureImage(Aggplus::CImage** pImage)
|
||||||
{
|
{
|
||||||
pImage = m_oBrush.Image;
|
*pImage = m_oBrush.Image;
|
||||||
return S_OK;
|
return S_OK;
|
||||||
}
|
}
|
||||||
HRESULT CGraphicsRenderer::put_BrushTextureImage(Aggplus::CImage *pImage)
|
HRESULT CGraphicsRenderer::put_BrushTextureImage(Aggplus::CImage *pImage)
|
||||||
@ -1406,9 +1406,9 @@ void CGraphicsRenderer::CreateFlip(BYTE* pPixels, const Aggplus::CDoubleRect& oR
|
|||||||
m_pRenderer->SetPageUnit(Aggplus::UnitMillimeter);
|
m_pRenderer->SetPageUnit(Aggplus::UnitMillimeter);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGraphicsRenderer::SetAlphaMask(const Aggplus::CAlphaMask &oAlphaMask)
|
void CGraphicsRenderer::SetAlphaMask(Aggplus::CAlphaMask* pAlphaMask)
|
||||||
{
|
{
|
||||||
m_pRenderer->SetAlphaMask(oAlphaMask);
|
m_pRenderer->SetAlphaMask(pAlphaMask);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGraphicsRenderer::put_GlobalAlphaEnabled(const bool& bEnabled, const double& dVal)
|
void CGraphicsRenderer::put_GlobalAlphaEnabled(const bool& bEnabled, const double& dVal)
|
||||||
|
|||||||
@ -179,7 +179,7 @@ public:
|
|||||||
virtual HRESULT put_BrushAlpha2(const LONG& lAlpha);
|
virtual HRESULT put_BrushAlpha2(const LONG& lAlpha);
|
||||||
virtual HRESULT get_BrushTexturePath(std::wstring* bsPath);
|
virtual HRESULT get_BrushTexturePath(std::wstring* bsPath);
|
||||||
virtual HRESULT put_BrushTexturePath(const std::wstring& bsPath);
|
virtual HRESULT put_BrushTexturePath(const std::wstring& bsPath);
|
||||||
virtual HRESULT get_BrushTextureImage(Aggplus::CImage* pImage);
|
virtual HRESULT get_BrushTextureImage(Aggplus::CImage** pImage);
|
||||||
virtual HRESULT put_BrushTextureImage(Aggplus::CImage* pImage);
|
virtual HRESULT put_BrushTextureImage(Aggplus::CImage* pImage);
|
||||||
virtual HRESULT get_BrushTextureMode(LONG* lMode);
|
virtual HRESULT get_BrushTextureMode(LONG* lMode);
|
||||||
virtual HRESULT put_BrushTextureMode(const LONG& lMode);
|
virtual HRESULT put_BrushTextureMode(const LONG& lMode);
|
||||||
@ -352,7 +352,7 @@ public:
|
|||||||
inline double GetPixH() { return m_pRenderer->GetPixH(); }
|
inline double GetPixH() { return m_pRenderer->GetPixH(); }
|
||||||
|
|
||||||
// alpha mask methods
|
// alpha mask methods
|
||||||
void SetAlphaMask(const Aggplus::CAlphaMask& oAlphaMask);
|
void SetAlphaMask(Aggplus::CAlphaMask* pAlphaMask);
|
||||||
|
|
||||||
// smart methods
|
// smart methods
|
||||||
void drawHorLine(BYTE align, double y, double x, double r, double penW)
|
void drawHorLine(BYTE align, double y, double x, double r, double penW)
|
||||||
|
|||||||
@ -199,7 +199,7 @@ public:
|
|||||||
virtual HRESULT put_BrushAlpha2(const LONG& lAlpha) = 0;
|
virtual HRESULT put_BrushAlpha2(const LONG& lAlpha) = 0;
|
||||||
virtual HRESULT get_BrushTexturePath(std::wstring* bsPath) = 0;
|
virtual HRESULT get_BrushTexturePath(std::wstring* bsPath) = 0;
|
||||||
virtual HRESULT put_BrushTexturePath(const std::wstring& bsPath) = 0;
|
virtual HRESULT put_BrushTexturePath(const std::wstring& bsPath) = 0;
|
||||||
virtual HRESULT get_BrushTextureImage(Aggplus::CImage* pImage) = 0;
|
virtual HRESULT get_BrushTextureImage(Aggplus::CImage** pImage) = 0;
|
||||||
virtual HRESULT put_BrushTextureImage(Aggplus::CImage* pImage) = 0;
|
virtual HRESULT put_BrushTextureImage(Aggplus::CImage* pImage) = 0;
|
||||||
virtual HRESULT get_BrushTextureMode(LONG* lMode) = 0;
|
virtual HRESULT get_BrushTextureMode(LONG* lMode) = 0;
|
||||||
virtual HRESULT put_BrushTextureMode(const LONG& lMode) = 0;
|
virtual HRESULT put_BrushTextureMode(const LONG& lMode) = 0;
|
||||||
|
|||||||
@ -46,95 +46,95 @@
|
|||||||
|
|
||||||
namespace Aggplus
|
namespace Aggplus
|
||||||
{
|
{
|
||||||
class CDIB : public IGrObject
|
class CDIB : public IGrObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
BYTE* m_pBits;
|
BYTE* m_pBits;
|
||||||
LONG m_lWidth;
|
LONG m_lWidth;
|
||||||
LONG m_lHeight;
|
LONG m_lHeight;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CDIB() : IGrObject()
|
CDIB() : IGrObject()
|
||||||
{
|
{
|
||||||
m_pBits = NULL;
|
m_pBits = NULL;
|
||||||
m_lWidth = 0;
|
m_lWidth = 0;
|
||||||
m_lHeight = 0;
|
m_lHeight = 0;
|
||||||
}
|
}
|
||||||
virtual ~CDIB()
|
virtual ~CDIB()
|
||||||
{
|
{
|
||||||
// delete all in system wrapper
|
// delete all in system wrapper
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual INT Create(LONG lWidth, LONG lHeight, double dDPIX, double dDPIY) = 0;
|
virtual INT Create(LONG lWidth, LONG lHeight, double dDPIX, double dDPIY) = 0;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
namespace NSGraphics
|
namespace NSGraphics
|
||||||
{
|
{
|
||||||
class GRAPHICS_DECL IGraphicsRenderer : public IRenderer
|
class GRAPHICS_DECL IGraphicsRenderer : public IRenderer
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
IGraphicsRenderer() {}
|
IGraphicsRenderer() {}
|
||||||
virtual ~IGraphicsRenderer() {}
|
virtual ~IGraphicsRenderer() {}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual void SetImageCache(NSImages::IImageFilesCache* pCache) = 0;
|
virtual void SetImageCache(NSImages::IImageFilesCache* pCache) = 0;
|
||||||
virtual void SetFontManager(NSFonts::IFontManager* pManager = NULL) = 0;
|
virtual void SetFontManager(NSFonts::IFontManager* pManager = NULL) = 0;
|
||||||
virtual void CheckFontManager() = 0;
|
virtual void CheckFontManager() = 0;
|
||||||
|
|
||||||
virtual NSFonts::IFontManager* GetFontManager() = 0;
|
virtual NSFonts::IFontManager* GetFontManager() = 0;
|
||||||
|
|
||||||
virtual void CloseFont() = 0;
|
virtual void CloseFont() = 0;
|
||||||
virtual void ClearInstallFont() = 0;
|
virtual void ClearInstallFont() = 0;
|
||||||
|
|
||||||
virtual void SetSwapRGB(bool bValue) = 0;
|
|
||||||
virtual void SetTileImageDpi(const double& dDpi) = 0;
|
|
||||||
|
|
||||||
public:
|
virtual void SetSwapRGB(bool bValue) = 0;
|
||||||
virtual void CreateFromBgraFrame(CBgraFrame* pFrame) = 0;
|
virtual void SetTileImageDpi(const double& dDpi) = 0;
|
||||||
virtual void SetCoordTransformOffset(double dOffsetX, double dOffsetY) = 0;
|
|
||||||
|
public:
|
||||||
|
virtual void CreateFromBgraFrame(CBgraFrame* pFrame) = 0;
|
||||||
|
virtual void SetCoordTransformOffset(double dOffsetX, double dOffsetY) = 0;
|
||||||
|
|
||||||
|
|
||||||
virtual void SavePen(NSStructures::CPen& oPen) = 0;
|
virtual void SavePen(NSStructures::CPen& oPen) = 0;
|
||||||
virtual void RestorePen(const NSStructures::CPen& oPen) = 0;
|
virtual void RestorePen(const NSStructures::CPen& oPen) = 0;
|
||||||
|
|
||||||
virtual void SaveBrush(NSStructures::CBrush& oBrush) = 0;
|
virtual void SaveBrush(NSStructures::CBrush& oBrush) = 0;
|
||||||
virtual void RestoreBrush(const NSStructures::CBrush& oBrush) = 0;
|
virtual void RestoreBrush(const NSStructures::CBrush& oBrush) = 0;
|
||||||
virtual void put_GlobalAlphaEnabled(const bool& bEnabled, const double& dVal) = 0;
|
virtual void put_GlobalAlphaEnabled(const bool& bEnabled, const double& dVal) = 0;
|
||||||
virtual void put_IntegerGrid(const bool& bEnabled) = 0;
|
virtual void put_IntegerGrid(const bool& bEnabled) = 0;
|
||||||
virtual bool get_IntegerGrid() = 0;
|
virtual bool get_IntegerGrid() = 0;
|
||||||
virtual void AddRect(const double& x, const double& y, const double& w, const double& h) = 0;
|
virtual void AddRect(const double& x, const double& y, const double& w, const double& h) = 0;
|
||||||
virtual void SetFontAttack() = 0;
|
virtual void SetFontAttack() = 0;
|
||||||
|
|
||||||
virtual void Create(BYTE* pPixels, const Aggplus::CDoubleRect& oRect, LONG lWidthControl, LONG lHeightControl, Aggplus::CDIB* pDib = NULL) = 0;
|
virtual void Create(BYTE* pPixels, const Aggplus::CDoubleRect& oRect, LONG lWidthControl, LONG lHeightControl, Aggplus::CDIB* pDib = NULL) = 0;
|
||||||
virtual void CreateFlip(BYTE* pPixels, const Aggplus::CDoubleRect& oRect, LONG lWidthControl, LONG lHeightControl, Aggplus::CDIB* pDib = NULL) = 0;
|
virtual void CreateFlip(BYTE* pPixels, const Aggplus::CDoubleRect& oRect, LONG lWidthControl, LONG lHeightControl, Aggplus::CDIB* pDib = NULL) = 0;
|
||||||
|
|
||||||
virtual Aggplus::CMatrix* GetFullTransform() = 0;
|
virtual Aggplus::CMatrix* GetFullTransform() = 0;
|
||||||
virtual Aggplus::CMatrix* GetTransformMatrix() = 0;
|
virtual Aggplus::CMatrix* GetTransformMatrix() = 0;
|
||||||
virtual void CalculateFullTransform() = 0;
|
virtual void CalculateFullTransform() = 0;
|
||||||
virtual void PathCommandRect(double x, double y, double w, double h) = 0;
|
virtual void PathCommandRect(double x, double y, double w, double h) = 0;
|
||||||
virtual Aggplus::CMatrix* GetCoordTransform() = 0;
|
virtual Aggplus::CMatrix* GetCoordTransform() = 0;
|
||||||
virtual void Fill() = 0;
|
virtual void Fill() = 0;
|
||||||
virtual void Stroke() = 0;
|
virtual void Stroke() = 0;
|
||||||
virtual double GetPixW() = 0;
|
virtual double GetPixW() = 0;
|
||||||
virtual double GetPixH() = 0;
|
virtual double GetPixH() = 0;
|
||||||
|
|
||||||
//alpha mask methods
|
//alpha mask methods
|
||||||
virtual void SetAlphaMask(const Aggplus::CAlphaMask& oAlphaMask) = 0;
|
virtual void SetAlphaMask(Aggplus::CAlphaMask* pAlphaMask) = 0;
|
||||||
|
|
||||||
// smart methods
|
// smart methods
|
||||||
virtual void drawHorLine(BYTE align, double y, double x, double r, double penW) = 0;
|
virtual void drawHorLine(BYTE align, double y, double x, double r, double penW) = 0;
|
||||||
virtual void drawHorLine2(BYTE align, double y, double x, double r, double penW) = 0;
|
virtual void drawHorLine2(BYTE align, double y, double x, double r, double penW) = 0;
|
||||||
|
|
||||||
virtual void drawVerLine(BYTE align, double x, double y, double b, double penW) = 0;
|
virtual void drawVerLine(BYTE align, double x, double y, double b, double penW) = 0;
|
||||||
virtual void drawHorLineExt(BYTE align, double y, double x, double r, double penW, double leftMW, double rightMW) = 0;
|
virtual void drawHorLineExt(BYTE align, double y, double x, double r, double penW, double leftMW, double rightMW) = 0;
|
||||||
|
|
||||||
// test
|
// test
|
||||||
|
|
||||||
virtual void put_BrushGradInfo(const NSStructures::GradientInfo &_ginfo) = 0;
|
virtual void put_BrushGradInfo(const NSStructures::GradientInfo &_ginfo) = 0;
|
||||||
virtual void put_BlendMode(const unsigned int nBlendMode) = 0;
|
virtual void put_BlendMode(const unsigned int nBlendMode) = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
GRAPHICS_DECL IGraphicsRenderer* Create();
|
GRAPHICS_DECL IGraphicsRenderer* Create();
|
||||||
|
|
||||||
GRAPHICS_DECL std::string GetHatchBase64(const std::wstring& name,
|
GRAPHICS_DECL std::string GetHatchBase64(const std::wstring& name,
|
||||||
unsigned char r1, unsigned char g1, unsigned char b1, unsigned char a1,
|
unsigned char r1, unsigned char g1, unsigned char b1, unsigned char a1,
|
||||||
|
|||||||
@ -8,12 +8,12 @@ CONFIG += graphics_dynamic_library
|
|||||||
DEFINES += _QT
|
DEFINES += _QT
|
||||||
graphics_dynamic_library {
|
graphics_dynamic_library {
|
||||||
CONFIG += shared
|
CONFIG += shared
|
||||||
CONFIG += plugin
|
CONFIG += plugin
|
||||||
|
|
||||||
DEFINES += GRAPHICS_USE_DYNAMIC_LIBRARY_BUILDING
|
DEFINES += GRAPHICS_USE_DYNAMIC_LIBRARY_BUILDING
|
||||||
} else {
|
} else {
|
||||||
DEFINES += GRAPHICS_NO_USE_DYNAMIC_LIBRARY
|
DEFINES += GRAPHICS_NO_USE_DYNAMIC_LIBRARY
|
||||||
CONFIG += static
|
CONFIG += static
|
||||||
}
|
}
|
||||||
|
|
||||||
CORE_ROOT_DIR = $$PWD/../../..
|
CORE_ROOT_DIR = $$PWD/../../..
|
||||||
@ -36,6 +36,7 @@ INCLUDEPATH += \
|
|||||||
|
|
||||||
# matrix
|
# matrix
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
|
$$GRAPHICS_AGG_PATH/include/test_grads/custom_gradients.h \
|
||||||
./../Matrix_private.h \
|
./../Matrix_private.h \
|
||||||
./../Matrix.h
|
./../Matrix.h
|
||||||
|
|
||||||
@ -60,7 +61,7 @@ HEADERS += \
|
|||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
./../AlphaMask_private.cpp \
|
./../AlphaMask_private.cpp \
|
||||||
./../AlphaMask.cpp
|
./../AlphaMask.cpp
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
$$GRAPHICS_AGG_PATH/src/agg_arc.cpp \
|
$$GRAPHICS_AGG_PATH/src/agg_arc.cpp \
|
||||||
@ -110,11 +111,12 @@ HEADERS += \
|
|||||||
./../MetafileToGraphicsRenderer.h \
|
./../MetafileToGraphicsRenderer.h \
|
||||||
./../FormField.h \
|
./../FormField.h \
|
||||||
./../structures.h \
|
./../structures.h \
|
||||||
|
./../shading_info.h \
|
||||||
./../Graphics.h \
|
./../Graphics.h \
|
||||||
./../GraphicsRenderer.h \
|
./../GraphicsRenderer.h \
|
||||||
\
|
\
|
||||||
./Graphics.h \
|
./Graphics.h \
|
||||||
./Image.h \
|
./Image.h
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
./../ArrowHead.cpp \
|
./../ArrowHead.cpp \
|
||||||
|
|||||||
@ -67,57 +67,72 @@ METAFILE_PATH = $$PWD/../../raster/Metafile
|
|||||||
!metafile_disable_svg {
|
!metafile_disable_svg {
|
||||||
DEFINES += METAFILE_SUPPORT_SVG
|
DEFINES += METAFILE_SUPPORT_SVG
|
||||||
|
|
||||||
HEADERS += \
|
# DEPRECATED ENGINE. REMOVE IN 7.6+ VERSIONS
|
||||||
$$METAFILE_PATH/svg/SVGFramework.h \
|
#CONFIG += svg_old_version
|
||||||
$$METAFILE_PATH/svg/SVGTransformer.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgTypes.h \
|
|
||||||
$$METAFILE_PATH/svg/CSvgFile.h \
|
|
||||||
$$METAFILE_PATH/svg/CSvgParser.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CContainer.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CGradient.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CClipPath.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CMask.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPattern.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CSymbol.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CMarker.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CImage.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CLine.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CRect.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CCircle.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CEllipse.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPath.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CText.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CUse.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPolyline.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CStyle.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CObjectBase.h \
|
|
||||||
$$METAFILE_PATH/svg/SvgUtils.h
|
|
||||||
|
|
||||||
SOURCES += \
|
svg_old_version {
|
||||||
$$METAFILE_PATH/svg/SVGFramework.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SVGTransformer.cpp \
|
|
||||||
$$METAFILE_PATH/svg/CSvgFile.cpp \
|
|
||||||
$$METAFILE_PATH/svg/CSvgParser.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CContainer.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CGradient.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CClipPath.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CMask.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CMarker.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPattern.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CSymbol.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CImage.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CLine.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CRect.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CCircle.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CEllipse.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPath.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CText.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CUse.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CPolyline.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CObjectBase.cpp \
|
|
||||||
$$METAFILE_PATH/svg/SvgObjects/CStyle.cpp
|
|
||||||
|
|
||||||
include($$METAFILE_PATH/../../../Common/3dParty/html/css/CssCalculator.pri)
|
DEFINES += SVG_OLD_ENGINE
|
||||||
|
|
||||||
|
HEADERS += \
|
||||||
|
$$METAFILE_PATH/svg/SVGFramework.h \
|
||||||
|
$$METAFILE_PATH/svg/SVGTransformer.h
|
||||||
|
|
||||||
|
SOURCES += \
|
||||||
|
$$METAFILE_PATH/svg/SVGFramework.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SVGTransformer.cpp
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
HEADERS += \
|
||||||
|
$$METAFILE_PATH/svg/SvgTypes.h \
|
||||||
|
$$METAFILE_PATH/svg/CSvgFile.h \
|
||||||
|
$$METAFILE_PATH/svg/CSvgParser.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CContainer.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CGradient.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CClipPath.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CMask.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPattern.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CSymbol.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CMarker.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CImage.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CLine.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CRect.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CCircle.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CEllipse.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPath.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CText.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CUse.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPolyline.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CStyle.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CObjectBase.h \
|
||||||
|
$$METAFILE_PATH/svg/SvgUtils.h
|
||||||
|
|
||||||
|
SOURCES += \
|
||||||
|
$$METAFILE_PATH/svg/CSvgFile.cpp \
|
||||||
|
$$METAFILE_PATH/svg/CSvgParser.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CContainer.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CGradient.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CClipPath.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CMask.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CMarker.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPattern.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CSymbol.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CImage.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CLine.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CRect.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CCircle.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CEllipse.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPath.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CText.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CUse.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CPolyline.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CObjectBase.cpp \
|
||||||
|
$$METAFILE_PATH/svg/SvgObjects/CStyle.cpp
|
||||||
|
|
||||||
|
include($$METAFILE_PATH/../../../Common/3dParty/html/css/CssCalculator.pri)
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
!metafile_disable_svm {
|
!metafile_disable_svm {
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -32,16 +32,12 @@
|
|||||||
#ifndef _BUILD_GRAPHICS_STRUCTURES_H_
|
#ifndef _BUILD_GRAPHICS_STRUCTURES_H_
|
||||||
#define _BUILD_GRAPHICS_STRUCTURES_H_
|
#define _BUILD_GRAPHICS_STRUCTURES_H_
|
||||||
|
|
||||||
#include "../common/Array.h"
|
|
||||||
#include "../graphics/aggplustypes.h"
|
|
||||||
#include "../agg-2.4/include/agg_color_rgba.h"
|
|
||||||
#include "shading_info.h"
|
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <iostream>
|
|
||||||
|
|
||||||
|
#include "shading_info.h"
|
||||||
#include "Matrix.h"
|
#include "Matrix.h"
|
||||||
|
|
||||||
// pen -----------------------------------------------------------
|
// pen -----------------------------------------------------------
|
||||||
|
|||||||
@ -69,7 +69,7 @@ int main(int argc, char *argv[])
|
|||||||
}
|
}
|
||||||
case LoadMaskFromBuffer:
|
case LoadMaskFromBuffer:
|
||||||
{
|
{
|
||||||
Aggplus::CAlphaMask oAlphaMask;
|
Aggplus::CAlphaMask* pAlphaMask = new Aggplus::CAlphaMask();
|
||||||
|
|
||||||
BYTE* pAlphaBuffer = new BYTE[unWidth * unHeight];
|
BYTE* pAlphaBuffer = new BYTE[unWidth * unHeight];
|
||||||
|
|
||||||
@ -84,10 +84,11 @@ int main(int argc, char *argv[])
|
|||||||
uchAlphaValue += 25;
|
uchAlphaValue += 25;
|
||||||
}
|
}
|
||||||
|
|
||||||
oAlphaMask.LoadFromAlphaBuffer(pAlphaBuffer, unWidth, unHeight, false);
|
pAlphaMask->LoadFromAlphaBuffer(pAlphaBuffer, unWidth, unHeight, false);
|
||||||
|
|
||||||
pRasterRenderer->SetAlphaMask(oAlphaMask);
|
pRasterRenderer->SetAlphaMask(pAlphaMask);
|
||||||
|
|
||||||
|
pAlphaMask->Release();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case LoadMaskFromFile:
|
case LoadMaskFromFile:
|
||||||
|
|||||||
@ -303,7 +303,6 @@ namespace MetaFile
|
|||||||
|
|
||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
m_oSvgFile.SetFontManager(m_pFontManager);
|
m_oSvgFile.SetFontManager(m_pFontManager);
|
||||||
m_oSvgFile2.SetFontManager(m_pFontManager);
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//------------------------------------------------------
|
//------------------------------------------------------
|
||||||
@ -351,7 +350,7 @@ namespace MetaFile
|
|||||||
#endif
|
#endif
|
||||||
// Это не svm
|
// Это не svm
|
||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
if (m_oSvgFile2.OpenFromFile(wsFilePath) == true)
|
if (m_oSvgFile.OpenFromFile(wsFilePath) == true)
|
||||||
{
|
{
|
||||||
m_lType = c_lMetaSvg;
|
m_lType = c_lMetaSvg;
|
||||||
return true;
|
return true;
|
||||||
@ -486,7 +485,7 @@ namespace MetaFile
|
|||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
case c_lMetaSvg:
|
case c_lMetaSvg:
|
||||||
{
|
{
|
||||||
m_oSvgFile2.Draw(pRenderer, dX, dY, dWidth, dHeight);
|
m_oSvgFile.Draw(pRenderer, dX, dY, dWidth, dHeight);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -565,7 +564,7 @@ namespace MetaFile
|
|||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
case c_lMetaSvg:
|
case c_lMetaSvg:
|
||||||
{
|
{
|
||||||
m_oSvgFile2.GetBounds(*pdX, *pdY, *pdW, *pdH);
|
m_oSvgFile.GetBounds(*pdX, *pdY, *pdW, *pdH);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -46,9 +46,13 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
|
#ifdef SVG_OLD_ENGINE
|
||||||
#include "svg/SVGTransformer.h"
|
#include "svg/SVGTransformer.h"
|
||||||
|
typedef CSVGTransformer CSvgFile;
|
||||||
|
#else
|
||||||
#include "svg/CSvgFile.h"
|
#include "svg/CSvgFile.h"
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
namespace MetaFile
|
namespace MetaFile
|
||||||
{
|
{
|
||||||
@ -95,8 +99,7 @@ namespace MetaFile
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef METAFILE_SUPPORT_SVG
|
#ifdef METAFILE_SUPPORT_SVG
|
||||||
CSVGTransformer m_oSvgFile;
|
CSvgFile m_oSvgFile;
|
||||||
CSvgFile m_oSvgFile2;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int m_lType;
|
int m_lType;
|
||||||
|
|||||||
@ -99,3 +99,13 @@ int CSVGTransformer::get_Metrics()
|
|||||||
{
|
{
|
||||||
return m_internal->m_oXmlParser.GetMetrics();
|
return m_internal->m_oXmlParser.GetMetrics();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CSVGTransformer::GetBounds(double &dX, double &dY, double &dWidth, double &dHeight)
|
||||||
|
{
|
||||||
|
dX = 0;
|
||||||
|
dY = 0;
|
||||||
|
dWidth = get_Width();
|
||||||
|
dHeight = get_Height();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|||||||
@ -27,6 +27,8 @@ public:
|
|||||||
int get_Height();
|
int get_Height();
|
||||||
int get_Metrics();
|
int get_Metrics();
|
||||||
|
|
||||||
|
bool GetBounds(double &dX, double &dY, double &dWidth, double &dHeight);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
CSVGTransformer_private* m_internal;
|
CSVGTransformer_private* m_internal;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
namespace SVG
|
namespace SVG
|
||||||
{
|
{
|
||||||
CMarker::CMarker(XmlUtils::CXmlNode &oNode)
|
CMarker::CMarker(XmlUtils::CXmlNode &oNode)
|
||||||
: CObject(oNode), m_pImage(NULL)
|
: CObject(oNode), m_pImage(NULL)
|
||||||
{
|
{
|
||||||
m_oWindow.m_oX .SetValue(oNode.GetAttribute(L"refX"));
|
m_oWindow.m_oX .SetValue(oNode.GetAttribute(L"refX"));
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
|
|
||||||
namespace SVG
|
namespace SVG
|
||||||
{
|
{
|
||||||
#define DefaultFontFamily L"Times New Roman"
|
#define DefaultFontFamily L"Times New Roman"
|
||||||
|
|
||||||
CTSpan::CTSpan(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent, NSFonts::IFontManager* pFontManager, bool bCheckText)
|
CTSpan::CTSpan(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent, NSFonts::IFontManager* pFontManager, bool bCheckText)
|
||||||
: CRenderedObject(oNode, pParent), m_pFontManager(pFontManager), pPrevElement(NULL)
|
: CRenderedObject(oNode, pParent), m_pFontManager(pFontManager), pPrevElement(NULL)
|
||||||
|
|||||||
@ -73,7 +73,7 @@ namespace SVG
|
|||||||
|
|
||||||
bool Draw(IRenderer* pRenderer, const CSvgFile* pFile, CommandeMode oMode = CommandeModeDraw, const TSvgStyles* pOtherStyles = NULL) const override;
|
bool Draw(IRenderer* pRenderer, const CSvgFile* pFile, CommandeMode oMode = CommandeModeDraw, const TSvgStyles* pOtherStyles = NULL) const override;
|
||||||
|
|
||||||
static CTextPath* Create(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent = NULL, NSFonts::IFontManager* pFontManager = NULL, const CSvgFile* pFile = NULL);
|
static CTextPath* Create(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent = NULL, NSFonts::IFontManager* pFontManager = NULL, const CSvgFile* pFile = NULL);
|
||||||
private:
|
private:
|
||||||
void DrawGlyph(CTSpan* pTSpan, CMovingPath& oMovingPath, IRenderer* pRenderer, const CSvgFile* pFile, CommandeMode oMode) const;
|
void DrawGlyph(CTSpan* pTSpan, CMovingPath& oMovingPath, IRenderer* pRenderer, const CSvgFile* pFile, CommandeMode oMode) const;
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
namespace SVG
|
namespace SVG
|
||||||
{
|
{
|
||||||
class CUse : public CRenderedObject
|
class CUse : public CRenderedObject
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
CUse(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent = NULL, const CSvgFile* pFile = NULL);
|
CUse(XmlUtils::CXmlNode& oNode, CRenderedObject* pParent = NULL, const CSvgFile* pFile = NULL);
|
||||||
|
|||||||
@ -8,16 +8,16 @@
|
|||||||
|
|
||||||
namespace SVG
|
namespace SVG
|
||||||
{
|
{
|
||||||
#define MapCI std::map<std::wstring, std::wstring>::const_iterator
|
#define MapCI std::map<std::wstring, std::wstring>::const_iterator
|
||||||
|
|
||||||
#define SvgDigit NSCSS::NSProperties::CDigit
|
#define SvgDigit NSCSS::NSProperties::CDigit
|
||||||
#define SvgString NSCSS::NSProperties::CString
|
#define SvgString NSCSS::NSProperties::CString
|
||||||
#define SvgColor NSCSS::NSProperties::CColor
|
#define SvgColor NSCSS::NSProperties::CColor
|
||||||
#define SvgEnum NSCSS::NSProperties::CEnum
|
#define SvgEnum NSCSS::NSProperties::CEnum
|
||||||
|
|
||||||
#define SvgTransform NSCSS::NSProperties::CTransform
|
#define SvgTransform NSCSS::NSProperties::CTransform
|
||||||
#define SvgFont NSCSS::NSProperties::CFont
|
#define SvgFont NSCSS::NSProperties::CFont
|
||||||
#define SvgText NSCSS::NSProperties::CText
|
#define SvgText NSCSS::NSProperties::CText
|
||||||
|
|
||||||
struct TStroke
|
struct TStroke
|
||||||
{
|
{
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
|
|
||||||
namespace SVG
|
namespace SVG
|
||||||
{
|
{
|
||||||
#define ADD_COLOR( COLOR, R, G, B ) m_Table.insert(std::pair<std::wstring, unsigned int>( L##COLOR, ( R << 0 ) | ( G << 8 ) | ( B << 16 ) ))
|
#define ADD_COLOR( COLOR, R, G, B ) m_Table.insert(std::pair<std::wstring, unsigned int>( L##COLOR, ( R << 0 ) | ( G << 8 ) | ( B << 16 ) ))
|
||||||
|
|
||||||
enum Metrics
|
enum Metrics
|
||||||
{
|
{
|
||||||
@ -219,18 +219,18 @@ namespace SVG
|
|||||||
{
|
{
|
||||||
switch (eMetrics)
|
switch (eMetrics)
|
||||||
{
|
{
|
||||||
case EM: break;
|
case EM: break;
|
||||||
case EX: break;
|
case EX: break;
|
||||||
case PX: dValue *= 96 / 25.4;
|
case PX: dValue *= 96 / 25.4;
|
||||||
case PT: break;
|
case PT: break;
|
||||||
case PC: break;
|
case PC: break;
|
||||||
case CM: break;
|
case CM: break;
|
||||||
case MM: break;
|
case MM: break;
|
||||||
case INCH: break;
|
case INCH: break;
|
||||||
|
|
||||||
case PCT: break;
|
case PCT: break;
|
||||||
|
|
||||||
case UNDEFINED: break;
|
case UNDEFINED: break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user