mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Compare commits
30 Commits
v5.2.99.97
...
core-linux
| Author | SHA1 | Date | |
|---|---|---|---|
| 2b8efdd9b1 | |||
| 98a568177d | |||
| f9af786d5a | |||
| 394d1e7b38 | |||
| 45ba99b9bf | |||
| af7640e736 | |||
| 292781e6fb | |||
| 9cd97d48b8 | |||
| 579b441edc | |||
| 90f1aa055c | |||
| d75352f1f2 | |||
| eef66b3498 | |||
| b41170a233 | |||
| 5626963bdf | |||
| 643f117a92 | |||
| dd24ca837f | |||
| f555e3f821 | |||
| 07a07a1abd | |||
| 30473ee9b7 | |||
| 8b6e5f17c8 | |||
| 4d0e44c8b6 | |||
| b6b79576a1 | |||
| 1c1223b148 | |||
| 9947f058a9 | |||
| 54f55ad2ac | |||
| e4edb9cca4 | |||
| aacea2f015 | |||
| 1475b2fef9 | |||
| 8e58975095 | |||
| 04550f06ad |
2
.gitignore
vendored
2
.gitignore
vendored
@ -47,6 +47,8 @@ ASCOfficeXlsFile2/win32/_ASCOfficeXlsFile2_p.c
|
||||
ASCOfficeXlsFile2/win32/dlldata.c
|
||||
OfficeUtils/win32/OfficeUtilsLib/OfficeUtilsLib/ReadMe.txt
|
||||
X2tConverter/**/Makefile.*
|
||||
X2tConverter/ASCOfficePPTXFile/PPTXLib/Linux/PPTXFormatLib/Makefile
|
||||
X2tConverter/Common/DocxFormat/DocxFormatLib/Makefile
|
||||
*.7z
|
||||
*.obj
|
||||
*.pdb
|
||||
|
||||
@ -52,7 +52,6 @@
|
||||
#include <string.h>
|
||||
#endif
|
||||
|
||||
#include "../../Common/DocxFormat/Source/Base/Types_32.h"
|
||||
#include "../../DesktopEditor/common/Types.h"
|
||||
#include "../../Common/DocxFormat/Source/Base/unicode_util.h"
|
||||
#include "../../Common/DocxFormat/Source/Base/Types_32.h"
|
||||
|
||||
@ -1071,7 +1071,9 @@ namespace DocFileFormat
|
||||
int cpPic = searchNextTextMark(m_document->Text, cpFieldStart, TextMark::Picture);
|
||||
int cpFieldEnd = searchNextTextMark( m_document->Text, cpFieldStart, TextMark::FieldEndMark );
|
||||
|
||||
if (cpFieldStart < cpPic && cpPic < cpFieldEnd)
|
||||
bool bStartField = _fieldLevels.empty() ? false : (_fieldLevels.back().bBegin && !_fieldLevels.back().bSeparate);
|
||||
|
||||
if (cpFieldStart < cpPic && cpPic < cpFieldEnd && !bStartField)
|
||||
{
|
||||
writeField(text, cpFieldStart, cpFieldEnd);
|
||||
text.clear();
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
*/
|
||||
|
||||
#include "MainDocumentMapping.h"
|
||||
#include "OfficeDrawing/FillStyleBooleanProperties.h"
|
||||
|
||||
namespace DocFileFormat
|
||||
{
|
||||
@ -83,16 +84,27 @@ namespace DocFileFormat
|
||||
|
||||
if ((m_document->GetOfficeArt()) && (m_document->GetOfficeArt()->GetShapeBackgound()))
|
||||
{
|
||||
bool bFilled = true;
|
||||
m_document->DocProperties->bDisplayBackgroundShape = true;
|
||||
ShapeContainer* pShape = m_document->GetOfficeArt()->GetShapeBackgound();
|
||||
|
||||
m_pXmlWriter->WriteNodeBegin ( L"w:background", TRUE);
|
||||
m_pXmlWriter->WriteAttribute ( L"w:color", L"FFFFFF");
|
||||
m_pXmlWriter->WriteNodeEnd( L"", TRUE, FALSE );
|
||||
|
||||
VMLShapeMapping oVmlWriter (m_context, m_pXmlWriter, NULL, NULL, _caller);
|
||||
pShape->Convert(&oVmlWriter);
|
||||
m_pXmlWriter->WriteNodeEnd (L"w:background");
|
||||
OptionEntryPtr boolFill = pShape->ExtractOption(fillStyleBooleanProperties);
|
||||
|
||||
FillStyleBooleanProperties booleans(boolFill ? boolFill->op : 0);
|
||||
if (booleans.fUsefFilled && !booleans.fFilled)
|
||||
{
|
||||
bFilled = false;
|
||||
}
|
||||
if (bFilled)
|
||||
{
|
||||
m_pXmlWriter->WriteNodeBegin ( L"w:background", TRUE);
|
||||
m_pXmlWriter->WriteAttribute ( L"w:color", L"FFFFFF");
|
||||
m_pXmlWriter->WriteNodeEnd( L"", TRUE, FALSE );
|
||||
|
||||
VMLShapeMapping oVmlWriter (m_context, m_pXmlWriter, NULL, NULL, _caller);
|
||||
pShape->Convert(&oVmlWriter);
|
||||
m_pXmlWriter->WriteNodeEnd (L"w:background");
|
||||
}
|
||||
}
|
||||
|
||||
m_pXmlWriter->WriteNodeBegin( L"w:body", FALSE );
|
||||
|
||||
@ -217,7 +217,7 @@ public:
|
||||
|
||||
private:
|
||||
|
||||
unsigned char* m_Data;
|
||||
unsigned char* m_Data;
|
||||
unsigned long m_Size;
|
||||
unsigned long m_Position;
|
||||
bool bMemoryCopy;
|
||||
|
||||
@ -101,6 +101,24 @@ namespace DocFileFormat
|
||||
return new ShapeContainer( _reader, bodySize, typeCode, version, instance );
|
||||
}
|
||||
|
||||
OptionEntryPtr ExtractOption(const PropertyId & prop) const
|
||||
{
|
||||
OptionEntryPtr ret;
|
||||
for ( size_t i = 0; i < this->Children.size(); ++i )
|
||||
{
|
||||
ShapeOptions* opt = dynamic_cast<ShapeOptions*>( this->Children[i] );
|
||||
|
||||
if ( opt == NULL ) continue;
|
||||
|
||||
std::map<PropertyId, OptionEntryPtr>::iterator pFind = opt->OptionsByID.find(prop);
|
||||
if (pFind != opt->OptionsByID.end())
|
||||
{
|
||||
ret = pFind->second;
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
std::vector<OptionEntryPtr> ExtractOptions() const
|
||||
{
|
||||
std::vector<OptionEntryPtr> ret;
|
||||
|
||||
@ -42,15 +42,15 @@ class SectPr
|
||||
{
|
||||
public:
|
||||
std::wstring sHeaderFooterReference;
|
||||
long W;
|
||||
long H;
|
||||
double W;
|
||||
double H;
|
||||
BYTE cOrientation;
|
||||
long Left;
|
||||
long Top;
|
||||
long Right;
|
||||
long Bottom;
|
||||
long Header;
|
||||
long Footer;
|
||||
double Left;
|
||||
double Top;
|
||||
double Right;
|
||||
double Bottom;
|
||||
double Header;
|
||||
double Footer;
|
||||
bool TitlePg;
|
||||
bool EvenAndOddHeaders;
|
||||
BYTE SectionType;
|
||||
@ -61,13 +61,6 @@ public:
|
||||
std::wstring footnotePr;
|
||||
std::wstring endnotePr;
|
||||
|
||||
bool bW;
|
||||
bool bH;
|
||||
bool bOrientation;
|
||||
bool bLeft;
|
||||
bool bTop;
|
||||
bool bRight;
|
||||
bool bBottom;
|
||||
bool bHeader;
|
||||
bool bFooter;
|
||||
bool bTitlePg;
|
||||
@ -76,16 +69,18 @@ public:
|
||||
bool bPageNumStart;
|
||||
SectPr()
|
||||
{
|
||||
W = Page_Width;
|
||||
H = Page_Height;
|
||||
cOrientation = orientation_Portrait;
|
||||
Left = 30;
|
||||
Top = 20;
|
||||
Right = 15;
|
||||
Bottom = 20;
|
||||
Header = 12.5;
|
||||
Footer = 12.5;
|
||||
sHeaderFooterReference = _T("");
|
||||
cols = _T("<w:cols w:space=\"708\"/>");
|
||||
|
||||
bW = false;
|
||||
bH = false;
|
||||
bOrientation = false;
|
||||
bLeft = false;
|
||||
bTop = false;
|
||||
bRight = false;
|
||||
bBottom = false;
|
||||
bHeader = false;
|
||||
bFooter = false;
|
||||
bTitlePg = false;
|
||||
@ -96,6 +91,14 @@ public:
|
||||
std::wstring Write()
|
||||
{
|
||||
std::wstring sRes = _T("");
|
||||
long nWidth = SerializeCommon::Round(W * g_dKoef_mm_to_twips);
|
||||
long nHeight = SerializeCommon::Round(H * g_dKoef_mm_to_twips);
|
||||
long nMLeft = SerializeCommon::Round(Left * g_dKoef_mm_to_twips);
|
||||
long nMTop = SerializeCommon::Round(Top * g_dKoef_mm_to_twips);
|
||||
long nMRight = SerializeCommon::Round(Right * g_dKoef_mm_to_twips);
|
||||
long nMBottom = SerializeCommon::Round(Bottom * g_dKoef_mm_to_twips);
|
||||
long nMHeader = SerializeCommon::Round(Header * g_dKoef_mm_to_twips);
|
||||
long nMFooter = SerializeCommon::Round(Footer * g_dKoef_mm_to_twips);
|
||||
|
||||
if(!sHeaderFooterReference.empty())
|
||||
sRes += sHeaderFooterReference;
|
||||
@ -117,41 +120,19 @@ public:
|
||||
}
|
||||
sRes += L"<w:type w:val=\"" + sType + L"\"/>";
|
||||
}
|
||||
if((bW && bH) || bOrientation)
|
||||
{
|
||||
sRes += L"<w:pgSz";
|
||||
if(bW && bH)
|
||||
{
|
||||
sRes += L" w:w=\"" + std::to_wstring(W) + L"\" w:h=\"" + std::to_wstring(H) + L"\"";
|
||||
}
|
||||
if(bOrientation)
|
||||
{
|
||||
if(orientation_Portrait != cOrientation)
|
||||
sRes += L" w:orient=\"landscape\"";
|
||||
else
|
||||
sRes += L" w:orient=\"portrait\"";
|
||||
}
|
||||
sRes += L"<w:pgSz w:w=\"" + std::to_wstring(nWidth) + L"\" w:h=\"" + std::to_wstring(nHeight) + L"\"";
|
||||
if(orientation_Portrait != cOrientation)
|
||||
sRes += L" w:orient=\"landscape\"";
|
||||
sRes += L"/>";
|
||||
|
||||
sRes += L"/>";
|
||||
}
|
||||
sRes += L"<w:pgMar w:top=\"" + std::to_wstring(nMTop) + L"\" w:right=\"" + std::to_wstring(nMRight) +
|
||||
L"\" w:bottom=\"" + std::to_wstring(nMBottom) + L"\" w:left=\"" + std::to_wstring(nMLeft) + L"\" w:gutter=\"0\"";
|
||||
|
||||
if(bLeft || bTop || bRight || bBottom || bHeader || bFooter)
|
||||
{
|
||||
sRes += L"<w:pgMar";
|
||||
if(bTop)
|
||||
sRes += L" w:top=\"" + std::to_wstring(Top) + L"\"";
|
||||
if(bRight)
|
||||
sRes += L" w:right=\"" + std::to_wstring(Right) + L"\"";
|
||||
if(bBottom)
|
||||
sRes += L" w:bottom=\"" + std::to_wstring(Bottom) + L"\"";
|
||||
if(bLeft)
|
||||
sRes += L" w:left=\"" + std::to_wstring(Left) + L"\"";
|
||||
if(bHeader)
|
||||
sRes += L" w:header=\"" + std::to_wstring(Header) + L"\"";
|
||||
if(bFooter)
|
||||
sRes += L" w:footer=\"" + std::to_wstring(Footer) + L"\"";
|
||||
sRes += L" w:gutter=\"0\"/>";
|
||||
}
|
||||
if(bHeader)
|
||||
sRes += L" w:header=\"" + std::to_wstring(nMHeader) + L"\"";
|
||||
if(bFooter)
|
||||
sRes += L" w:footer=\"" + std::to_wstring(nMFooter) + L"\"";
|
||||
sRes += L"/>";
|
||||
if(!pgBorders.empty())
|
||||
sRes += pgBorders;
|
||||
|
||||
@ -264,7 +245,6 @@ class Spacing
|
||||
public:
|
||||
bool bLineRule;
|
||||
bool bLine;
|
||||
bool bLineTwips;
|
||||
bool bAfter;
|
||||
bool bBefore;
|
||||
bool bAfterAuto;
|
||||
@ -272,16 +252,14 @@ public:
|
||||
|
||||
BYTE LineRule;
|
||||
double Line;
|
||||
long LineTwips;
|
||||
long After;
|
||||
long Before;
|
||||
double After;
|
||||
double Before;
|
||||
bool AfterAuto;
|
||||
bool BeforeAuto;
|
||||
Spacing()
|
||||
{
|
||||
bLineRule = false;
|
||||
bLine = false;
|
||||
bLineTwips = false;
|
||||
bAfter = false;
|
||||
bBefore = false;
|
||||
bAfterAuto = false;
|
||||
@ -357,48 +335,10 @@ public:
|
||||
sShd += L"<w:shd";
|
||||
if(bValue)
|
||||
{
|
||||
switch(Value)
|
||||
{
|
||||
case SimpleTypes::shdClear : sShd += L" w:val=\"clear\""; break;
|
||||
case SimpleTypes::shdDiagCross : sShd += L" w:val=\"diagCross\""; break;
|
||||
case SimpleTypes::shdDiagStripe : sShd += L" w:val=\"diagStripe\""; break;
|
||||
case SimpleTypes::shdHorzCross : sShd += L" w:val=\"horzCross\""; break;
|
||||
case SimpleTypes::shdHorzStripe : sShd += L" w:val=\"horzStripe\""; break;
|
||||
case SimpleTypes::shdNil : sShd += L" w:val=\"nil\""; break;
|
||||
case SimpleTypes::shdPct10 : sShd += L" w:val=\"pct10\""; break;
|
||||
case SimpleTypes::shdPct12 : sShd += L" w:val=\"pct12\""; break;
|
||||
case SimpleTypes::shdPct15 : sShd += L" w:val=\"pct15\""; break;
|
||||
case SimpleTypes::shdPct20 : sShd += L" w:val=\"pct20\""; break;
|
||||
case SimpleTypes::shdPct25 : sShd += L" w:val=\"pct25\""; break;
|
||||
case SimpleTypes::shdPct30 : sShd += L" w:val=\"pct30\""; break;
|
||||
case SimpleTypes::shdPct35 : sShd += L" w:val=\"pct35\""; break;
|
||||
case SimpleTypes::shdPct37 : sShd += L" w:val=\"pct37\""; break;
|
||||
case SimpleTypes::shdPct40 : sShd += L" w:val=\"pct40\""; break;
|
||||
case SimpleTypes::shdPct45 : sShd += L" w:val=\"pct45\""; break;
|
||||
case SimpleTypes::shdPct5 : sShd += L" w:val=\"pct5\""; break;
|
||||
case SimpleTypes::shdPct50 : sShd += L" w:val=\"pct50\""; break;
|
||||
case SimpleTypes::shdPct55 : sShd += L" w:val=\"pct55\""; break;
|
||||
case SimpleTypes::shdPct60 : sShd += L" w:val=\"pct60\""; break;
|
||||
case SimpleTypes::shdPct62 : sShd += L" w:val=\"pct62\""; break;
|
||||
case SimpleTypes::shdPct65 : sShd += L" w:val=\"pct65\""; break;
|
||||
case SimpleTypes::shdPct70 : sShd += L" w:val=\"pct70\""; break;
|
||||
case SimpleTypes::shdPct75 : sShd += L" w:val=\"pct75\""; break;
|
||||
case SimpleTypes::shdPct80 : sShd += L" w:val=\"pct80\""; break;
|
||||
case SimpleTypes::shdPct85 : sShd += L" w:val=\"pct85\""; break;
|
||||
case SimpleTypes::shdPct87 : sShd += L" w:val=\"pct87\""; break;
|
||||
case SimpleTypes::shdPct90 : sShd += L" w:val=\"pct90\""; break;
|
||||
case SimpleTypes::shdPct95 : sShd += L" w:val=\"pct95\""; break;
|
||||
case SimpleTypes::shdReverseDiagStripe : sShd += L" w:val=\"reverseDiagStripe\""; break;
|
||||
case SimpleTypes::shdSolid : sShd += L" w:val=\"solid\""; break;
|
||||
case SimpleTypes::shdThinDiagCross : sShd += L" w:val=\"thinDiagCross\""; break;
|
||||
case SimpleTypes::shdThinDiagStripe : sShd += L" w:val=\"thinDiagStripe\""; break;
|
||||
case SimpleTypes::shdThinHorzCross : sShd += L" w:val=\"thinHorzCross\""; break;
|
||||
case SimpleTypes::shdThinHorzStripe : sShd += L" w:val=\"thinHorzStripe\""; break;
|
||||
case SimpleTypes::shdThinReverseDiagStripe : sShd += L" w:val=\"thinReverseDiagStripe\""; break;
|
||||
case SimpleTypes::shdThinVertStripe : sShd += L" w:val=\"thinVertStripe\""; break;
|
||||
case SimpleTypes::shdVertStripe : sShd += L" w:val=\"vertStripe\""; break;
|
||||
default : sShd += L" w:val=\"solid\""; break;
|
||||
}
|
||||
if(shd_Nil == Value)
|
||||
sShd += L" w:val=\"nil\"";
|
||||
else
|
||||
sShd += L" w:val=\"clear\"";
|
||||
}
|
||||
sShd += L" w:color=\"auto\"";
|
||||
if(bColor)
|
||||
@ -423,7 +363,7 @@ class Tab
|
||||
{
|
||||
public:
|
||||
BYTE Val;
|
||||
long Pos;
|
||||
double Pos;
|
||||
BYTE Leader;
|
||||
bool bLeader;
|
||||
Tab()
|
||||
@ -457,11 +397,11 @@ public:
|
||||
docRGB HighLight;
|
||||
std::wstring Shd;
|
||||
std::wstring RStyle;
|
||||
long Spacing;
|
||||
double Spacing;
|
||||
bool DStrikeout;
|
||||
bool Caps;
|
||||
bool SmallCaps;
|
||||
long Position;
|
||||
double Position;
|
||||
BYTE FontHint;
|
||||
bool BoldCs;
|
||||
bool ItalicCs;
|
||||
@ -702,11 +642,13 @@ public:
|
||||
}
|
||||
if(bSpacing)
|
||||
{
|
||||
pCStringWriter->WriteString(L"<w:spacing w:val=\"" + std::to_wstring(Spacing) + L"\"/>");
|
||||
long nSpacing = SerializeCommon::Round( g_dKoef_mm_to_twips * Spacing);
|
||||
pCStringWriter->WriteString(L"<w:spacing w:val=\"" + std::to_wstring(nSpacing) + L"\"/>");
|
||||
}
|
||||
if(bPosition)
|
||||
{
|
||||
std::wstring sPosition = L"<w:position w:val=\"" + std::to_wstring(Position) + L"\"/>";
|
||||
long nPosition = SerializeCommon::Round( g_dKoef_mm_to_hps * Position);
|
||||
std::wstring sPosition = L"<w:position w:val=\"" + std::to_wstring(nPosition) + L"\"/>";
|
||||
pCStringWriter->WriteString(sPosition);
|
||||
}
|
||||
if(bFontSize)
|
||||
@ -1059,26 +1001,6 @@ public:
|
||||
};
|
||||
class PaddingsToWrite
|
||||
{
|
||||
public:
|
||||
long Left;
|
||||
long Top;
|
||||
long Right;
|
||||
long Bottom;
|
||||
|
||||
bool bLeft;
|
||||
bool bTop;
|
||||
bool bRight;
|
||||
bool bBottom;
|
||||
public: PaddingsToWrite()
|
||||
{
|
||||
bLeft = false;
|
||||
bTop = false;
|
||||
bRight = false;
|
||||
bBottom = false;
|
||||
}
|
||||
};
|
||||
class PaddingsToWriteMM
|
||||
{
|
||||
public:
|
||||
double Left;
|
||||
double Top;
|
||||
@ -1089,7 +1011,7 @@ public:
|
||||
bool bTop;
|
||||
bool bRight;
|
||||
bool bBottom;
|
||||
public: PaddingsToWriteMM()
|
||||
public: PaddingsToWrite()
|
||||
{
|
||||
bLeft = false;
|
||||
bTop = false;
|
||||
@ -1106,7 +1028,7 @@ public:
|
||||
double Y;
|
||||
double Width;
|
||||
double Height;
|
||||
PaddingsToWriteMM Paddings;
|
||||
PaddingsToWrite Paddings;
|
||||
int m_nDocPr;
|
||||
|
||||
bool bMediaId;
|
||||
@ -1245,8 +1167,8 @@ class docBorder
|
||||
{
|
||||
public:
|
||||
docRGB Color;
|
||||
long Space;
|
||||
long Size;
|
||||
double Space;
|
||||
double Size;
|
||||
BYTE Value;
|
||||
CThemeColor ThemeColor;
|
||||
|
||||
@ -1279,11 +1201,13 @@ public:
|
||||
}
|
||||
if(bSize)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:sz=\"" + std::to_wstring(Size) + L"\"");
|
||||
long nSize = SerializeCommon::Round(g_dKoef_mm_to_eightpoint * Size);
|
||||
pCStringWriter->WriteString(L" w:sz=\"" + std::to_wstring(nSize) + L"\"");
|
||||
}
|
||||
if(bSpace)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:space=\"" + std::to_wstring(Space) + L"\"");
|
||||
long nSpace = SerializeCommon::Round(g_dKoef_mm_to_pt * Space);
|
||||
pCStringWriter->WriteString(L" w:space=\"" + std::to_wstring(nSpace) + L"\"");
|
||||
}
|
||||
if(bThemeColor && ThemeColor.IsNoEmpty())
|
||||
{
|
||||
@ -2150,8 +2074,8 @@ public:
|
||||
class CDrawingPropertyWrapPoint
|
||||
{
|
||||
public:
|
||||
__int64 X;
|
||||
__int64 Y;
|
||||
double X;
|
||||
double Y;
|
||||
|
||||
bool bX;
|
||||
bool bY;
|
||||
@ -2198,29 +2122,29 @@ public:
|
||||
long DataLength;
|
||||
BYTE Type;
|
||||
bool BehindDoc;
|
||||
__int64 DistL;
|
||||
__int64 DistT;
|
||||
__int64 DistR;
|
||||
__int64 DistB;
|
||||
double DistL;
|
||||
double DistT;
|
||||
double DistR;
|
||||
double DistB;
|
||||
bool LayoutInCell;
|
||||
unsigned long RelativeHeight;
|
||||
bool BSimplePos;
|
||||
__int64 EffectExtentL;
|
||||
__int64 EffectExtentT;
|
||||
__int64 EffectExtentR;
|
||||
__int64 EffectExtentB;
|
||||
__int64 Width;
|
||||
__int64 Height;
|
||||
double EffectExtentL;
|
||||
double EffectExtentT;
|
||||
double EffectExtentR;
|
||||
double EffectExtentB;
|
||||
double Width;
|
||||
double Height;
|
||||
BYTE PositionHRelativeFrom;
|
||||
BYTE PositionHAlign;
|
||||
__int64 PositionHPosOffset;
|
||||
double PositionHPctOffset;
|
||||
double PositionHPosOffset;
|
||||
double PositionHPctOffset;
|
||||
BYTE PositionVRelativeFrom;
|
||||
BYTE PositionVAlign;
|
||||
__int64 PositionVPosOffset;
|
||||
double PositionVPosOffset;
|
||||
double PositionVPctOffset;
|
||||
__int64 SimplePosX;
|
||||
__int64 SimplePosY;
|
||||
double SimplePosX;
|
||||
double SimplePosY;
|
||||
std::wstring sChartRels;
|
||||
std::wstring sSizeRelH;
|
||||
std::wstring sSizeRelV;
|
||||
@ -2310,17 +2234,24 @@ public:
|
||||
{
|
||||
if(bWidth && bHeight)
|
||||
{
|
||||
__int64 emuWidth = (__int64)(g_dKoef_mm_to_emu * Width);
|
||||
__int64 emuHeight = (__int64)(g_dKoef_mm_to_emu * Height);
|
||||
|
||||
if(false == bChart)
|
||||
sXml += L"<wp:inline xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" \
|
||||
distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstring(Width) + L"\" cy=\"" + std::to_wstring(Height) + L"\"/>";
|
||||
distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstring(emuWidth) + L"\" cy=\"" + std::to_wstring(emuHeight) + L"\"/>";
|
||||
else
|
||||
sXml += L"<w:drawing><wp:inline distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\">\
|
||||
<wp:extent cx=\"" + std::to_wstring(Width) + L"\" cy=\"" + std::to_wstring(Height) + L"\"/>";
|
||||
<wp:extent cx=\"" + std::to_wstring(emuWidth) + L"\" cy=\"" + std::to_wstring(emuHeight) + L"\"/>";
|
||||
|
||||
if(bEffectExtentL && bEffectExtentT && bEffectExtentR && bEffectExtentB)
|
||||
{
|
||||
sXml += L"<wp:effectExtent l=\"" + std::to_wstring(EffectExtentL) + L"\" t=\"" + std::to_wstring(EffectExtentT) +
|
||||
L"\" r=\"" + std::to_wstring(EffectExtentR) + L"\" b=\"" + std::to_wstring(EffectExtentB) + L"\"/>";
|
||||
__int64 emuEffectExtentL = (__int64)(g_dKoef_mm_to_emu * EffectExtentL);
|
||||
__int64 emuEffectExtentT = (__int64)(g_dKoef_mm_to_emu * EffectExtentT);
|
||||
__int64 emuEffectExtentR = (__int64)(g_dKoef_mm_to_emu * EffectExtentR);
|
||||
__int64 emuEffectExtentB = (__int64)(g_dKoef_mm_to_emu * EffectExtentB);
|
||||
sXml += L"<wp:effectExtent l=\"" + std::to_wstring(emuEffectExtentL) + L"\" t=\"" + std::to_wstring(emuEffectExtentT) +
|
||||
L"\" r=\"" + std::to_wstring(emuEffectExtentR) + L"\" b=\"" + std::to_wstring(emuEffectExtentB) + L"\"/>";
|
||||
}
|
||||
|
||||
if(!sDocPr.empty())
|
||||
@ -2362,13 +2293,13 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
__int64 emuDistB = 0;
|
||||
|
||||
if(bDistL)
|
||||
emuDistL = DistL;
|
||||
emuDistL = (__int64)(g_dKoef_mm_to_emu * DistL);
|
||||
if(bDistT)
|
||||
emuDistT = DistT;
|
||||
emuDistT = (__int64)(g_dKoef_mm_to_emu * DistT);
|
||||
if(bDistR)
|
||||
emuDistR = DistR;
|
||||
emuDistR = (__int64)(g_dKoef_mm_to_emu * DistR);
|
||||
if(bDistB)
|
||||
emuDistB = DistB;
|
||||
emuDistB = (__int64)(g_dKoef_mm_to_emu * DistB);
|
||||
int nSimplePos = 0;
|
||||
if(bBSimplePos && BSimplePos)
|
||||
nSimplePos = 1;
|
||||
@ -2397,10 +2328,10 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
|
||||
__int64 emuX = 0;
|
||||
if(bSimplePosX)
|
||||
emuX = SimplePosX;
|
||||
emuX = (__int64)(g_dKoef_mm_to_emu * SimplePosX);
|
||||
__int64 emuY = 0;
|
||||
if(bSimplePosY)
|
||||
emuY = SimplePosY;
|
||||
emuY = (__int64)(g_dKoef_mm_to_emu * SimplePosY);
|
||||
sXml += L"<wp:simplePos x=\"" + std::to_wstring(emuX) + L"\" y=\"" + std::to_wstring(emuY) + L"\"/>";
|
||||
|
||||
if(bPositionHRelativeFrom && (bPositionHAlign || bPositionHPosOffset || bPositionHPctOffset))
|
||||
@ -2431,7 +2362,8 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
}
|
||||
else if(bPositionHPosOffset)
|
||||
{
|
||||
sContent = L"<wp:posOffset>" + std::to_wstring(PositionHPosOffset) + L"</wp:posOffset>";
|
||||
__int64 emuPosOffset = (__int64)(g_dKoef_mm_to_emu * PositionHPosOffset);
|
||||
sContent = L"<wp:posOffset>" + std::to_wstring(emuPosOffset) + L"</wp:posOffset>";
|
||||
}
|
||||
else if(bPositionHPctOffset)
|
||||
{
|
||||
@ -2468,7 +2400,8 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
}
|
||||
else if(bPositionVPosOffset)
|
||||
{
|
||||
sContent = L"<wp:posOffset>" + std::to_wstring(PositionVPosOffset) + L"</wp:posOffset>";
|
||||
__int64 emuPosOffset = (__int64)(g_dKoef_mm_to_emu * PositionVPosOffset);
|
||||
sContent = L"<wp:posOffset>" + std::to_wstring(emuPosOffset) + L"</wp:posOffset>";
|
||||
}
|
||||
else if(bPositionVPctOffset)
|
||||
{
|
||||
@ -2477,13 +2410,20 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
}
|
||||
sXml += L"<wp:positionV relativeFrom=\"" + sRelativeFrom + L"\">" + sContent + L"</wp:positionV>";
|
||||
}
|
||||
sXml += L"<wp:extent cx=\"" + std::to_wstring(Width) + L"\" cy=\"" + std::to_wstring(Height)+ L"\"/>";
|
||||
__int64 emuWidth = (__int64)(g_dKoef_mm_to_emu * Width);
|
||||
__int64 emuHeight = (__int64)(g_dKoef_mm_to_emu * Height);
|
||||
|
||||
sXml += L"<wp:extent cx=\"" + std::to_wstring(emuWidth) + L"\" cy=\"" + std::to_wstring(emuHeight)+ L"\"/>";
|
||||
|
||||
if(bEffectExtentL && bEffectExtentT && bEffectExtentR && bEffectExtentB)
|
||||
{
|
||||
sXml += L"<wp:effectExtent l=\"" + std::to_wstring(EffectExtentL) +
|
||||
L"\" t=\"" + std::to_wstring(EffectExtentT) + L"\" r=\"" + std::to_wstring(EffectExtentR) +
|
||||
L"\" b=\"" + std::to_wstring(EffectExtentB) + L"\"/>";
|
||||
__int64 emuEffectExtentL = (__int64)(g_dKoef_mm_to_emu * EffectExtentL);
|
||||
__int64 emuEffectExtentT = (__int64)(g_dKoef_mm_to_emu * EffectExtentT);
|
||||
__int64 emuEffectExtentR = (__int64)(g_dKoef_mm_to_emu * EffectExtentR);
|
||||
__int64 emuEffectExtentB = (__int64)(g_dKoef_mm_to_emu * EffectExtentB);
|
||||
sXml += L"<wp:effectExtent l=\"" + std::to_wstring(emuEffectExtentL) +
|
||||
L"\" t=\"" + std::to_wstring(emuEffectExtentT) + L"\" r=\"" + std::to_wstring(emuEffectExtentR) +
|
||||
L"\" b=\"" + std::to_wstring(emuEffectExtentB) + L"\"/>";
|
||||
}
|
||||
if(bDrawingPropertyWrap && DrawingPropertyWrap.bWrappingType)
|
||||
{
|
||||
@ -2514,7 +2454,9 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
|
||||
if(DrawingPropertyWrap.bStart && DrawingPropertyWrap.Start.bX && DrawingPropertyWrap.Start.bY)
|
||||
{
|
||||
sXml += L"<wp:start x=\"" + std::to_wstring(DrawingPropertyWrap.Start.X) + L"\" y=\"" + std::to_wstring(DrawingPropertyWrap.Start.Y) + L"\"/>";
|
||||
__int64 emuX = (__int64)(g_dKoef_mm_to_emu * DrawingPropertyWrap.Start.X);
|
||||
__int64 emuY = (__int64)(g_dKoef_mm_to_emu * DrawingPropertyWrap.Start.Y);
|
||||
sXml += L"<wp:start x=\"" + std::to_wstring(emuX) + L"\" y=\"" + std::to_wstring(emuY) + L"\"/>";
|
||||
}
|
||||
|
||||
for(size_t i = 0; i < DrawingPropertyWrap.Points.size(); ++i)
|
||||
@ -2522,7 +2464,9 @@ distT=\"0\" distB=\"0\" distL=\"0\" distR=\"0\"><wp:extent cx=\"" + std::to_wstr
|
||||
CDrawingPropertyWrapPoint* pWrapPoint = DrawingPropertyWrap.Points[i];
|
||||
if(pWrapPoint->bX && pWrapPoint->bY)
|
||||
{
|
||||
sXml += L"<wp:lineTo x=\"" + std::to_wstring(pWrapPoint->X) + L"\" y=\"" + std::to_wstring(pWrapPoint->Y) + L"\"/>";
|
||||
__int64 emuX = (__int64)(g_dKoef_mm_to_emu * pWrapPoint->X);
|
||||
__int64 emuY = (__int64)(g_dKoef_mm_to_emu * pWrapPoint->Y);
|
||||
sXml += L"<wp:lineTo x=\"" + std::to_wstring(emuX) + L"\" y=\"" + std::to_wstring(emuY) + L"\"/>";
|
||||
}
|
||||
}
|
||||
sXml += L"</wp:wrapPolygon>";
|
||||
|
||||
@ -455,13 +455,7 @@ public:
|
||||
case c_oSerProp_rPrType::Spacing:
|
||||
{
|
||||
orPr->bSpacing = true;
|
||||
orPr->Spacing = SerializeCommon::Round( g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
break;
|
||||
case c_oSerProp_rPrType::SpacingTwips:
|
||||
{
|
||||
orPr->bSpacing = true;
|
||||
orPr->Spacing = m_oBufferedStream.GetLong();
|
||||
orPr->Spacing = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
break;
|
||||
case c_oSerProp_rPrType::DStrikeout:
|
||||
@ -485,13 +479,7 @@ public:
|
||||
case c_oSerProp_rPrType::Position:
|
||||
{
|
||||
orPr->bPosition = true;
|
||||
orPr->Position = SerializeCommon::Round( g_dKoef_mm_to_hps * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
break;
|
||||
case c_oSerProp_rPrType::PositionHps:
|
||||
{
|
||||
orPr->bPosition = true;
|
||||
orPr->Position = m_oBufferedStream.GetLong();
|
||||
orPr->Position = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
break;
|
||||
case c_oSerProp_rPrType::FontHint:
|
||||
@ -735,12 +723,12 @@ public:
|
||||
{
|
||||
Spacing oSpacing;
|
||||
READ2_DEF(length, res, this->ReadSpacing, &oSpacing);
|
||||
if(oSpacing.bLine || oSpacing.bLineTwips || oSpacing.bAfter || oSpacing.bAfterAuto || oSpacing.bBefore || oSpacing.bBeforeAuto)
|
||||
if(oSpacing.bLine || oSpacing.bAfter || oSpacing.bAfterAuto || oSpacing.bBefore || oSpacing.bBeforeAuto)
|
||||
{
|
||||
pCStringWriter->WriteString(std::wstring(L"<w:spacing"));
|
||||
BYTE bLineRule = linerule_Auto;
|
||||
//проверяется bLine, а не bLineRule чтобы всегда писать LineRule, если есть w:line
|
||||
if(oSpacing.bLine || oSpacing.bLineTwips)
|
||||
if(oSpacing.bLine)
|
||||
{
|
||||
if(oSpacing.bLineRule)
|
||||
bLineRule = oSpacing.LineRule;
|
||||
@ -768,13 +756,10 @@ public:
|
||||
}
|
||||
pCStringWriter->WriteString(sLine);
|
||||
}
|
||||
else if(oSpacing.bLineTwips)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:line=\"" + std::to_wstring(oSpacing.LineTwips) + L"\"");
|
||||
}
|
||||
if(oSpacing.bAfter)
|
||||
{
|
||||
std::wstring sAfter = L" w:after=\"" + std::to_wstring(oSpacing.After) + L"\"";
|
||||
long After = SerializeCommon::Round( g_dKoef_mm_to_twips * oSpacing.After);
|
||||
std::wstring sAfter = L" w:after=\"" + std::to_wstring(After) + L"\"";
|
||||
pCStringWriter->WriteString(sAfter);
|
||||
}
|
||||
if(oSpacing.bAfterAuto)
|
||||
@ -786,7 +771,8 @@ public:
|
||||
}
|
||||
if(oSpacing.bBefore)
|
||||
{
|
||||
std::wstring sBefore = L" w:before=\"" + std::to_wstring(oSpacing.Before) + L"\"";
|
||||
long Before = SerializeCommon::Round( g_dKoef_mm_to_twips * oSpacing.Before);
|
||||
std::wstring sBefore = L" w:before=\"" + std::to_wstring(Before) + L"\"";
|
||||
pCStringWriter->WriteString(sBefore);
|
||||
}
|
||||
if(oSpacing.bBeforeAuto)
|
||||
@ -830,6 +816,7 @@ public:
|
||||
for(size_t i = 0; i < nLen; ++i)
|
||||
{
|
||||
Tab& oTab = oTabs.m_aTabs[i];
|
||||
long nTab = SerializeCommon::Round( g_dKoef_mm_to_twips * oTab.Pos);
|
||||
std::wstring sVal;
|
||||
switch(oTab.Val)
|
||||
{
|
||||
@ -838,7 +825,7 @@ public:
|
||||
case g_tabtype_clear: sVal = L"clear"; break;
|
||||
default: sVal = L"left"; break;
|
||||
}
|
||||
pCStringWriter->WriteString(L"<w:tab w:val=\"" + sVal + L"\" w:pos=\"" + std::to_wstring(oTab.Pos) + L"\"");
|
||||
pCStringWriter->WriteString(L"<w:tab w:val=\"" + sVal + L"\" w:pos=\"" + std::to_wstring(nTab) + L"\"");
|
||||
if (oTab.bLeader)
|
||||
{
|
||||
std::wstring sLeader;
|
||||
@ -950,11 +937,6 @@ public:
|
||||
pCStringWriter->WriteString(L" w:left=\"" + std::to_wstring(nIndLeft) + L"\"");
|
||||
break;
|
||||
}
|
||||
case c_oSerProp_pPrType::Ind_LeftTwips:
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:left=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
break;
|
||||
}
|
||||
case c_oSerProp_pPrType::Ind_Right:
|
||||
{
|
||||
double dIndRight = m_oBufferedStream.GetDouble();
|
||||
@ -963,34 +945,18 @@ public:
|
||||
pCStringWriter->WriteString(L" w:right=\"" + std::to_wstring(nIndRight) + L"\"");
|
||||
break;
|
||||
}
|
||||
case c_oSerProp_pPrType::Ind_RightTwips:
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:right=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
break;
|
||||
}
|
||||
case c_oSerProp_pPrType::Ind_FirstLine:
|
||||
{
|
||||
double dIndFirstLine = m_oBufferedStream.GetDouble();
|
||||
long nIndFirstLine = SerializeCommon::Round(dIndFirstLine * g_dKoef_mm_to_twips);
|
||||
std::wstring sIndFirstLine;
|
||||
if(nIndFirstLine >= 0)
|
||||
if(nIndFirstLine > 0)
|
||||
sIndFirstLine = L" w:firstLine =\"" + std::to_wstring(nIndFirstLine) + L"\"";
|
||||
else
|
||||
sIndFirstLine = L" w:hanging=\"" + std::to_wstring(-nIndFirstLine) + L"\"";
|
||||
pCStringWriter->WriteString(sIndFirstLine);
|
||||
break;
|
||||
}
|
||||
case c_oSerProp_pPrType::Ind_FirstLineTwips:
|
||||
{
|
||||
long nIndFirstLine = m_oBufferedStream.GetLong();
|
||||
std::wstring sIndFirstLine;
|
||||
if(nIndFirstLine >= 0)
|
||||
sIndFirstLine = L" w:firstLine =\"" + std::to_wstring(nIndFirstLine) + L"\"";
|
||||
else
|
||||
sIndFirstLine = L" w:hanging=\"" + std::to_wstring(-nIndFirstLine) + L"\"";
|
||||
pCStringWriter->WriteString(sIndFirstLine);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
break;
|
||||
@ -1007,29 +973,17 @@ public:
|
||||
pSpacing->bLine = true;
|
||||
pSpacing->Line = m_oBufferedStream.GetDouble();
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_LineTwips:
|
||||
pSpacing->bLineTwips = true;
|
||||
pSpacing->LineTwips = m_oBufferedStream.GetLong();
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_LineRule:
|
||||
pSpacing->bLineRule = true;
|
||||
pSpacing->LineRule = m_oBufferedStream.GetUChar();
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_Before:
|
||||
pSpacing->bBefore = true;
|
||||
pSpacing->Before = SerializeCommon::Round( g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_BeforeTwips:
|
||||
pSpacing->bBefore = true;
|
||||
pSpacing->Before = m_oBufferedStream.GetLong();
|
||||
pSpacing->Before = m_oBufferedStream.GetDouble();
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_After:
|
||||
pSpacing->bAfter = true;
|
||||
pSpacing->After = SerializeCommon::Round( g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_AfterTwips:
|
||||
pSpacing->bAfter = true;
|
||||
pSpacing->After = m_oBufferedStream.GetLong();
|
||||
pSpacing->After = m_oBufferedStream.GetDouble();
|
||||
break;
|
||||
case c_oSerProp_pPrType::Spacing_BeforeAuto:
|
||||
pSpacing->bBeforeAuto = true;
|
||||
@ -1066,9 +1020,7 @@ public:
|
||||
if(c_oSerProp_pPrType::Tab_Item_Val == type)
|
||||
poTabItem->Val = m_oBufferedStream.GetUChar();
|
||||
else if(c_oSerProp_pPrType::Tab_Item_Pos == type)
|
||||
poTabItem->Pos = SerializeCommon::Round( g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
else if(c_oSerProp_pPrType::Tab_Item_PosTwips == type)
|
||||
poTabItem->Pos = m_oBufferedStream.GetLong();
|
||||
poTabItem->Pos = m_oBufferedStream.GetDouble();
|
||||
else if(c_oSerProp_pPrType::Tab_Item_Leader == type)
|
||||
{
|
||||
poTabItem->bLeader = true;
|
||||
@ -1161,22 +1113,12 @@ public:
|
||||
else if( c_oSerBorderType::Space == type )
|
||||
{
|
||||
odocBorder->bSpace = true;
|
||||
odocBorder->Space = SerializeCommon::Round(g_dKoef_mm_to_pt * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSerBorderType::SpacePoint == type )
|
||||
{
|
||||
odocBorder->bSpace = true;
|
||||
odocBorder->Space = m_oBufferedStream.GetLong();
|
||||
odocBorder->Space = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSerBorderType::Size == type )
|
||||
{
|
||||
odocBorder->bSize = true;
|
||||
odocBorder->Size = SerializeCommon::Round(g_dKoef_mm_to_eightpoint * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSerBorderType::Size8Point == type )
|
||||
{
|
||||
odocBorder->bSize = true;
|
||||
odocBorder->Size = m_oBufferedStream.GetLong();
|
||||
odocBorder->Size = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSerBorderType::Value == type )
|
||||
{
|
||||
@ -1432,28 +1374,15 @@ public:
|
||||
int res = c_oSerConstants::ReadOk;
|
||||
if( c_oSer_pgSzType::Orientation == type )
|
||||
{
|
||||
pSectPr->bOrientation = true;
|
||||
pSectPr->cOrientation = m_oBufferedStream.GetUChar();
|
||||
}
|
||||
else if( c_oSer_pgSzType::W == type )
|
||||
{
|
||||
pSectPr->bW = true;
|
||||
pSectPr->W = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgSzType::WTwips == type )
|
||||
{
|
||||
pSectPr->bW = true;
|
||||
pSectPr->W = m_oBufferedStream.GetLong();
|
||||
pSectPr->W = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgSzType::H == type )
|
||||
{
|
||||
pSectPr->bH = true;
|
||||
pSectPr->H = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgSzType::HTwips == type )
|
||||
{
|
||||
pSectPr->bH = true;
|
||||
pSectPr->H = m_oBufferedStream.GetLong();
|
||||
pSectPr->H = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
@ -1465,63 +1394,29 @@ public:
|
||||
int res = c_oSerConstants::ReadOk;
|
||||
if( c_oSer_pgMarType::Left == type )
|
||||
{
|
||||
pSectPr->bLeft = true;
|
||||
pSectPr->Left = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::LeftTwips == type )
|
||||
{
|
||||
pSectPr->bLeft = true;
|
||||
pSectPr->Left = m_oBufferedStream.GetLong();
|
||||
pSectPr->Left = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgMarType::Top == type )
|
||||
{
|
||||
pSectPr->bTop = true;
|
||||
pSectPr->Top = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::TopTwips == type )
|
||||
{
|
||||
pSectPr->bTop = true;
|
||||
pSectPr->Top = m_oBufferedStream.GetLong();
|
||||
pSectPr->Top = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgMarType::Right == type )
|
||||
{
|
||||
pSectPr->bRight = true;
|
||||
pSectPr->Right = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::RightTwips == type )
|
||||
{
|
||||
pSectPr->bRight = true;
|
||||
pSectPr->Right = m_oBufferedStream.GetLong();
|
||||
pSectPr->Right = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgMarType::Bottom == type )
|
||||
{
|
||||
pSectPr->bBottom = true;
|
||||
pSectPr->Bottom = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::BottomTwips == type )
|
||||
{
|
||||
pSectPr->bBottom = true;
|
||||
pSectPr->Bottom = m_oBufferedStream.GetLong();
|
||||
pSectPr->Bottom = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgMarType::Header == type )
|
||||
{
|
||||
pSectPr->bHeader = true;
|
||||
pSectPr->Header = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::HeaderTwips == type )
|
||||
{
|
||||
pSectPr->bHeader = true;
|
||||
pSectPr->Header = m_oBufferedStream.GetLong();
|
||||
pSectPr->Header = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if( c_oSer_pgMarType::Footer == type )
|
||||
{
|
||||
pSectPr->bFooter = true;
|
||||
pSectPr->Footer = SerializeCommon::Round(g_dKoef_mm_to_twips * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if( c_oSer_pgMarType::FooterTwips == type )
|
||||
{
|
||||
pSectPr->bFooter = true;
|
||||
pSectPr->Footer = m_oBufferedStream.GetLong();
|
||||
pSectPr->Footer = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
@ -1821,10 +1716,6 @@ public:
|
||||
long nInd = SerializeCommon::Round( g_dKoef_mm_to_twips * dInd);
|
||||
pWiterTblPr->TableInd = L"<w:tblInd w:w=\"" + std::to_wstring(nInd) + L"\" w:type=\"dxa\"/>";
|
||||
}
|
||||
else if( c_oSerProp_tblPrType::TableIndTwips == type )
|
||||
{
|
||||
pWiterTblPr->TableInd = L"<w:tblInd w:w=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\" w:type=\"dxa\"/>";
|
||||
}
|
||||
else if( c_oSerProp_tblPrType::TableW == type )
|
||||
{
|
||||
docW odocW;
|
||||
@ -1924,10 +1815,6 @@ public:
|
||||
long nSpacing = SerializeCommon::Round( g_dKoef_mm_to_twips * dSpacing);
|
||||
pWiterTblPr->TableCellSpacing = L"<w:tblCellSpacing w:w=\"" + std::to_wstring(nSpacing) + L"\" w:type=\"dxa\"/>";
|
||||
}
|
||||
else if( c_oSerProp_tblPrType::TableCellSpacingTwips == type )
|
||||
{
|
||||
pWiterTblPr->TableCellSpacing = L"<w:tblCellSpacing w:w=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\" w:type=\"dxa\"/>";
|
||||
}
|
||||
else if( c_oSerProp_tblPrType::tblCaption == type )
|
||||
{
|
||||
pWiterTblPr->Caption = m_oBufferedStream.GetString3(length);
|
||||
@ -2072,10 +1959,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:tblpX=\"" + std::to_wstring(nX) + L"\"");
|
||||
}
|
||||
else if( c_oSer_tblpPrType2::TblpXTwips == type )
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:tblpX=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else if( c_oSer_tblpPrType2::TblpXSpec == type )
|
||||
{
|
||||
std::wstring sXml;
|
||||
@ -2109,10 +1992,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:tblpY=\"" + std::to_wstring(nY) + L"\"");
|
||||
}
|
||||
else if( c_oSer_tblpPrType2::TblpYTwips == type )
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:tblpY=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else if( c_oSer_tblpPrType2::TblpYSpec == type )
|
||||
{
|
||||
std::wstring sXml;
|
||||
@ -2208,10 +2087,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L"<w:tblCellSpacing w:w=\"" + std::to_wstring(nSpacing) + L"\" w:type=\"dxa\"/>");
|
||||
}
|
||||
else if( c_oSerProp_rowPrType::TableCellSpacingTwips == type )
|
||||
{
|
||||
pCStringWriter->WriteString(L"<w:tblCellSpacing w:w=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\" w:type=\"dxa\"/>");
|
||||
}
|
||||
else if( c_oSerProp_rowPrType::Height == type )
|
||||
{
|
||||
RowHeight val;
|
||||
@ -2305,10 +2180,6 @@ public:
|
||||
double dHeight = m_oBufferedStream.GetDouble();
|
||||
pHeight->nHeight = SerializeCommon::Round( g_dKoef_mm_to_twips * dHeight);
|
||||
}
|
||||
else if( c_oSerProp_rowPrType::Height_ValueTwips == type )
|
||||
{
|
||||
pHeight->nHeight = m_oBufferedStream.GetLong();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -2487,10 +2358,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:leftFromText=\"" + std::to_wstring(nLeft) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::leftTwips == type)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:leftFromText=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::top == type)
|
||||
{
|
||||
double dTop = m_oBufferedStream.GetDouble();
|
||||
@ -2498,10 +2365,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:topFromText=\"" + std::to_wstring(nTop) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::topTwips == type)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:topFromText=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::right == type)
|
||||
{
|
||||
double dRight = m_oBufferedStream.GetDouble();
|
||||
@ -2509,10 +2372,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:rightFromText=\"" + std::to_wstring(nRight) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::rightTwips == type)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:rightFromText=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::bottom == type)
|
||||
{
|
||||
double dBottom = m_oBufferedStream.GetDouble();
|
||||
@ -2520,10 +2379,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L" w:bottomFromText=\"" + std::to_wstring(nBottom) + L"\"");
|
||||
}
|
||||
else if (c_oSerPaddingType::bottomTwips == type)
|
||||
{
|
||||
pCStringWriter->WriteString(L" w:bottomFromText=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3440,12 +3295,10 @@ public:
|
||||
{
|
||||
double dDefTabStop = m_oBufferedStream.GetDouble();
|
||||
long nDefTabStop = SerializeCommon::Round(dDefTabStop * g_dKoef_mm_to_twips);
|
||||
std::wstring sXml;
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<w:defaultTabStop w:val=\"" + std::to_wstring(nDefTabStop) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_SettingsType::DefaultTabStopTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<w:defaultTabStop w:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_SettingsType::MathPr == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(_T("<m:mathPr>"));
|
||||
@ -3730,10 +3583,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:interSp m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:interSp m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3766,10 +3615,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:intraSp m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:intraSp m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3783,10 +3628,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:lMargin m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:lMargin m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3838,10 +3679,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:postSp m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:postSp m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3855,10 +3692,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:preSp m:val=\"" + std::to_wstring(lVal)+ L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:preSp m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3872,10 +3705,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:rMargin m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:rMargin m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -3906,10 +3735,6 @@ public:
|
||||
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:wrapIndent m:val=\"" + std::to_wstring(lVal) + L"\"/>");
|
||||
}
|
||||
else if ( c_oSer_OMathBottomNodesValType::ValTwips == type )
|
||||
{
|
||||
m_oFileWriter.m_oSettingWriter.AddSetting(L"<m:wrapIndent m:val=\"" + std::to_wstring(m_oBufferedStream.GetLong()) + L"\"/>");
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
return res;
|
||||
@ -7325,10 +7150,6 @@ public:
|
||||
|
||||
pCStringWriter->WriteString(L"<w:gridCol w:w=\"" + std::to_wstring(ngridCol)+ L"\"/>");
|
||||
}
|
||||
else if( c_oSerDocTableType::tblGrid_ItemTwips == type )
|
||||
{
|
||||
pCStringWriter->WriteString(L"<w:gridCol w:w=\"" + std::to_wstring(m_oBufferedStream.GetLong())+ L"\"/>");
|
||||
}
|
||||
else if( c_oSerDocTableType::tblGridChange == type )
|
||||
{
|
||||
TrackRevision oTrackRevision;
|
||||
@ -7669,42 +7490,22 @@ public:
|
||||
else if ( c_oSerImageType2::DistL == type )
|
||||
{
|
||||
pDrawingProperty->bDistL = true;
|
||||
pDrawingProperty->DistL = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerImageType2::DistLEmu == type )
|
||||
{
|
||||
pDrawingProperty->bDistL = true;
|
||||
pDrawingProperty->DistL = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->DistL = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerImageType2::DistT == type )
|
||||
{
|
||||
pDrawingProperty->bDistT = true;
|
||||
pDrawingProperty->DistT = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerImageType2::DistTEmu == type )
|
||||
{
|
||||
pDrawingProperty->bDistT = true;
|
||||
pDrawingProperty->DistT = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->DistT = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerImageType2::DistR == type )
|
||||
{
|
||||
pDrawingProperty->bDistR = true;
|
||||
pDrawingProperty->DistR = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerImageType2::DistREmu == type )
|
||||
{
|
||||
pDrawingProperty->bDistR = true;
|
||||
pDrawingProperty->DistR = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->DistR = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerImageType2::DistB == type )
|
||||
{
|
||||
pDrawingProperty->bDistB = true;
|
||||
pDrawingProperty->DistB = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerImageType2::DistBEmu == type )
|
||||
{
|
||||
pDrawingProperty->bDistB = true;
|
||||
pDrawingProperty->DistB = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->DistB = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerImageType2::LayoutInCell == type )
|
||||
{
|
||||
@ -7944,42 +7745,22 @@ public:
|
||||
if ( c_oSerEffectExtent::Left == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentL = true;
|
||||
pDrawingProperty->EffectExtentL = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerEffectExtent::LeftEmu == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentL = true;
|
||||
pDrawingProperty->EffectExtentL = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->EffectExtentL = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerEffectExtent::Top == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentT = true;
|
||||
pDrawingProperty->EffectExtentT = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerEffectExtent::TopEmu == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentT = true;
|
||||
pDrawingProperty->EffectExtentT = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->EffectExtentT = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerEffectExtent::Right == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentR = true;
|
||||
pDrawingProperty->EffectExtentR = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerEffectExtent::RightEmu == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentR = true;
|
||||
pDrawingProperty->EffectExtentR = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->EffectExtentR = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerEffectExtent::Bottom == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentB = true;
|
||||
pDrawingProperty->EffectExtentB = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerEffectExtent::BottomEmu == type )
|
||||
{
|
||||
pDrawingProperty->bEffectExtentB = true;
|
||||
pDrawingProperty->EffectExtentB = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->EffectExtentB = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
@ -7992,22 +7773,12 @@ public:
|
||||
if ( c_oSerExtent::Cx == type )
|
||||
{
|
||||
pDrawingProperty->bWidth = true;
|
||||
pDrawingProperty->Width = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerExtent::CxEmu == type )
|
||||
{
|
||||
pDrawingProperty->bWidth = true;
|
||||
pDrawingProperty->Width = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->Width = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerExtent::Cy == type )
|
||||
{
|
||||
pDrawingProperty->bHeight = true;
|
||||
pDrawingProperty->Height = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerExtent::CyEmu == type )
|
||||
{
|
||||
pDrawingProperty->bHeight = true;
|
||||
pDrawingProperty->Height = (__int64)m_oBufferedStream.GetULong();
|
||||
pDrawingProperty->Height = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
@ -8030,12 +7801,7 @@ public:
|
||||
else if ( c_oSerPosHV::PosOffset == type )
|
||||
{
|
||||
pDrawingProperty->bPositionHPosOffset = true;
|
||||
pDrawingProperty->PositionHPosOffset = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerPosHV::PosOffsetEmu == type )
|
||||
{
|
||||
pDrawingProperty->bPositionHPosOffset = true;
|
||||
pDrawingProperty->PositionHPosOffset = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->PositionHPosOffset = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerPosHV::PctOffset == type )
|
||||
{
|
||||
@ -8063,12 +7829,7 @@ public:
|
||||
else if ( c_oSerPosHV::PosOffset == type )
|
||||
{
|
||||
pDrawingProperty->bPositionVPosOffset = true;
|
||||
pDrawingProperty->PositionVPosOffset = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerPosHV::PosOffsetEmu == type )
|
||||
{
|
||||
pDrawingProperty->bPositionVPosOffset = true;
|
||||
pDrawingProperty->PositionVPosOffset = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->PositionVPosOffset = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerPosHV::PctOffset == type )
|
||||
{
|
||||
@ -8086,22 +7847,12 @@ public:
|
||||
if ( c_oSerSimplePos::X == type )
|
||||
{
|
||||
pDrawingProperty->bSimplePosX = true;
|
||||
pDrawingProperty->SimplePosX = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerSimplePos::XEmu == type )
|
||||
{
|
||||
pDrawingProperty->bSimplePosX = true;
|
||||
pDrawingProperty->SimplePosX = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->SimplePosX = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerSimplePos::Y == type )
|
||||
{
|
||||
pDrawingProperty->bSimplePosY = true;
|
||||
pDrawingProperty->SimplePosY = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerSimplePos::YEmu == type )
|
||||
{
|
||||
pDrawingProperty->bSimplePosY = true;
|
||||
pDrawingProperty->SimplePosY = (__int64)m_oBufferedStream.GetLong();
|
||||
pDrawingProperty->SimplePosY = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
@ -8197,22 +7948,12 @@ public:
|
||||
if ( c_oSerPoint2D::X == type )
|
||||
{
|
||||
pWrapPoint->bX = true;
|
||||
pWrapPoint->X = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerPoint2D::XEmu == type )
|
||||
{
|
||||
pWrapPoint->bX = true;
|
||||
pWrapPoint->X = (__int64)m_oBufferedStream.GetLong();
|
||||
pWrapPoint->X = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else if ( c_oSerPoint2D::Y == type )
|
||||
{
|
||||
pWrapPoint->bY = true;
|
||||
pWrapPoint->Y = (__int64)(g_dKoef_mm_to_emu * m_oBufferedStream.GetDouble());
|
||||
}
|
||||
else if ( c_oSerPoint2D::YEmu == type )
|
||||
{
|
||||
pWrapPoint->bY = true;
|
||||
pWrapPoint->Y = (__int64)m_oBufferedStream.GetLong();
|
||||
pWrapPoint->Y = m_oBufferedStream.GetDouble();
|
||||
}
|
||||
else
|
||||
res = c_oSerConstants::ReadUnknown;
|
||||
|
||||
@ -36,6 +36,17 @@ namespace BinDocxRW
|
||||
{
|
||||
const double eps = 0.001;
|
||||
|
||||
const int Page_Width = 210;
|
||||
const int Page_Height = 297;
|
||||
|
||||
const int X_Left_Margin = 30; // 3 cm
|
||||
const int X_Right_Margin = 15; // 1.5 cm
|
||||
const int Y_Bottom_Margin = 20; // 2 cm
|
||||
const int Y_Top_Margin = 20; // 2 cm
|
||||
|
||||
const double Y_Default_Header = 12.5; // 1.25 cm расстояние от верха страницы до верха верхнего колонтитула
|
||||
const double Y_Default_Footer = 12.5; // 1.25 cm расстояние от низа страницы до низа нижнего колонтитула
|
||||
|
||||
const int shd_Clear = 0;
|
||||
const int shd_Nil = 1;
|
||||
|
||||
@ -145,8 +156,7 @@ extern int g_nCurFormatVersion;
|
||||
Endnotes = 11,
|
||||
Background = 12,
|
||||
VbaProject = 13,
|
||||
App = 15,
|
||||
Core = 16
|
||||
App = 14
|
||||
};}
|
||||
namespace c_oSerSigTypes{enum c_oSerSigTypes
|
||||
{
|
||||
@ -301,9 +311,7 @@ extern int g_nCurFormatVersion;
|
||||
RowBandSize = 15,
|
||||
ColBandSize = 16,
|
||||
tblCaption = 17,
|
||||
tblDescription = 18,
|
||||
TableIndTwips = 19,
|
||||
TableCellSpacingTwips = 20
|
||||
tblDescription = 18
|
||||
};}
|
||||
namespace c_oSer_tblpPrType{enum c_oSer_tblpPrType
|
||||
{
|
||||
@ -320,9 +328,7 @@ extern int g_nCurFormatVersion;
|
||||
VertAnchor = 3,
|
||||
TblpY = 4,
|
||||
TblpYSpec = 5,
|
||||
Paddings = 6,
|
||||
TblpXTwips = 7,
|
||||
TblpYTwips = 8
|
||||
Paddings = 6
|
||||
};}
|
||||
namespace c_oSerProp_pPrType{enum c_oSerProp_pPrType
|
||||
{
|
||||
@ -359,14 +365,7 @@ extern int g_nCurFormatVersion;
|
||||
numPr_Ins = 32,
|
||||
pPrChange = 33,
|
||||
outlineLvl = 34,
|
||||
Tab_Item_Leader = 35,
|
||||
Ind_LeftTwips = 36,
|
||||
Ind_RightTwips = 37,
|
||||
Ind_FirstLineTwips = 38,
|
||||
Spacing_LineTwips = 39,
|
||||
Spacing_BeforeTwips = 40,
|
||||
Spacing_AfterTwips = 41,
|
||||
Tab_Item_PosTwips = 42
|
||||
Tab_Item_Leader = 35
|
||||
};}
|
||||
namespace c_oSerProp_rPrType{enum c_oSerProp_rPrType
|
||||
{
|
||||
@ -407,9 +406,7 @@ extern int g_nCurFormatVersion;
|
||||
Ins = 34,
|
||||
rPrChange = 35,
|
||||
MoveFrom = 36,
|
||||
MoveTo = 37,
|
||||
SpacingTwips = 38,
|
||||
PositionHps = 39
|
||||
MoveTo = 37
|
||||
};}
|
||||
namespace c_oSerProp_rowPrType{enum c_oSerProp_rowPrType
|
||||
{
|
||||
@ -430,9 +427,7 @@ extern int g_nCurFormatVersion;
|
||||
TableHeader = 14,
|
||||
Del = 15,
|
||||
Ins = 16,
|
||||
trPrChange = 17,
|
||||
TableCellSpacingTwips = 18,
|
||||
Height_ValueTwips = 19
|
||||
trPrChange = 17
|
||||
};}
|
||||
namespace c_oSerProp_cellPrType{enum c_oSerProp_cellPrType
|
||||
{
|
||||
@ -522,8 +517,7 @@ extern int g_nCurFormatVersion;
|
||||
tblGridChange = 9,
|
||||
Sdt = 10,
|
||||
BookmarkStart = 11,
|
||||
BookmarkEnd = 12,
|
||||
tblGrid_ItemTwips = 13
|
||||
BookmarkEnd = 12
|
||||
};}
|
||||
namespace c_oSerRunType{enum c_oSerRunType
|
||||
{
|
||||
@ -613,37 +607,26 @@ extern int g_nCurFormatVersion;
|
||||
SizeRelV = 28,
|
||||
Embedded = 29,
|
||||
GraphicFramePr = 30,
|
||||
DocPr = 31,
|
||||
DistBEmu = 32,
|
||||
DistLEmu = 33,
|
||||
DistREmu = 34,
|
||||
DistTEmu = 35
|
||||
DocPr = 31
|
||||
};}
|
||||
namespace c_oSerEffectExtent{enum c_oSerEffectExtent
|
||||
{
|
||||
Left = 0,
|
||||
Top = 1,
|
||||
Right = 2,
|
||||
Bottom = 3,
|
||||
LeftEmu = 4,
|
||||
TopEmu = 5,
|
||||
RightEmu = 6,
|
||||
BottomEmu = 7
|
||||
Bottom = 3
|
||||
};}
|
||||
namespace c_oSerExtent{enum c_oSerExtent
|
||||
{
|
||||
Cx = 0,
|
||||
Cy = 1,
|
||||
CxEmu = 2,
|
||||
CyEmu = 3
|
||||
Cy = 1
|
||||
};}
|
||||
namespace c_oSerPosHV{enum c_oSerPosHV
|
||||
{
|
||||
RelativeFrom = 0,
|
||||
Align = 1,
|
||||
PosOffset = 2,
|
||||
PctOffset = 3,
|
||||
PosOffsetEmu = 4
|
||||
PctOffset = 3
|
||||
};}
|
||||
namespace c_oSerSizeRelHV{enum c_oSerSizeRelHV
|
||||
{
|
||||
@ -653,9 +636,7 @@ extern int g_nCurFormatVersion;
|
||||
namespace c_oSerSimplePos{enum c_oSerSimplePos
|
||||
{
|
||||
X = 0,
|
||||
Y = 1,
|
||||
XEmu = 2,
|
||||
YEmu = 3
|
||||
Y = 1
|
||||
};}
|
||||
namespace c_oSerWrapSquare{enum c_oSerWrapSquare
|
||||
{
|
||||
@ -664,28 +645,20 @@ extern int g_nCurFormatVersion;
|
||||
DistR = 2,
|
||||
DistB = 3,
|
||||
WrapText = 4,
|
||||
EffectExtent = 5,
|
||||
DistLEmu = 6,
|
||||
DistTEmu = 7,
|
||||
DistREmu = 8,
|
||||
DistBEmu = 9
|
||||
EffectExtent = 5
|
||||
};}
|
||||
namespace c_oSerWrapThroughTight{enum c_oSerWrapThroughTight
|
||||
{
|
||||
DistL = 0,
|
||||
DistR = 1,
|
||||
WrapText = 2,
|
||||
WrapPolygon = 3,
|
||||
DistLEmu = 4,
|
||||
DistREmu = 5
|
||||
WrapPolygon = 3
|
||||
};}
|
||||
namespace c_oSerWrapTopBottom{enum c_oSerWrapTopBottom
|
||||
{
|
||||
DistT = 0,
|
||||
DistB = 1,
|
||||
EffectExtent = 2,
|
||||
DistTEmu = 3,
|
||||
DistBEmu = 4
|
||||
EffectExtent = 2
|
||||
};}
|
||||
namespace c_oSerWrapPolygon{enum c_oSerWrapPolygon
|
||||
{
|
||||
@ -697,9 +670,7 @@ extern int g_nCurFormatVersion;
|
||||
namespace c_oSerPoint2D{enum c_oSerPoint2D
|
||||
{
|
||||
X = 0,
|
||||
Y = 1,
|
||||
XEmu = 2,
|
||||
YEmu = 3
|
||||
Y = 1
|
||||
};}
|
||||
namespace c_oSerBorderType{enum c_oSerBorderType
|
||||
{
|
||||
@ -707,9 +678,7 @@ extern int g_nCurFormatVersion;
|
||||
Space = 1,
|
||||
Size = 2,
|
||||
Value = 3,
|
||||
ColorTheme = 4,
|
||||
SpacePoint = 5,
|
||||
Size8Point = 6
|
||||
ColorTheme = 4
|
||||
};}
|
||||
namespace c_oSerShdType{enum c_oSerShdType
|
||||
{
|
||||
@ -722,11 +691,7 @@ extern int g_nCurFormatVersion;
|
||||
left = 0,
|
||||
top = 1,
|
||||
right = 2,
|
||||
bottom = 3,
|
||||
leftTwips = 4,
|
||||
topTwips = 5,
|
||||
rightTwips = 6,
|
||||
bottomTwips = 7
|
||||
bottom = 3
|
||||
};}
|
||||
namespace c_oSerMarginsType{enum c_oSerMarginsType
|
||||
{
|
||||
@ -760,9 +725,7 @@ extern int g_nCurFormatVersion;
|
||||
{
|
||||
W = 0,
|
||||
H = 1,
|
||||
Orientation = 2,
|
||||
WTwips = 3,
|
||||
HTwips = 4
|
||||
Orientation = 2
|
||||
};}
|
||||
namespace c_oSer_pgMarType{enum c_oSer_pgMarType
|
||||
{
|
||||
@ -771,13 +734,7 @@ extern int g_nCurFormatVersion;
|
||||
Right = 2,
|
||||
Bottom = 3,
|
||||
Header = 4,
|
||||
Footer = 5,
|
||||
LeftTwips = 6,
|
||||
TopTwips = 7,
|
||||
RightTwips = 8,
|
||||
BottomTwips = 9,
|
||||
HeaderTwips = 10,
|
||||
FooterTwips = 11
|
||||
Footer = 5
|
||||
};}
|
||||
namespace c_oSer_ColorType{enum c_oSer_ColorType
|
||||
{
|
||||
@ -808,8 +765,7 @@ extern int g_nCurFormatVersion;
|
||||
EndnotePr = 5,
|
||||
SdtGlobalColor = 6,
|
||||
SdtGlobalShowHighlight = 7,
|
||||
Compat = 8,
|
||||
DefaultTabStopTwips = 9
|
||||
Compat = 8
|
||||
};}
|
||||
namespace c_oSer_MathPrType{enum c_oSer_SettingsType
|
||||
{
|
||||
@ -904,8 +860,7 @@ extern int g_nCurFormatVersion;
|
||||
namespace c_oSer_OMathBottomNodesValType{enum c_oSer_OMathBottomNodesValType
|
||||
{
|
||||
Val = 0,
|
||||
AlnAt = 1,
|
||||
ValTwips = 2
|
||||
AlnAt = 1
|
||||
};}
|
||||
namespace c_oSer_OMathContentType{enum c_oSer_OMathContentType
|
||||
{
|
||||
|
||||
@ -36,8 +36,6 @@
|
||||
#include "../DocWrapper/FontProcessor.h"
|
||||
#include "../../Common/Base64.h"
|
||||
#include "../../ASCOfficePPTXFile/Editor/FontCutter.h"
|
||||
#include "../../ASCOfficePPTXFile/PPTXFormat/App.h"
|
||||
#include "../../ASCOfficePPTXFile/PPTXFormat/Core.h"
|
||||
#include "../../XlsxSerializerCom/Reader/BinaryWriter.h"
|
||||
#include "BinEquationWriter.h"
|
||||
|
||||
@ -150,15 +148,15 @@ namespace BinDocxRW
|
||||
WriteThemeColor(c_oSerBorderType::ColorTheme, border.m_oColor, border.m_oThemeColor, border.m_oThemeTint, border.m_oThemeShade);
|
||||
if(border.m_oSpace.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerBorderType::SpacePoint);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(border.m_oSpace->GetValue());
|
||||
m_oStream.WriteBYTE(c_oSerBorderType::Space);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(border.m_oSpace->ToMM());
|
||||
}
|
||||
if(border.m_oSz.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerBorderType::Size8Point);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(border.m_oSz->GetValue());
|
||||
m_oStream.WriteBYTE(c_oSerBorderType::Size);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(border.m_oSz->ToMM());
|
||||
}
|
||||
//Val
|
||||
m_oStream.WriteBYTE(c_oSerBorderType::Value);
|
||||
@ -317,51 +315,85 @@ namespace BinDocxRW
|
||||
void WriteShd(const ComplexTypes::Word::CShading& Shd)
|
||||
{
|
||||
//Type
|
||||
if (false != Shd.m_oVal.IsInit())
|
||||
if(false != Shd.m_oVal.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerShdType::Value);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Byte);
|
||||
m_oStream.WriteBYTE(Shd.m_oVal.get().GetValue()); //Misalignment-footer.doc
|
||||
|
||||
switch(Shd.m_oVal.get().GetValue())
|
||||
{
|
||||
case SimpleTypes::shdNil: m_oStream.WriteBYTE(shd_Nil);break;
|
||||
default: m_oStream.WriteBYTE(shd_Clear);break;
|
||||
}
|
||||
}
|
||||
//Value
|
||||
if (false != Shd.m_oFill.IsInit())
|
||||
if(false != Shd.m_oFill.IsInit())
|
||||
WriteColor(c_oSerShdType::Color, Shd.m_oFill.get());
|
||||
else if (false != Shd.m_oColor.IsInit())
|
||||
WriteColor(c_oSerShdType::Color, Shd.m_oColor.get());
|
||||
|
||||
WriteThemeColor(c_oSerShdType::ColorTheme, Shd.m_oFill, Shd.m_oThemeFill, Shd.m_oThemeFillTint, Shd.m_oThemeFillShade);
|
||||
}
|
||||
void WriteDistance(const NSCommon::nullable<SimpleTypes::CWrapDistance<>>& m_oDistL,
|
||||
const NSCommon::nullable<SimpleTypes::CWrapDistance<>>& m_oDistT,
|
||||
const NSCommon::nullable<SimpleTypes::CWrapDistance<>>& m_oDistR,
|
||||
const NSCommon::nullable<SimpleTypes::CWrapDistance<>>& m_oDistB)
|
||||
{
|
||||
//left
|
||||
if(false != m_oDistL.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::left);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(m_oDistL.get().ToMM());
|
||||
}
|
||||
//top
|
||||
if(false != m_oDistT.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::top);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(m_oDistT.get().ToMM());
|
||||
}
|
||||
//Right
|
||||
if(false != m_oDistR.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::right);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(m_oDistR.get().ToMM());
|
||||
}
|
||||
//bottom
|
||||
if(false != m_oDistB.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::bottom);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(m_oDistB.get().ToMM());
|
||||
}
|
||||
}
|
||||
void WritePaddings(const nullable<SimpleTypes::CTwipsMeasure>& left, const nullable<SimpleTypes::CTwipsMeasure>& top,
|
||||
const nullable<SimpleTypes::CTwipsMeasure>& right, const nullable<SimpleTypes::CTwipsMeasure>& bottom)
|
||||
{
|
||||
//left
|
||||
if(left.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::leftTwips);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(left->ToTwips());
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::left);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(left.get().ToMm());
|
||||
}
|
||||
//top
|
||||
if(top.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::topTwips);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(top->ToTwips());
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::top);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(top.get().ToMm());
|
||||
}
|
||||
//Right
|
||||
if(right.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::rightTwips);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(right->ToTwips());
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::right);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(right.get().ToMm());
|
||||
}
|
||||
//bottom
|
||||
if(bottom.IsInit())
|
||||
{
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::bottomTwips);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oStream.WriteLONG(bottom->ToTwips());
|
||||
m_oStream.WriteBYTE(c_oSerPaddingType::bottom);
|
||||
m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oStream.WriteDouble(bottom.get().ToMm());
|
||||
}
|
||||
}
|
||||
void WriteFont(std::wstring& sFontName, BYTE bType, DocWrapper::FontProcessor& m_oFontProcessor)
|
||||
@ -669,9 +701,9 @@ namespace BinDocxRW
|
||||
//Spacing
|
||||
if(false != rPr->m_oSpacing.IsInit() && false != rPr->m_oSpacing->m_oVal.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rPrType::SpacingTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(rPr->m_oSpacing->m_oVal->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rPrType::Spacing);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(rPr->m_oSpacing->m_oVal->ToMm());
|
||||
}
|
||||
//DStrikeout
|
||||
if(false != rPr->m_oDStrike.IsInit())
|
||||
@ -697,9 +729,9 @@ namespace BinDocxRW
|
||||
//Position
|
||||
if(false != rPr->m_oPosition.IsInit() && false != rPr->m_oPosition->m_oVal.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rPrType::PositionHps);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(rPr->m_oPosition->m_oVal->ToHps());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rPrType::Position);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(rPr->m_oPosition->m_oVal->ToMm());
|
||||
}
|
||||
//BoldCs
|
||||
if(rPr->m_oBoldCs.IsInit())
|
||||
@ -1034,29 +1066,29 @@ namespace BinDocxRW
|
||||
//Left
|
||||
if(false != Ind.m_oStart.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_LeftTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Ind.m_oStart.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_Left);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Ind.m_oStart.get().ToMm());
|
||||
}
|
||||
//Right
|
||||
if(false != Ind.m_oEnd.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_RightTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Ind.m_oEnd.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_Right);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Ind.m_oEnd.get().ToMm());
|
||||
}
|
||||
//FirstLine
|
||||
if(false != Ind.m_oFirstLine.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_FirstLineTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Ind.m_oFirstLine.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_FirstLine);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Ind.m_oFirstLine.get().ToMm());
|
||||
}
|
||||
else if(false != Ind.m_oHanging.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_FirstLineTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG( -1 * Ind.m_oHanging.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Ind_FirstLine);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble( -1 * Ind.m_oHanging.get().ToMm());
|
||||
}
|
||||
}
|
||||
void WriteSpacing(const ComplexTypes::Word::CSpacing& Spacing)
|
||||
@ -1069,9 +1101,24 @@ namespace BinDocxRW
|
||||
//Line
|
||||
if(false != Spacing.m_oLine.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_LineTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Spacing.m_oLine->ToTwips());
|
||||
const SimpleTypes::CSignedTwipsMeasure& oLine = Spacing.m_oLine.get();
|
||||
double dLineMm = oLine.ToMm();
|
||||
if(dLineMm < 0)
|
||||
{
|
||||
dLineMm = -dLineMm;
|
||||
eLineSpacingRule = SimpleTypes::linespacingruleExact;
|
||||
}
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_Line);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
if(SimpleTypes::linespacingruleAuto == eLineSpacingRule)
|
||||
{
|
||||
SimpleTypes::CSignedTwipsMeasure oTmp;oTmp.FromPoints(12);//240 twips
|
||||
m_oBcw.m_oStream.WriteDouble(dLineMm / oTmp.ToMm());
|
||||
}
|
||||
else
|
||||
{
|
||||
m_oBcw.m_oStream.WriteDouble(dLineMm);
|
||||
}
|
||||
//Write LineRule
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_LineRule);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Byte);
|
||||
@ -1091,9 +1138,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(false != Spacing.m_oBefore.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_BeforeTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Spacing.m_oBefore.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_Before);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Spacing.m_oBefore.get().ToMm());
|
||||
}
|
||||
//After
|
||||
if(Spacing.m_oAfterAutospacing.IsInit())
|
||||
@ -1104,9 +1151,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(false != Spacing.m_oAfter.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_AfterTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(Spacing.m_oAfter.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Spacing_After);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Spacing.m_oAfter.get().ToMm());
|
||||
}
|
||||
}
|
||||
void WriteTabs(const OOX::Logic::CTabs& Tab, const nullable<ComplexTypes::Word::CInd>& oInd)
|
||||
@ -1150,9 +1197,9 @@ namespace BinDocxRW
|
||||
//pos
|
||||
if(false != TabItem.m_oPos.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Tab_Item_PosTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(TabItem.m_oPos.get().ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_pPrType::Tab_Item_Pos);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(TabItem.m_oPos.get().ToMm());
|
||||
}
|
||||
if(false != TabItem.m_oLeader.IsInit())
|
||||
{
|
||||
@ -1378,78 +1425,93 @@ namespace BinDocxRW
|
||||
}
|
||||
void WritePageSize(OOX::Logic::CSectionProperty* pSectPr)
|
||||
{
|
||||
double W = Page_Width;
|
||||
double H = Page_Height;
|
||||
BYTE Orientation = orientation_Portrait;
|
||||
if(NULL != pSectPr && pSectPr->m_oPgSz.IsInit())
|
||||
{
|
||||
const ComplexTypes::Word::CPageSz& pSz = pSectPr->m_oPgSz.get();
|
||||
if(pSz.m_oW.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::WTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pSz.m_oW->ToTwips());
|
||||
}
|
||||
W = pSz.m_oW.get().ToMm();
|
||||
if(pSz.m_oH.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::HTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pSz.m_oH->ToTwips());
|
||||
}
|
||||
H = pSz.m_oH.get().ToMm();
|
||||
if(pSz.m_oOrient.IsInit())
|
||||
{
|
||||
BYTE Orientation = orientation_Portrait;
|
||||
switch(pSz.m_oOrient.get().GetValue())
|
||||
{
|
||||
case SimpleTypes::pageorientPortrait: Orientation = orientation_Portrait;break;
|
||||
case SimpleTypes::pageorientLandscape: Orientation = orientation_Landscape;break;
|
||||
default: break;
|
||||
}
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::Orientation);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Byte);
|
||||
m_oBcw.m_oStream.WriteBYTE(Orientation);
|
||||
}
|
||||
}
|
||||
//W
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::W);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(W);
|
||||
//H
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::H);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(H);
|
||||
//Orientation
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgSzType::Orientation);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Byte);
|
||||
m_oBcw.m_oStream.WriteBYTE(Orientation);
|
||||
}
|
||||
void WritePageMargin(OOX::Logic::CSectionProperty* pSectPr)
|
||||
{
|
||||
double H = Page_Height;
|
||||
double L = X_Left_Margin;
|
||||
double T = Y_Top_Margin;
|
||||
double R = X_Right_Margin;
|
||||
double B = Y_Bottom_Margin;
|
||||
double Header = Y_Default_Header;
|
||||
double Footer = Y_Default_Footer;
|
||||
|
||||
if(NULL != pSectPr && pSectPr->m_oPgSz.IsInit() && pSectPr->m_oPgMar.IsInit())
|
||||
{
|
||||
const ComplexTypes::Word::CPageSz& pSz = pSectPr->m_oPgSz.get();
|
||||
if(pSz.m_oH.IsInit())
|
||||
H = pSz.m_oH.get().ToMm();
|
||||
|
||||
const ComplexTypes::Word::CPageMar& pMar = pSectPr->m_oPgMar.get();
|
||||
if(pMar.m_oLeft.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::LeftTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oLeft->ToTwips());
|
||||
}
|
||||
L = pMar.m_oLeft.get().ToMm();
|
||||
if(pMar.m_oTop.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::TopTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oTop->ToTwips());
|
||||
}
|
||||
T = pMar.m_oTop.get().ToMm();
|
||||
if(pMar.m_oRight.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::RightTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oRight->ToTwips());
|
||||
}
|
||||
R = pMar.m_oRight.get().ToMm();
|
||||
if(pMar.m_oBottom.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::BottomTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oBottom->ToTwips());
|
||||
}
|
||||
B = pMar.m_oBottom.get().ToMm();
|
||||
if(pMar.m_oHeader.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::HeaderTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oHeader->ToTwips());
|
||||
}
|
||||
Header = pMar.m_oHeader.get().ToMm();
|
||||
if(pMar.m_oFooter.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::FooterTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pMar.m_oFooter->ToTwips());
|
||||
}
|
||||
}
|
||||
Footer = pMar.m_oFooter.get().ToMm();
|
||||
}
|
||||
//Left
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Left);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(L);
|
||||
//Top
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Top);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(T);
|
||||
//Right
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Right);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(R);
|
||||
//Bottom
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Bottom);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(B);
|
||||
//Header
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Header);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Header);
|
||||
//Footer
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_pgMarType::Footer);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(Footer);
|
||||
}
|
||||
void WriteHeaderFooter(OOX::Logic::CSectionProperty* pSectPr, std::vector<ComplexTypes::Word::CHdrFtrRef*>& aRefs, bool bHdr)
|
||||
{
|
||||
@ -1754,8 +1816,11 @@ namespace BinDocxRW
|
||||
if(tblPr.m_oTblInd->m_oW.IsInit() && false == tblPr.m_oTblInd->m_oW->IsPercent() &&
|
||||
tblPr.m_oTblInd->m_oType.IsInit() && SimpleTypes::tblwidthDxa == tblPr.m_oTblInd->m_oType->GetValue())
|
||||
{
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerProp_tblPrType::TableIndTwips);
|
||||
m_oBcw.m_oStream.WriteLONG(tblPr.m_oTblInd->m_oW->GetValue());
|
||||
SimpleTypes::CPoint oPoint;
|
||||
oPoint.FromTwips(tblPr.m_oTblInd->m_oW->GetValue());
|
||||
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerProp_tblPrType::TableInd);
|
||||
m_oBcw.m_oStream.WriteDouble(oPoint.ToMm());
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
}
|
||||
}
|
||||
@ -1821,8 +1886,11 @@ namespace BinDocxRW
|
||||
if(cs.m_oW.IsInit() && false == cs.m_oW->IsPercent() &&
|
||||
cs.m_oType.IsInit() && SimpleTypes::tblwidthDxa == cs.m_oType->GetValue())
|
||||
{
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerProp_tblPrType::TableCellSpacingTwips);
|
||||
m_oBcw.m_oStream.WriteLONG(cs.m_oW->GetValue());
|
||||
SimpleTypes::CPoint oPoint;
|
||||
oPoint.FromTwips(cs.m_oW->GetValue());
|
||||
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerProp_tblPrType::TableCellSpacing);
|
||||
m_oBcw.m_oStream.WriteDouble(oPoint.ToMm() * 2);//Умножаем на 2 из-за разного понимания cellSpacing
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
}
|
||||
}
|
||||
@ -1880,9 +1948,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(pr.m_oTblpX.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_tblpPrType2::TblpXTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pr.m_oTblpX->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_tblpPrType2::TblpX);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pr.m_oTblpX->ToMm());
|
||||
}
|
||||
if(pr.m_oTblpXSpec.IsInit())
|
||||
{
|
||||
@ -1898,9 +1966,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(pr.m_oTblpY.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_tblpPrType2::TblpYTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pr.m_oTblpY->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_tblpPrType2::TblpY);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pr.m_oTblpY->ToMm());
|
||||
}
|
||||
if(pr.m_oTblpYSpec.IsInit())
|
||||
{
|
||||
@ -1967,9 +2035,12 @@ namespace BinDocxRW
|
||||
if(cs.m_oW.IsInit() && false == cs.m_oW->IsPercent() &&
|
||||
cs.m_oType.IsInit() && SimpleTypes::tblwidthDxa == cs.m_oType->GetValue())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rowPrType::TableCellSpacingTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(cs.m_oW->GetValue());
|
||||
SimpleTypes::CPoint oPoint;
|
||||
oPoint.FromTwips(cs.m_oW->GetValue());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rowPrType::TableCellSpacing);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oPoint.ToMm() * 2);//Умножаем на 2 из-за разного понимания cellSpacing
|
||||
}
|
||||
}
|
||||
//Height
|
||||
@ -2062,9 +2133,9 @@ namespace BinDocxRW
|
||||
|
||||
|
||||
//Value
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rowPrType::Height_ValueTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(rowHeight.m_oVal->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerProp_rowPrType::Height_Value);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(rowHeight.m_oVal->ToMm());
|
||||
}
|
||||
}
|
||||
void WriteW(int nType, const ComplexTypes::Word::CTblWidth& tableW, bool bWrite2 = false)
|
||||
@ -6070,28 +6141,27 @@ namespace BinDocxRW
|
||||
}
|
||||
if(pAnchor.m_oDistL.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistLEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)pAnchor.m_oDistL->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistL);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pAnchor.m_oDistL->ToMM());
|
||||
}
|
||||
if(pAnchor.m_oDistT.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistTEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)pAnchor.m_oDistT->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistT);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pAnchor.m_oDistT->ToMM());
|
||||
}
|
||||
if(pAnchor.m_oDistR.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistREmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)pAnchor.m_oDistR->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistR);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pAnchor.m_oDistR->ToMM());
|
||||
}
|
||||
if(pAnchor.m_oDistB.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistBEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)pAnchor.m_oDistB->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerImageType2::DistB);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pAnchor.m_oDistB->ToMM());
|
||||
}
|
||||
if(pAnchor.m_oHidden.IsInit())
|
||||
{
|
||||
@ -6310,39 +6380,34 @@ namespace BinDocxRW
|
||||
}
|
||||
void WriteEffectExtent(const OOX::Drawing::CEffectExtent& oEffectExtent)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
//document is corrupted if the value is greater INT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::LeftEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oEffectExtent.m_oL.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::Left);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oEffectExtent.m_oL.ToMm());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::TopEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oEffectExtent.m_oT.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::Top);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oEffectExtent.m_oT.ToMm());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::RightEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oEffectExtent.m_oR.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::Right);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oEffectExtent.m_oR.ToMm());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::BottomEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oEffectExtent.m_oB.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerEffectExtent::Bottom);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oEffectExtent.m_oB.ToMm());
|
||||
}
|
||||
void WriteExtent(const ComplexTypes::Drawing::CPositiveSize2D& oExtent)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerExtent::CxEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oExtent.m_oCx.GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerExtent::Cx);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oExtent.m_oCx.ToMM());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerExtent::CyEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oExtent.m_oCy.GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerExtent::Cy);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oExtent.m_oCy.ToMM());
|
||||
}
|
||||
void WritePositionH(const OOX::Drawing::CPosH& oPosH)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
if(oPosH.m_oRelativeFrom.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::RelativeFrom);
|
||||
@ -6357,10 +6422,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(oPosH.m_oPosOffset.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater INT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::PosOffsetEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oPosH.m_oPosOffset->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::PosOffset);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oPosH.m_oPosOffset->ToMM());
|
||||
}
|
||||
if(oPosH.m_oPctOffset.IsInit())
|
||||
{
|
||||
@ -6371,7 +6435,6 @@ namespace BinDocxRW
|
||||
}
|
||||
void WritePositionV(const OOX::Drawing::CPosV& oPosV)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
if(oPosV.m_oRelativeFrom.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::RelativeFrom);
|
||||
@ -6386,9 +6449,9 @@ namespace BinDocxRW
|
||||
}
|
||||
if(oPosV.m_oPosOffset.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::PosOffsetEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oPosV.m_oPosOffset->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPosHV::PosOffset);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oPosV.m_oPosOffset->ToMM());
|
||||
}
|
||||
if(oPosV.m_oPctOffset.IsInit())
|
||||
{
|
||||
@ -6429,43 +6492,40 @@ namespace BinDocxRW
|
||||
}
|
||||
void WriteSimplePos(const ComplexTypes::Drawing::CPoint2D& oSimplePos)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
//document is corrupted if the value is greater INT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerSimplePos::XEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oSimplePos.m_oX.GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerSimplePos::X);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oSimplePos.m_oX.ToMm());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerSimplePos::YEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oSimplePos.m_oY.GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerSimplePos::Y);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oSimplePos.m_oY.ToMm());
|
||||
}
|
||||
void WriteWrapSquare(const OOX::Drawing::CWrapSquare& oWrapSquare)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
if(oWrapSquare.m_oDistL.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistLEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapSquare.m_oDistL->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistL);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapSquare.m_oDistL->ToMM());
|
||||
}
|
||||
if(oWrapSquare.m_oDistT.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistTEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapSquare.m_oDistT->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistT);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapSquare.m_oDistT->ToMM());
|
||||
}
|
||||
if(oWrapSquare.m_oDistR.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistREmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapSquare.m_oDistR->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistR);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapSquare.m_oDistR->ToMM());
|
||||
}
|
||||
if(oWrapSquare.m_oDistB.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistBEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapSquare.m_oDistB->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapSquare::DistB);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapSquare.m_oDistB->ToMM());
|
||||
}
|
||||
if(oWrapSquare.m_oWrapText.IsInit())
|
||||
{
|
||||
@ -6488,16 +6548,15 @@ namespace BinDocxRW
|
||||
int nCurPos = 0;
|
||||
if(oWrapThrough.m_oDistL.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistLEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapThrough.m_oDistL->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistL);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapThrough.m_oDistL->ToMM());
|
||||
}
|
||||
if(oWrapThrough.m_oDistR.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistREmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapThrough.m_oDistR->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistR);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapThrough.m_oDistR->ToMM());
|
||||
}
|
||||
if(oWrapThrough.m_oWrapText.IsInit())
|
||||
{
|
||||
@ -6520,16 +6579,15 @@ namespace BinDocxRW
|
||||
int nCurPos = 0;
|
||||
if(oWrapTight.m_oDistL.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistLEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapTight.m_oDistL->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistL);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapTight.m_oDistL->ToMM());
|
||||
}
|
||||
if(oWrapTight.m_oDistR.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistREmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapTight.m_oDistR->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapThroughTight::DistR);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapTight.m_oDistR->ToMM());
|
||||
}
|
||||
if(oWrapTight.m_oWrapText.IsInit())
|
||||
{
|
||||
@ -6552,23 +6610,23 @@ namespace BinDocxRW
|
||||
int nCurPos = 0;
|
||||
if(oWrapTopBottom.m_oDistT.IsInit())
|
||||
{
|
||||
//document is corrupted if the value is greater UINT32
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapTopBottom::DistTEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapTopBottom.m_oDistT->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapTopBottom::DistT);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapTopBottom.m_oDistT->ToMM());
|
||||
}
|
||||
if(oWrapTopBottom.m_oDistB.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapTopBottom::DistBEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteULONG((_UINT32)oWrapTopBottom.m_oDistB->GetValue());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapTopBottom::DistB);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oWrapTopBottom.m_oDistB->ToMM());
|
||||
}
|
||||
if(oWrapTopBottom.m_oEffectExtent.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapTopBottom::EffectExtent);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Variable);
|
||||
|
||||
nCurPos = m_oBcw.WriteItemWithLengthStart();
|
||||
WriteEffectExtent(oWrapTopBottom.m_oEffectExtent.get());
|
||||
WriteEffectExtent(oWrapTopBottom.m_oEffectExtent.get());
|
||||
m_oBcw.WriteItemWithLengthEnd(nCurPos);
|
||||
}
|
||||
}
|
||||
@ -6585,8 +6643,9 @@ namespace BinDocxRW
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerWrapPolygon::Start);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Variable);
|
||||
|
||||
nCurPos = m_oBcw.WriteItemWithLengthStart();
|
||||
WritePoint2D(oWrapPath.m_oStart.get());
|
||||
WritePoint2D(oWrapPath.m_oStart.get());
|
||||
m_oBcw.WriteItemWithLengthEnd(nCurPos);
|
||||
}
|
||||
if(oWrapPath.m_arrLineTo.size() > 0)
|
||||
@ -6613,15 +6672,14 @@ namespace BinDocxRW
|
||||
}
|
||||
void WritePoint2D(const ComplexTypes::Drawing::CPoint2D& oPoint2D)
|
||||
{
|
||||
//document is corrupted if the value is greater INT32
|
||||
int nCurPos = 0;
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPoint2D::XEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oPoint2D.m_oX.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPoint2D::X);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oPoint2D.m_oX.ToMm());
|
||||
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPoint2D::YEmu);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG((_INT32)oPoint2D.m_oY.ToEmu());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPoint2D::Y);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(oPoint2D.m_oY.ToMm());
|
||||
}
|
||||
void WriteDocTable(OOX::Logic::CTbl* tbl)
|
||||
{
|
||||
@ -6822,9 +6880,9 @@ namespace BinDocxRW
|
||||
const ComplexTypes::Word::CTblGridCol& item = *grid.m_arrGridCol[i];
|
||||
if(item.m_oW.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerDocTableType::tblGrid_ItemTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(item.m_oW->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerDocTableType::tblGrid_Item);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(item.m_oW->ToMm());
|
||||
}
|
||||
}
|
||||
if(grid.m_oTblGridChange.IsInit())
|
||||
@ -7499,8 +7557,8 @@ namespace BinDocxRW
|
||||
}
|
||||
if(oSettings.m_oDefaultTabStop.IsInit() && oSettings.m_oDefaultTabStop->m_oVal.IsInit())
|
||||
{
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSer_SettingsType::DefaultTabStopTwips);
|
||||
m_oBcw.m_oStream.WriteLONG(oSettings.m_oDefaultTabStop->m_oVal->ToTwips());
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSer_SettingsType::DefaultTabStop);
|
||||
m_oBcw.m_oStream.WriteDouble(oSettings.m_oDefaultTabStop->m_oVal->ToMm());
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
}
|
||||
if(oSettings.m_oMathPr.IsInit())
|
||||
@ -7617,9 +7675,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::InterSp);
|
||||
if (pInterSp->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pInterSp->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pInterSp->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7643,9 +7701,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::IntraSp);
|
||||
if (pIntraSp->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pIntraSp->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pIntraSp->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7656,9 +7714,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::LMargin);
|
||||
if (pLMargin->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pLMargin->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pLMargin->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7695,9 +7753,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::PostSp);
|
||||
if (pPostSp->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pPostSp->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pPostSp->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7708,9 +7766,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::PreSp);
|
||||
if (pPreSp->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pPreSp->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pPreSp->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7721,9 +7779,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::RMargin);
|
||||
if (pRMargin->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pRMargin->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pRMargin->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7747,9 +7805,9 @@ namespace BinDocxRW
|
||||
int nCurPos = m_oBcw.WriteItemStart(c_oSer_MathPrType::WrapIndent);
|
||||
if (pWrapIndent->m_val.IsInit())
|
||||
{
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::ValTwips);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Long);
|
||||
m_oBcw.m_oStream.WriteLONG(pWrapIndent->m_val->ToTwips());
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSer_OMathBottomNodesValType::Val);
|
||||
m_oBcw.m_oStream.WriteBYTE(c_oSerPropLenType::Double);
|
||||
m_oBcw.m_oStream.WriteDouble(pWrapIndent->m_val->ToMm());
|
||||
}
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
break;
|
||||
@ -7963,6 +8021,38 @@ namespace BinDocxRW
|
||||
m_oBcw.WriteItemEnd(nCurPos);
|
||||
}
|
||||
};
|
||||
class BinaryAppTableWriter
|
||||
{
|
||||
BinaryCommonWriter m_oBcw;
|
||||
ParamsWriter& m_oParamsWriter;
|
||||
public:
|
||||
BinaryAppTableWriter(ParamsWriter& oParamsWriter):
|
||||
m_oBcw(oParamsWriter),m_oParamsWriter(oParamsWriter)
|
||||
{
|
||||
}
|
||||
void Write(OOX::CApp& oApp)
|
||||
{
|
||||
int nStart = m_oBcw.WriteItemWithLengthStart();
|
||||
WriteProperties(oApp);
|
||||
m_oBcw.WriteItemWithLengthEnd(nStart);
|
||||
}
|
||||
void WriteProperties(OOX::CApp& oApp)
|
||||
{
|
||||
int nCurPos = 0;
|
||||
if (oApp.m_sApplication.IsInit())
|
||||
{
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerApp::Application);
|
||||
m_oBcw.m_oStream.WriteStringW3(oApp.m_sApplication.get());
|
||||
m_oBcw.WriteItemWithLengthEnd(nCurPos);
|
||||
}
|
||||
if (oApp.m_sAppVersion.IsInit())
|
||||
{
|
||||
nCurPos = m_oBcw.WriteItemStart(c_oSerApp::AppVersion);
|
||||
m_oBcw.m_oStream.WriteStringW3(oApp.m_sAppVersion.get());
|
||||
m_oBcw.WriteItemWithLengthEnd(nCurPos);
|
||||
}
|
||||
}
|
||||
};
|
||||
class BinaryFileWriter
|
||||
{
|
||||
BinaryCommonWriter m_oBcw;
|
||||
@ -8118,15 +8208,9 @@ namespace BinDocxRW
|
||||
//Write App
|
||||
if(NULL != oDocx.m_pApp)
|
||||
{
|
||||
BinDocxRW::BinaryAppTableWriter oBinaryAppWriter(m_oParamsWriter);
|
||||
nCurPos = this->WriteTableStart(BinDocxRW::c_oSerTableTypes::App);
|
||||
oDocx.m_pApp->ToPptxApp()->toPPTY(&oBufferedStream);
|
||||
this->WriteTableEnd(nCurPos);
|
||||
}
|
||||
|
||||
if(NULL != oDocx.m_pCore)
|
||||
{
|
||||
nCurPos = this->WriteTableStart(BinDocxRW::c_oSerTableTypes::Core);
|
||||
oDocx.m_pCore->ToPptxCore()->toPPTY(&oBufferedStream);
|
||||
oBinaryAppWriter.Write(*oDocx.m_pApp);
|
||||
this->WriteTableEnd(nCurPos);
|
||||
}
|
||||
|
||||
|
||||
@ -53,8 +53,6 @@
|
||||
69F181AF1C77274E00B2952B /* FileDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = 69F181AD1C77274E00B2952B /* FileDownloader.h */; };
|
||||
8A404FD3208A01AF00F2D5CF /* FileDownloader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A404FD2208A01AF00F2D5CF /* FileDownloader.cpp */; };
|
||||
8A404FD5208A01CE00F2D5CF /* FileDownloader_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A404FD4208A01CE00F2D5CF /* FileDownloader_private.h */; };
|
||||
8AB24BFD213004E400E80DDD /* CustormXmlWriter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8AB24BFB213004E300E80DDD /* CustormXmlWriter.cpp */; };
|
||||
8AB24BFE213004E400E80DDD /* CustormXmlWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8AB24BFC213004E300E80DDD /* CustormXmlWriter.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
@ -105,8 +103,6 @@
|
||||
69F181AD1C77274E00B2952B /* FileDownloader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileDownloader.h; path = ../../../Common/FileDownloader/FileDownloader.h; sourceTree = "<group>"; };
|
||||
8A404FD2208A01AF00F2D5CF /* FileDownloader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = FileDownloader.cpp; path = ../../../Common/FileDownloader/FileDownloader.cpp; sourceTree = "<group>"; };
|
||||
8A404FD4208A01CE00F2D5CF /* FileDownloader_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = FileDownloader_private.h; path = ../../../Common/FileDownloader/FileDownloader_private.h; sourceTree = "<group>"; };
|
||||
8AB24BFB213004E300E80DDD /* CustormXmlWriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CustormXmlWriter.cpp; sourceTree = "<group>"; };
|
||||
8AB24BFC213004E300E80DDD /* CustormXmlWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CustormXmlWriter.h; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@ -153,8 +149,6 @@
|
||||
children = (
|
||||
17E17EEB1AC4544900BEA2EA /* ChartWriter.h */,
|
||||
17E17EEC1AC4544900BEA2EA /* CommentsWriter.h */,
|
||||
8AB24BFB213004E300E80DDD /* CustormXmlWriter.cpp */,
|
||||
8AB24BFC213004E300E80DDD /* CustormXmlWriter.h */,
|
||||
17A765271B0F3DC30046BC0B /* DefaultThemeWriter.h */,
|
||||
17E17EF01AC4544900BEA2EA /* DocumentRelsWriter.h */,
|
||||
17E17EF11AC4544900BEA2EA /* DocumentWriter.h */,
|
||||
@ -298,7 +292,6 @@
|
||||
17C1FEBC1ACC42C4006B99B3 /* DocxSerializer.h in Headers */,
|
||||
17C1FEBD1ACC42C4006B99B3 /* FileWriter.h in Headers */,
|
||||
17C1FEBE1ACC42C4006B99B3 /* CSVWriter.h in Headers */,
|
||||
8AB24BFE213004E400E80DDD /* CustormXmlWriter.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -353,7 +346,6 @@
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8AB24BFD213004E400E80DDD /* CustormXmlWriter.cpp in Sources */,
|
||||
17C1FE961ACC42C4006B99B3 /* Common.cpp in Sources */,
|
||||
17C1FE971ACC42C4006B99B3 /* ChartFromToBinary.cpp in Sources */,
|
||||
17C1FE981ACC42C4006B99B3 /* CSVReader.cpp in Sources */,
|
||||
@ -383,11 +375,18 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
NODOCX,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
USE_ATL_CSTRING,
|
||||
USE_AVSOFFICESTUDIO_XMLUTILS,
|
||||
SOLUTION_ASCOFFICEDOCXFILE2,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_USE_LIBXML2_READER_,
|
||||
LIBXML_READER_ENABLED,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_XCODE,
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
@ -415,11 +414,18 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
NODOCX,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
USE_ATL_CSTRING,
|
||||
USE_AVSOFFICESTUDIO_XMLUTILS,
|
||||
SOLUTION_ASCOFFICEDOCXFILE2,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_USE_LIBXML2_READER_,
|
||||
LIBXML_READER_ENABLED,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_XCODE,
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
|
||||
@ -105,7 +105,7 @@ HRESULT convert_single(std::wstring srcFileName)
|
||||
}
|
||||
_CP_LOG << L"[info] " << srcFileName << std::endl;
|
||||
|
||||
nResult = ConvertODF2OOXml(srcTempPath, dstTempPath, L"C:\\Windows\\Fonts", srcTempPath2, L"", NULL);
|
||||
nResult = ConvertODF2OOXml(srcTempPath, dstTempPath, L"C:\\Windows\\Fonts", srcTempPath2, L"password", NULL);
|
||||
|
||||
if (srcTempPath != srcFileName)
|
||||
{
|
||||
|
||||
@ -235,7 +235,7 @@ namespace formulasconvert {
|
||||
{
|
||||
convert_with_TableName = withTableName;
|
||||
|
||||
boost::wregex complexRef(L"\\[(?:\$)?([^\\.]+?){0,1}\\.(\\${0,1}[\\w^0-9]*\\${0,1}\\d*)(?::(\\${0,1}[^\\.]+?){0,1}\\.(\\${0,1}[\\w^0-9]*\\${0,1}\\d*)){0,1}\\]");
|
||||
boost::wregex complexRef(L"\\[(?:\\$)?([^\\.]+?){0,1}\\.(\\${0,1}[\\w^0-9]*\\${0,1}\\d*)(?::(\\${0,1}[^\\.]+?){0,1}\\.(\\${0,1}[\\w^0-9]*\\${0,1}\\d*)){0,1}\\]");
|
||||
/*
|
||||
[ $ Sheet2 . A1 : ( $ Sheet2)? . B5 ]
|
||||
*/
|
||||
@ -494,7 +494,7 @@ namespace formulasconvert {
|
||||
|
||||
bool isFormula = check_formula(workstr);
|
||||
|
||||
boost::regex_replace(
|
||||
workstr = boost::regex_replace(
|
||||
workstr,
|
||||
boost::wregex(L"('.*?')|(\".*?\")"),
|
||||
&convert_scobci, boost::match_default | boost::format_all);
|
||||
|
||||
@ -108,6 +108,8 @@ static const std::wstring _ooxShapeType[]=
|
||||
L"custGeom",//uses sub-sub type,
|
||||
L"polygon",
|
||||
L"roundRect",
|
||||
L"bentConnector3",
|
||||
L"curvedConnector3"
|
||||
};
|
||||
|
||||
|
||||
@ -243,16 +245,16 @@ void oox_serialize_aLst(std::wostream & strm, const std::vector<odf_reader::_pro
|
||||
{
|
||||
names.push_back(L"adj1");
|
||||
}
|
||||
else if (std::wstring::npos != shapeGeomPreset.find(L"decagon"))
|
||||
{
|
||||
names.push_back(L"vf");
|
||||
}
|
||||
else if (std::wstring::npos != shapeGeomPreset.find(L"heptagon") ||
|
||||
std::wstring::npos != shapeGeomPreset.find(L"pentagon"))
|
||||
{
|
||||
names.push_back(L"hf");
|
||||
names.push_back(L"vf");
|
||||
}
|
||||
//else if (std::wstring::npos != shapeGeomPreset.find(L"decagon"))
|
||||
//{
|
||||
// names.push_back(L"vf");
|
||||
//}
|
||||
//else if (std::wstring::npos != shapeGeomPreset.find(L"heptagon") ||
|
||||
// std::wstring::npos != shapeGeomPreset.find(L"pentagon"))
|
||||
//{
|
||||
// names.push_back(L"hf");
|
||||
// names.push_back(L"vf");
|
||||
//}
|
||||
else if (std::wstring::npos != shapeGeomPreset.find(L"hexagon"))
|
||||
{
|
||||
names.push_back(L"adj");
|
||||
@ -418,7 +420,7 @@ void _oox_drawing::serialize_shape(std::wostream & strm)
|
||||
shapeGeomPreset = L"rect";
|
||||
}
|
||||
}
|
||||
else if (sub_type < 10 && sub_type >= 0)
|
||||
else if (sub_type <= 12 && sub_type >= 0)
|
||||
{
|
||||
shapeGeomPreset = _ooxShapeType[sub_type]; //odf -> oox
|
||||
}
|
||||
|
||||
@ -212,7 +212,7 @@ void pptx_serialize_shape(std::wostream & strm, _pptx_drawing & val)
|
||||
}
|
||||
CP_XML_NODE(L"p:cNvSpPr")//non visual properies (собственно тока 1 там)
|
||||
{
|
||||
if (val.sub_type==1 || val.sub_type==2)CP_XML_ATTR(L"txBox", 1);
|
||||
if (val.sub_type == 1 || val.sub_type == 2)CP_XML_ATTR(L"txBox", 1);
|
||||
CP_XML_NODE(L"a:spLocks")
|
||||
{
|
||||
CP_XML_ATTR(L"noGrp", 1);
|
||||
|
||||
@ -211,13 +211,6 @@ void xlsx_xml_worksheet::write_to(std::wostream & strm)
|
||||
|
||||
CP_XML_STREAM() << impl_->drawing_.str();
|
||||
|
||||
if (!impl_->tableParts_.str().empty())
|
||||
{
|
||||
CP_XML_NODE(L"tableParts")
|
||||
{
|
||||
CP_XML_STREAM() << impl_->tableParts_.str();
|
||||
}
|
||||
}
|
||||
if (!impl_->commentsId_.empty())
|
||||
{
|
||||
CP_XML_NODE(L"legacyDrawing")
|
||||
@ -239,6 +232,13 @@ void xlsx_xml_worksheet::write_to(std::wostream & strm)
|
||||
CP_XML_STREAM() << impl_->controls_.str();
|
||||
}
|
||||
}
|
||||
if (!impl_->tableParts_.str().empty())
|
||||
{
|
||||
CP_XML_NODE(L"tableParts")
|
||||
{
|
||||
CP_XML_STREAM() << impl_->tableParts_.str();
|
||||
}
|
||||
}
|
||||
CP_XML_STREAM() << impl_->picture_background_.str();
|
||||
|
||||
//CP_XML_NODE(L"headerFooter){}
|
||||
|
||||
@ -59,17 +59,24 @@ typedef _CP_PTR(xlsx_data_range_values) xlsx_data_range_values_ptr;
|
||||
class xlsx_data_range_values
|
||||
{
|
||||
public:
|
||||
xlsx_data_range_values(size_t row, size_t col1, size_t col2) : row_header(row), start_column(col1), end_column(col2) {}
|
||||
xlsx_data_range_values(size_t row, size_t col1, size_t col2) : withHeader(false), filter(false), row_header(row), start_column(col1), end_column(col2)
|
||||
{
|
||||
for (size_t i = start_column; i <= end_column; i++)
|
||||
values.push_back(L"");
|
||||
}
|
||||
|
||||
size_t row_header;
|
||||
size_t start_column;
|
||||
size_t end_column;
|
||||
|
||||
bool withHeader;
|
||||
bool filter;
|
||||
|
||||
std::vector<std::wstring> values;
|
||||
|
||||
void set_value(size_t col, size_t row, const std::wstring& value)
|
||||
{
|
||||
while (col - start_column + 1 > values.size())
|
||||
while (col - start_column + 1 >= values.size())
|
||||
values.push_back(L"");
|
||||
|
||||
values[col - start_column] = value;
|
||||
|
||||
@ -119,12 +119,14 @@ void xlsx_table_context::set_database_header (bool val)
|
||||
if (xlsx_data_ranges_.empty()) return;
|
||||
|
||||
xlsx_data_ranges_.back()->withHeader = val;
|
||||
xlsx_data_ranges_values_.back()->withHeader = val;
|
||||
}
|
||||
void xlsx_table_context::set_database_filter (bool val)
|
||||
{
|
||||
if (xlsx_data_ranges_.empty()) return;
|
||||
|
||||
xlsx_data_ranges_.back()->filter = val;
|
||||
xlsx_data_ranges_values_.back()->filter = val;
|
||||
}
|
||||
void xlsx_table_context::end_database_range()
|
||||
{
|
||||
@ -145,7 +147,8 @@ int xlsx_table_context::in_database_range()
|
||||
|
||||
for (size_t i = 0; i < xlsx_data_ranges_values_.size(); i++)
|
||||
{
|
||||
if (xlsx_data_ranges_values_[i]->in_range(col, row))
|
||||
if ((xlsx_data_ranges_values_[i]->withHeader || xlsx_data_ranges_values_[i]->filter)
|
||||
&& xlsx_data_ranges_values_[i]->in_range(col, row))
|
||||
{
|
||||
return (int)i;
|
||||
}
|
||||
@ -317,6 +320,12 @@ void xlsx_table_context::serialize_tableParts(std::wostream & _Wostream, rels &
|
||||
CP_XML_ATTR(L"name", xlsx_data_ranges_[it->second]->table_name);
|
||||
CP_XML_ATTR(L"displayName", xlsx_data_ranges_[it->second]->table_name);
|
||||
CP_XML_ATTR(L"ref", xlsx_data_ranges_[it->second]->ref);
|
||||
|
||||
if (xlsx_data_ranges_[it->second]->withHeader == false &&
|
||||
xlsx_data_ranges_[it->second]->filter == false)
|
||||
CP_XML_ATTR(L"headerRowCount", 0);
|
||||
|
||||
CP_XML_ATTR(L"totalsRowCount", 0);
|
||||
CP_XML_ATTR(L"totalsRowShown", 0);
|
||||
|
||||
xlsx_data_ranges_[it->second]->serialize_autofilter(CP_XML_STREAM());
|
||||
@ -331,8 +340,13 @@ void xlsx_table_context::serialize_tableParts(std::wostream & _Wostream, rels &
|
||||
{
|
||||
CP_XML_NODE(L"tableColumn")
|
||||
{
|
||||
std::wstring column_name = xlsx_data_ranges_values_[it->second]->values[id];
|
||||
if (column_name.empty())
|
||||
{
|
||||
column_name = L"Column_" + std::to_wstring(id + 1);
|
||||
}
|
||||
CP_XML_ATTR(L"id", id + 1);
|
||||
CP_XML_ATTR(L"name", xlsx_data_ranges_values_[it->second]->values[id]);
|
||||
CP_XML_ATTR(L"name", column_name);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1057,7 +1057,7 @@ void process_build_object::visit(table_table_cell& val)
|
||||
if (cell_cash.empty())
|
||||
cell_cash = cell_val;
|
||||
|
||||
object_odf_context::_cell cell_= {object_odf_context_.current_table_column_, object_odf_context_.current_table_row_, cell_cash};
|
||||
object_odf_context::_cell cell_= {(size_t)object_odf_context_.current_table_column_, (size_t)object_odf_context_.current_table_row_, cell_cash};
|
||||
|
||||
object_odf_context_.cash_values.push_back(cell_);
|
||||
|
||||
|
||||
@ -79,8 +79,8 @@ static const _shape_converter _OO_OOX_custom_shapes[]=
|
||||
{L"up-down-arrow-callout" ,L"upDownArrowCallout" ,0 ,0 ,0 },
|
||||
{L"quad-arrow-callout" ,L"quadArrowCallout" ,0 ,0 ,0 },
|
||||
{L"circular-arrow" ,L"circularArrow" ,0 ,0 ,0 },
|
||||
{L"can" ,L"lightningBolt" ,0 ,0 ,0 },
|
||||
{L"lightning" ,L"can" ,0 ,0 ,0 },
|
||||
{L"can" ,L"can" ,0 ,0 ,0 },
|
||||
{L"lightning" ,L"lightningBolt" ,0 ,0 ,0 },
|
||||
{L"heart" ,L"heart" ,0 ,0 ,0 },
|
||||
{L"sun" ,L"sun" ,1 ,46875 ,12500 },
|
||||
{L"moon" ,L"moon" ,0 ,0 ,0 },
|
||||
@ -222,7 +222,6 @@ static const _shape_converter _OO_OOX_custom_shapes[]=
|
||||
{L"concave-star6" ,L"" ,0 ,0 ,0 },
|
||||
{L"signet" ,L"" ,0 ,0 ,0 },
|
||||
{L"doorplate" ,L"" ,0 ,0 ,0 },
|
||||
|
||||
{L"" ,L"round1Rect" ,0 ,0 ,0 },
|
||||
{L"" ,L"round2DiagRect" ,0 ,0 ,0 },
|
||||
{L"" ,L"snip2DiagRect" ,0 ,0 ,0 },
|
||||
|
||||
@ -1038,7 +1038,9 @@ void draw_shape::docx_convert(oox::docx_conversion_context & Context)
|
||||
drawing.sub_type = sub_type_;
|
||||
drawing.additional = additional_;//сюда могут добавиться свойства ...
|
||||
|
||||
if (drawing.sub_type !=5 )//line
|
||||
if (drawing.sub_type != 5 &&
|
||||
drawing.sub_type != 11 &&
|
||||
drawing.sub_type != 12 )//line, connectors
|
||||
{
|
||||
drawing.additional.push_back(_property(L"text-content", Context.get_drawing_context().get_text_stream_shape()));
|
||||
}
|
||||
|
||||
@ -546,9 +546,9 @@ void draw_enhanced_geometry::find_draw_type_oox()
|
||||
if (!draw_type_oox_index_)
|
||||
{
|
||||
int count = sizeof(_OO_OOX_custom_shapes) / sizeof(_shape_converter);
|
||||
int pos = odf_type.find(L"ooxml-");
|
||||
size_t pos = odf_type.find(L"ooxml-");
|
||||
|
||||
if (pos < 0)
|
||||
if (pos == std::wstring::npos)
|
||||
{
|
||||
for (long i = 0; i< count; i++)
|
||||
{
|
||||
@ -562,7 +562,7 @@ void draw_enhanced_geometry::find_draw_type_oox()
|
||||
else
|
||||
{
|
||||
std::wstring oox_type = odf_type.substr(pos + 6);
|
||||
for (long i = 0; i< count; i++)
|
||||
for (long i = 0; i < count; i++)
|
||||
{
|
||||
if (_OO_OOX_custom_shapes[i].oox == oox_type)
|
||||
{
|
||||
@ -572,7 +572,7 @@ void draw_enhanced_geometry::find_draw_type_oox()
|
||||
}
|
||||
}
|
||||
}
|
||||
if ((draw_type_oox_index_) && (*draw_type_oox_index_== 179))//L"textBox"
|
||||
if ((draw_type_oox_index_) && (*draw_type_oox_index_== 96))//L"textBox" "mso-spt24"
|
||||
{
|
||||
sub_type_ = 1;//textBox
|
||||
}
|
||||
@ -649,17 +649,15 @@ void draw_connector::add_attributes( const xml::attributes_wc_ptr & Attributes )
|
||||
draw_line_attlist_.add_attributes(Attributes);
|
||||
draw_shape::add_attributes(Attributes);
|
||||
|
||||
sub_type_ = 5; //коннектор - линия, если ломаная (ниже определяется) - то путь
|
||||
sub_type_ = 10; //коннектор - линия, если ломаная (ниже определяется) - то путь
|
||||
|
||||
}
|
||||
void draw_connector::reset_svg_path()
|
||||
{
|
||||
if (!draw_connector_attlist_.svg_d_)
|
||||
{
|
||||
bad_shape_ = true;
|
||||
}
|
||||
else
|
||||
if (draw_connector_attlist_.svg_d_)
|
||||
{
|
||||
sub_type_ = 8;
|
||||
|
||||
std::vector<::svg_path::_polyline> o_Polyline_pt;
|
||||
std::vector<::svg_path::_polyline> o_Polyline_cm;
|
||||
|
||||
@ -707,7 +705,7 @@ void dr3d_scene::add_attributes( const xml::attributes_wc_ptr & Attributes )
|
||||
{
|
||||
draw_shape::add_attributes(Attributes);
|
||||
|
||||
sub_type_ = 10;
|
||||
sub_type_ = 12;
|
||||
|
||||
}
|
||||
//-------------------------------------------------------------------------------------------
|
||||
|
||||
@ -215,10 +215,18 @@ void draw_path::docx_convert(oox::docx_conversion_context & Context)
|
||||
void draw_connector::docx_convert(oox::docx_conversion_context & Context)
|
||||
{
|
||||
//if (Context.get_drawing_context().get_current_level() >0 )return;
|
||||
|
||||
if (draw_connector_attlist_.draw_type_)
|
||||
{
|
||||
if (*draw_connector_attlist_.draw_type_ == L"curve")
|
||||
{
|
||||
sub_type_ = 11;
|
||||
}
|
||||
}
|
||||
reset_svg_attributes();
|
||||
common_docx_convert(Context);
|
||||
//...
|
||||
reset_svg_path();
|
||||
|
||||
draw_shape::docx_convert(Context);
|
||||
}
|
||||
void draw_polygon::docx_convert(oox::docx_conversion_context & Context)
|
||||
|
||||
@ -298,6 +298,13 @@ void draw_connector::reset_svg_attributes()
|
||||
}
|
||||
void draw_connector::pptx_convert(oox::pptx_conversion_context & Context)
|
||||
{
|
||||
if (draw_connector_attlist_.draw_type_)
|
||||
{
|
||||
if (*draw_connector_attlist_.draw_type_ == L"curve")
|
||||
{
|
||||
sub_type_ = 11;
|
||||
}
|
||||
}
|
||||
reset_svg_attributes();
|
||||
reset_svg_path();
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
|
||||
@ -211,6 +211,15 @@ void draw_path::xlsx_convert(oox::xlsx_conversion_context & Context)
|
||||
|
||||
void draw_connector::xlsx_convert(oox::xlsx_conversion_context & Context)
|
||||
{
|
||||
if (draw_connector_attlist_.draw_type_)
|
||||
{
|
||||
if (*draw_connector_attlist_.draw_type_ == L"curve")
|
||||
{
|
||||
sub_type_ = 11;
|
||||
}
|
||||
}
|
||||
reset_svg_attributes();
|
||||
|
||||
reset_svg_path();
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
Context.get_drawing_context().start_shape(6);
|
||||
|
||||
@ -42,9 +42,9 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeAccentBorderCallout1 = 0,
|
||||
{ L"" , 7}, // shapetypeAccentBorderCallout2,
|
||||
{ L"" , 7}, // shapetypeAccentBorderCallout3,
|
||||
{ L"mso-spt44" , 7}, // shapetypeAccentCallout1,
|
||||
{ L"mso-spt45" , 7}, // shapetypeAccentCallout2,
|
||||
{ L"mso-spt46" , 7}, // shapetypeAccentCallout3,
|
||||
{ L"" , 7}, // shapetypeAccentCallout1,
|
||||
{ L"" , 7}, // shapetypeAccentCallout2,
|
||||
{ L"" , 7}, // shapetypeAccentCallout3,
|
||||
{ L"actionButtonBackPrevious" , 7}, // shapetypeActionButtonBackPrevious, //mso-spt194
|
||||
{ L"mso-spt196" , 7}, // shapetypeActionButtonBeginning,
|
||||
{ L"mso-spt189" , 7}, // shapetypeActionButtonBlank,
|
||||
@ -58,23 +58,23 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"mso-spt197" , 7}, // shapetypeActionButtonReturn,
|
||||
{ L"mso-spt199" , 7}, // shapetypeActionButtonSound,
|
||||
{ L"" , 7}, // shapetypeArc,
|
||||
{ L"mso-spt91" , 7}, // shapetypeBentArrow,
|
||||
{ L"mso-spt33" , 7}, // shapetypeBentConnector2,
|
||||
{ L"mso-spt34" , 7}, // shapetypeBentConnector3,
|
||||
{ L"mso-spt35" , 7}, // shapetypeBentConnector4,
|
||||
{ L"mso-spt36" , 7}, // shapetypeBentConnector5,
|
||||
{ L"" , 7}, // shapetypeBentArrow,
|
||||
{ L"" , 9}, // shapetypeBentConnector2,
|
||||
{ L"" , 9}, // shapetypeBentConnector3,
|
||||
{ L"" , 9}, // shapetypeBentConnector4,
|
||||
{ L"" , 9}, // shapetypeBentConnector5,
|
||||
{ L"" , 7}, // shapetypeBentUpArrow,
|
||||
{ L"quad-bevel" , 7}, // shapetypeBevel,
|
||||
{ L"" , 7}, // shapetypeBevel,
|
||||
{ L"" , 7}, // shapetypeBlockArc,
|
||||
{ L"mso-spt49" , 7}, // shapetypeBorderCallout1,
|
||||
{ L"mso-spt50" , 7}, // shapetypeBorderCallout2,
|
||||
{ L"mso-spt51" , 7}, // shapetypeBorderCallout3,
|
||||
{ L"brace-pair" , 7}, // shapetypeBracePair,
|
||||
{ L"" , 7}, // shapetypeBorderCallout1,
|
||||
{ L"" , 7}, // shapetypeBorderCallout2,
|
||||
{ L"" , 7}, // shapetypeBorderCallout3,
|
||||
{ L"" , 7}, // shapetypeBracePair,
|
||||
{ L"" , 7}, // shapetypeBracketPair,
|
||||
{ L"mso-spt41" , 7}, // shapetypeCallout1,
|
||||
{ L"mso-spt42" , 7}, // shapetypeCallout2,
|
||||
{ L"mso-spt43" , 7}, // shapetypeCallout3,
|
||||
{ L"can" , 7}, // shapetypeCan,
|
||||
{ L"" , 7}, // shapetypeCallout1,
|
||||
{ L"" , 7}, // shapetypeCallout2,
|
||||
{ L"" , 7}, // shapetypeCallout3,
|
||||
{ L"" , 7}, // shapetypeCan,
|
||||
{ L"" , 7}, // shapetypeChartPlus,
|
||||
{ L"" , 7}, // shapetypeChartStar,
|
||||
{ L"" , 7}, // shapetypeChartX,
|
||||
@ -82,18 +82,18 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeChord,
|
||||
{ L"" , 7}, // shapetypeCircularArrow,
|
||||
{ L"cloud" , 7}, // shapetypeCloud,
|
||||
{ L"cloud-callout" , 7}, // shapetypeCloudCallout,
|
||||
{ L"" , 7}, // shapetypeCloudCallout,
|
||||
{ L"" , 7}, // shapetypeCorner,
|
||||
{ L"" , 7}, // shapetypeCornerTabs,
|
||||
{ L"cube" , 7}, // shapetypeCube,
|
||||
{ L"mso-spt37" , 7}, // shapetypeCurvedConnector2,
|
||||
{ L"mso-spt38" , 7}, // shapetypeCurvedConnector3,
|
||||
{ L"mso-spt39" , 7}, // shapetypeCurvedConnector4,
|
||||
{ L"mso-spt40" , 7}, // shapetypeCurvedConnector5,
|
||||
{ L"" , 7}, // shapetypeCube,
|
||||
{ L"" , 10}, // shapetypeCurvedConnector2,
|
||||
{ L"" , 10}, // shapetypeCurvedConnector3,
|
||||
{ L"" , 10}, // shapetypeCurvedConnector4,
|
||||
{ L"" , 10}, // shapetypeCurvedConnector5,
|
||||
{ L"" , 7}, // shapetypeCurvedDownArrow,
|
||||
{ L"" , 7}, // shapetypeCurvedLeftArrow,
|
||||
{ L"" , 7}, // shapetypeCurvedRightArrow,
|
||||
{ L"mso-spt104" , 7}, // shapetypeCurvedUpArrow,
|
||||
{ L"" , 7}, // shapetypeCurvedUpArrow,
|
||||
{ L"" , 7}, // shapetypeDecagon,
|
||||
{ L"" , 7}, // shapetypeDiagStripe,
|
||||
{ L"" , 7}, // shapetypeDiamond,
|
||||
@ -103,8 +103,8 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeDownArrow,
|
||||
{ L"" , 7}, // shapetypeDownArrowCallout,
|
||||
{ L"ellipse" , 3}, // shapetypeEllipse,
|
||||
{ L"mso-spt107" , 7}, // shapetypeEllipseRibbon,
|
||||
{ L"mso-spt108" , 7}, // shapetypeEllipseRibbon2,
|
||||
{ L"" , 7}, // shapetypeEllipseRibbon,
|
||||
{ L"" , 7}, // shapetypeEllipseRibbon2,
|
||||
{ L"flowchart-alternate-process" , 7}, // shapetypeFlowChartAlternateProcess,
|
||||
{ L"flowchart-collate" , 7}, // shapetypeFlowChartCollate,
|
||||
{ L"flowchart-connector" , 7}, // shapetypeFlowChartConnector,
|
||||
@ -134,23 +134,23 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"flowchart-sort" , 7}, // shapetypeFlowChartSort,
|
||||
{ L"flowchart-summing-junction" , 7}, // shapetypeFlowChartSummingJunction,
|
||||
{ L"flowchart-terminator" , 7}, // shapetypeFlowChartTerminator,
|
||||
{ L"paper" , 7}, // shapetypeFoldedCorner,
|
||||
{ L"" , 7}, // shapetypeFoldedCorner,
|
||||
{ L"" , 7}, // shapetypeFrame,
|
||||
{ L"" , 7}, // shapetypeFunnel,
|
||||
{ L"" , 7}, // shapetypeGear6,
|
||||
{ L"" , 7}, // shapetypeGear9,
|
||||
{ L"" , 7}, // shapetypeHalfFrame,
|
||||
{ L"heart" , 7}, // shapetypeHeart,
|
||||
{ L"" , 7}, // shapetypeHeart,
|
||||
{ L"" , 7}, // shapetypeHeptagon,
|
||||
{ L"hexagon" , 7}, // shapetypeHexagon,
|
||||
{ L"" , 7}, // shapetypeHexagon,
|
||||
{ L"" , 7}, // shapetypeHomePlate,
|
||||
{ L"horizontal-scroll" , 7}, // shapetypeHorizontalScroll,
|
||||
{ L"" , 7}, // shapetypeIrregularSeal1,
|
||||
{ L"" , 7}, // shapetypeIrregularSeal2,
|
||||
{ L"" , 7}, // shapetypeLeftArrow,
|
||||
{ L"" , 7}, // shapetypeLeftArrowCallout,
|
||||
{ L"left-brace" , 7}, // shapetypeLeftBrace,
|
||||
{ L"left-bracket" , 7}, // shapetypeLeftBracket,
|
||||
{ L"" , 7}, // shapetypeLeftBrace,
|
||||
{ L"" , 7}, // shapetypeLeftBracket,
|
||||
{ L"" , 7}, // shapetypeLeftCircularArrow,
|
||||
{ L"" , 7}, // shapetypeLeftRightArrow,
|
||||
{ L"left-right-arrow-callout" , 7}, // shapetypeLeftRightArrowCallout,
|
||||
@ -158,7 +158,7 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeLeftRightRibbon,
|
||||
{ L"" , 7}, // shapetypeLeftRightUpArrow,
|
||||
{ L"" , 7}, // shapetypeLeftUpArrow,
|
||||
{ L"lightning" , 7}, // shapetypeLightningBolt,
|
||||
{ L"" , 7}, // shapetypeLightningBolt,
|
||||
{ L"" , 5}, // shapetypeLine,
|
||||
{ L"" , 7}, // shapetypeLineInv,
|
||||
{ L"" , 7}, // shapetypeMathDivide,
|
||||
@ -167,27 +167,27 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeMathMultiply,
|
||||
{ L"" , 7}, // shapetypeMathNotEqual,
|
||||
{ L"" , 7}, // shapetypeMathPlus,
|
||||
{ L"moon" , 7}, // shapetypeMoon,
|
||||
{ L"" , 7}, // shapetypeMoon,
|
||||
{ L"" , 7}, // shapetypeNonIsoscelesTrapezoid,
|
||||
{ L"forbidden" , 7}, // shapetypeNoSmoking,
|
||||
{ L"" , 7}, // shapetypeNotchedRightArrow,
|
||||
{ L"octagon" , 7}, // shapetypeOctagon,
|
||||
{ L"" , 7}, // shapetypeOctagon,
|
||||
{ L"" , 7}, // shapetypeParallelogram,
|
||||
{ L"pentagon" , 7}, // shapetypePentagon,
|
||||
{ L"" , 7}, // shapetypePentagon,
|
||||
{ L"" , 7}, // shapetypePie,
|
||||
{ L"" , 7}, // shapetypePieWedge,
|
||||
{ L"" , 7}, // shapetypePlaque,
|
||||
{ L"" , 7}, // shapetypePlaqueTabs,
|
||||
{ L"" , 7}, // shapetypePlus,
|
||||
{ L"quad-arrow" , 7}, // shapetypeQuadArrow,
|
||||
{ L"quad-arrow-callout" , 7}, // shapetypeQuadArrowCallout,
|
||||
{ L"" , 7}, // shapetypeQuadArrowCallout,
|
||||
{ L"rectangle" , 2}, // shapetypeRect,
|
||||
{ L"mso-spt53" , 7}, // shapetypeRibbon,
|
||||
{ L"mso-spt54" , 7}, // shapetypeRibbon2,
|
||||
{ L"" , 7}, // shapetypeRibbon,
|
||||
{ L"" , 7}, // shapetypeRibbon2,
|
||||
{ L"" , 7}, // shapetypeRightArrow,
|
||||
{ L"" , 7}, // shapetypeRightArrowCallout,
|
||||
{ L"right-brace" , 7}, // shapetypeRightBrace,
|
||||
{ L"right-bracket" , 7}, // shapetypeRightBracket,
|
||||
{ L"" , 7}, // shapetypeRightBrace,
|
||||
{ L"" , 7}, // shapetypeRightBracket,
|
||||
{ L"" , 7}, // shapetypeRound1Rect,
|
||||
{ L"" , 7}, // shapetypeRound2DiagRect,
|
||||
{ L"" , 7}, // shapetypeRound2SameRect,
|
||||
@ -209,7 +209,7 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"" , 7}, // shapetypeStar6,
|
||||
{ L"" , 7}, // shapetypeStar7,
|
||||
{ L"star8" , 7}, // shapetypeStar8,
|
||||
{ L"" , 7}, // shapetypeStraightConnector1,
|
||||
{ L"" , 5}, // shapetypeStraightConnector1,
|
||||
{ L"striped-right-arrow" , 7}, // shapetypeStripedRightArrow,
|
||||
{ L"" , 7}, // shapetypeSun,
|
||||
{ L"" , 7}, // shapetypeSwooshArrow,
|
||||
@ -223,9 +223,9 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
|
||||
{ L"mso-spt101" , 7}, // shapetypeUturnArrow,
|
||||
{ L"vertical-scroll" , 7}, // shapetypeVerticalScroll,
|
||||
{ L"" , 7}, // shapetypeWave,
|
||||
{ L"round-callout" , 7}, // shapetypeWedgeEllipseCallout,
|
||||
{ L"rectangular-callout" , 7}, // shapetypeWedgeRectCallout,
|
||||
{ L"round-rectangular-callout" , 7}, // shapetypeWedgeRoundRectCallout,
|
||||
{ L"" , 7}, // shapetypeWedgeEllipseCallout,
|
||||
{ L"" , 7}, // shapetypeWedgeRectCallout,
|
||||
{ L"" , 7}, // shapetypeWedgeRoundRectCallout,
|
||||
{ L"mso-spt17" , 7}, // shapetypeBallon,
|
||||
{ L"up-right-arrow" , 7}, // shapetypeRightUpArrow,
|
||||
{ L"fontwork-arch-down-pour" , 7}, // shapetypeTextArchDownPour,
|
||||
|
||||
@ -31,11 +31,336 @@
|
||||
*/
|
||||
#include "../oox_shape_defines.h"
|
||||
|
||||
// shapetypeAccentBorderCallout1,
|
||||
// shapetypeAccentBorderCallout2,
|
||||
// shapetypeAccentBorderCallout3,
|
||||
//+ shapetypeAccentBorderCallout1,
|
||||
//+ shapetypeAccentBorderCallout2,
|
||||
//+ shapetypeAccentBorderCallout3,
|
||||
//+ shapetypeAccentCallout1
|
||||
//+ shapetypeAccentCallout2
|
||||
//+ shapetypeAccentCallout3
|
||||
//+ shapetypeBorderCallout1
|
||||
//+ shapetypeBorderCallout2
|
||||
//+ shapetypeBorderCallout3
|
||||
|
||||
namespace cpdoccore
|
||||
{
|
||||
class oox_shape_AccentCallout1 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentCallout1()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentCallout1";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 112500 -38333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f13 / 100000");
|
||||
add(L"f9", L"?f5 * ?f12 / 100000");
|
||||
add(L"f10", L"?f4 * ?f15 / 100000");
|
||||
add(L"f11", L"?f5 * ?f14 / 100000");
|
||||
add(L"f12", L"$1 / ?f7");
|
||||
add(L"f13", L"$0 / ?f7");
|
||||
add(L"f14", L"$3 / ?f7");
|
||||
add(L"f15", L"$2 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_AccentCallout2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentCallout2()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentCallout2";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 112500 -46667";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f15 / 100000");
|
||||
add(L"f9", L"?f5 * ?f14 / 100000");
|
||||
add(L"f10", L"?f4 * ?f17 / 100000");
|
||||
add(L"f11", L"?f5 * ?f16 / 100000");
|
||||
add(L"f12", L"?f4 * ?f19 / 100000");
|
||||
add(L"f13", L"?f5 * ?f18 / 100000");
|
||||
add(L"f14", L"$1 / ?f7");
|
||||
add(L"f15", L"$0 / ?f7");
|
||||
add(L"f16", L"$3 / ?f7");
|
||||
add(L"f17", L"$2 / ?f7");
|
||||
add(L"f18", L"$5 / ?f7");
|
||||
add(L"f19", L"$4 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_AccentCallout3 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentCallout3()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentCallout3";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 ?f15 ?f14 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 100000 -16667 112963 -8333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f17 / 100000");
|
||||
add(L"f9", L"?f5 * ?f16 / 100000");
|
||||
add(L"f10", L"?f4 * ?f19 / 100000");
|
||||
add(L"f11", L"?f5 * ?f18 / 100000");
|
||||
add(L"f12", L"?f4 * ?f21 / 100000");
|
||||
add(L"f13", L"?f5 * ?f20 / 100000");
|
||||
add(L"f14", L"?f4 * ?f23 / 100000");
|
||||
add(L"f15", L"?f5 * ?f22 / 100000");
|
||||
add(L"f16", L"$1 / ?f7");
|
||||
add(L"f17", L"$0 / ?f7");
|
||||
add(L"f18", L"$3 / ?f7");
|
||||
add(L"f19", L"$2 / ?f7");
|
||||
add(L"f20", L"$5 / ?f7");
|
||||
add(L"f21", L"$4 / ?f7");
|
||||
add(L"f22", L"$7 / ?f7");
|
||||
add(L"f23", L"$6 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_BorderCallout1 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_BorderCallout1()
|
||||
{
|
||||
odf_type_name =L"ooxml-borderCallout1";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 112500 -38333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f13 / 100000");
|
||||
add(L"f9", L"?f5 * ?f12 / 100000");
|
||||
add(L"f10", L"?f4 * ?f15 / 100000");
|
||||
add(L"f11", L"?f5 * ?f14 / 100000");
|
||||
add(L"f12", L"$1 / ?f7");
|
||||
add(L"f13", L"$0 / ?f7");
|
||||
add(L"f14", L"$3 / ?f7");
|
||||
add(L"f15", L"$2 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_BorderCallout2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_BorderCallout2()
|
||||
{
|
||||
odf_type_name =L"ooxml-borderCallout2";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 112500 -46667";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f15 / 100000");
|
||||
add(L"f9", L"?f5 * ?f14 / 100000");
|
||||
add(L"f10", L"?f4 * ?f17 / 100000");
|
||||
add(L"f11", L"?f5 * ?f16 / 100000");
|
||||
add(L"f12", L"?f4 * ?f19 / 100000");
|
||||
add(L"f13", L"?f5 * ?f18 / 100000");
|
||||
add(L"f14", L"$1 / ?f7");
|
||||
add(L"f15", L"$0 / ?f7");
|
||||
add(L"f16", L"$3 / ?f7");
|
||||
add(L"f17", L"$2 / ?f7");
|
||||
add(L"f18", L"$5 / ?f7");
|
||||
add(L"f19", L"$4 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_BorderCallout3 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_BorderCallout3()
|
||||
{
|
||||
odf_type_name =L"ooxml-borderCallout3";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 ?f15 ?f14 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 100000 -16667 112963 -8333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f17 / 100000");
|
||||
add(L"f9", L"?f5 * ?f16 / 100000");
|
||||
add(L"f10", L"?f4 * ?f19 / 100000");
|
||||
add(L"f11", L"?f5 * ?f18 / 100000");
|
||||
add(L"f12", L"?f4 * ?f21 / 100000");
|
||||
add(L"f13", L"?f5 * ?f20 / 100000");
|
||||
add(L"f14", L"?f4 * ?f23 / 100000");
|
||||
add(L"f15", L"?f5 * ?f22 / 100000");
|
||||
add(L"f16", L"$1 / ?f7");
|
||||
add(L"f17", L"$0 / ?f7");
|
||||
add(L"f18", L"$3 / ?f7");
|
||||
add(L"f19", L"$2 / ?f7");
|
||||
add(L"f20", L"$5 / ?f7");
|
||||
add(L"f21", L"$4 / ?f7");
|
||||
add(L"f22", L"$7 / ?f7");
|
||||
add(L"f23", L"$6 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_AccentBorderCallout1 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentBorderCallout1()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentBorderCallout1";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 112500 -38333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f13 / 100000");
|
||||
add(L"f9", L"?f5 * ?f12 / 100000");
|
||||
add(L"f10", L"?f4 * ?f15 / 100000");
|
||||
add(L"f11", L"?f5 * ?f14 / 100000");
|
||||
add(L"f12", L"$1 / ?f7");
|
||||
add(L"f13", L"$0 / ?f7");
|
||||
add(L"f14", L"$3 / ?f7");
|
||||
add(L"f15", L"$2 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_AccentBorderCallout2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentBorderCallout2()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentBorderCallout2";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 112500 -46667";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f15 / 100000");
|
||||
add(L"f9", L"?f5 * ?f14 / 100000");
|
||||
add(L"f10", L"?f4 * ?f17 / 100000");
|
||||
add(L"f11", L"?f5 * ?f16 / 100000");
|
||||
add(L"f12", L"?f4 * ?f19 / 100000");
|
||||
add(L"f13", L"?f5 * ?f18 / 100000");
|
||||
add(L"f14", L"$1 / ?f7");
|
||||
add(L"f15", L"$0 / ?f7");
|
||||
add(L"f16", L"$3 / ?f7");
|
||||
add(L"f17", L"$2 / ?f7");
|
||||
add(L"f18", L"$5 / ?f7");
|
||||
add(L"f19", L"$4 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_AccentBorderCallout3 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_AccentBorderCallout3()
|
||||
{
|
||||
odf_type_name =L"ooxml-accentBorderCallout3";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f2 L ?f9 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 ?f15 ?f14 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 100000 -16667 112963 -8333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f17 / 100000");
|
||||
add(L"f9", L"?f5 * ?f16 / 100000");
|
||||
add(L"f10", L"?f4 * ?f19 / 100000");
|
||||
add(L"f11", L"?f5 * ?f18 / 100000");
|
||||
add(L"f12", L"?f4 * ?f21 / 100000");
|
||||
add(L"f13", L"?f5 * ?f20 / 100000");
|
||||
add(L"f14", L"?f4 * ?f23 / 100000");
|
||||
add(L"f15", L"?f5 * ?f22 / 100000");
|
||||
add(L"f16", L"$1 / ?f7");
|
||||
add(L"f17", L"$0 / ?f7");
|
||||
add(L"f18", L"$3 / ?f7");
|
||||
add(L"f19", L"$2 / ?f7");
|
||||
add(L"f20", L"$5 / ?f7");
|
||||
add(L"f21", L"$4 / ?f7");
|
||||
add(L"f22", L"$7 / ?f7");
|
||||
add(L"f23", L"$6 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
@ -608,230 +608,157 @@ public:
|
||||
{
|
||||
odf_type_name = L"ooxml-circularArrow";
|
||||
|
||||
enhanced_path = L"M ?f60 ?f61 G ?f10 ?f12 ?f197 ?f198 L ?f172 ?f173 ?f54 ?f55 ?f174 ?f175 ?f159 ?f160 G ?f13 ?f14 ?f199 ?f200 Z N";
|
||||
text_areas = L"?f193 ?f195 ?f194 ?f196";
|
||||
modifiers = L"12500 515062 20457681 17744048 18489";
|
||||
view_box = L"0 0 0 0";
|
||||
enhanced_path = L"M 534468 1430865 A ?f91 ?f92 ?f93 ?f94 534468 1430865 ?f88 ?f90 W ?f95 ?f96 ?f97 ?f98 534468 1430865 ?f88 ?f90 L 853493 790375 695381 939240 547047 613089 643004 668602 A ?f138 ?f139 ?f140 ?f141 643004 668602 ?f135 ?f137 W ?f142 ?f143 ?f144 ?f145 643004 668602 ?f135 ?f137 Z N";
|
||||
text_areas = L"?f48 ?f50 ?f49 ?f51";
|
||||
view_box = L"0 0 880110 1583055";
|
||||
glue_points = L"?f40 ?f41 ?f42 ?f43 ?f44 ?f45 ?f46 ?f47";
|
||||
|
||||
add(L"f0", L"if(0-$4 ,0,if(25000-$4 ,$4 ,25000))");
|
||||
add(L"f1", L"?f0 *2/1");
|
||||
add(L"f2", L"if(0-$0 ,0,if(?f1 -$0 ,$0 ,?f1 ))");
|
||||
add(L"f3", L"if(1-$2 ,1,if(21599999-$2 ,$2 ,21599999))");
|
||||
add(L"f4", L"if(0-$3 ,0,if(21599999-$3 ,$3 ,21599999))");
|
||||
add(L"f5", L"min(logwidth,logheight)");
|
||||
add(L"f6", L"?f5 *?f2 /100000");
|
||||
add(L"f7", L"?f5 *?f0 /100000");
|
||||
add(L"f8", L"?f6 *1/2");
|
||||
add(L"f9", L"logwidth/2");
|
||||
add(L"f10", L"?f9 +?f8 -?f7 ");
|
||||
add(L"f11", L"logheight/2");
|
||||
add(L"f12", L"?f11 +?f8 -?f7 ");
|
||||
add(L"f13", L"?f10 +0-?f6 ");
|
||||
add(L"f14", L"?f12 +0-?f6 ");
|
||||
add(L"f15", L"?f13 +?f8 -0");
|
||||
add(L"f16", L"?f14 +?f8 -0");
|
||||
add(L"f17", L"?f15 *sin(pi*(?f3 )/10800000)");
|
||||
add(L"f18", L"?f16 *cos(pi*(?f3 )/10800000)");
|
||||
add(L"f19", L"?f15 *(cos(atan2(?f17 ,?f18 )))");
|
||||
add(L"f20", L"?f16 *(sin(atan2(?f17 ,?f18 )))");
|
||||
add(L"f21", L"logwidth/2");
|
||||
add(L"f22", L"?f21 +?f19 -0");
|
||||
add(L"f23", L"logheight/2");
|
||||
add(L"f24", L"?f23 +?f20 -0");
|
||||
add(L"f25", L"min(?f13 ,?f14 )");
|
||||
add(L"f26", L"?f19 *?f19 /1");
|
||||
add(L"f27", L"?f20 *?f20 /1");
|
||||
add(L"f28", L"?f25 *?f25 /1");
|
||||
add(L"f29", L"?f26 +0-?f28 ");
|
||||
add(L"f30", L"?f27 +0-?f28 ");
|
||||
add(L"f31", L"?f29 *?f30 /?f26 ");
|
||||
add(L"f32", L"?f31 *1/?f27 ");
|
||||
add(L"f33", L"1+0-?f32 ");
|
||||
add(L"f34", L"sqrt(?f33 )");
|
||||
add(L"f35", L"?f29 *1/?f19 ");
|
||||
add(L"f36", L"?f35 *1/?f20 ");
|
||||
add(L"f37", L"(1+?f34 )/?f36 ");
|
||||
add(L"f38", L"(10800000*atan2(?f37 ,1))/pi");
|
||||
add(L"f39", L"?f38 +21600000-0");
|
||||
add(L"f40", L"if(?f38 ,?f38 ,?f39 )");
|
||||
add(L"f41", L"?f40 +0-?f3 ");
|
||||
add(L"f42", L"?f41 +21600000-0");
|
||||
add(L"f43", L"if(?f41 ,?f41 ,?f42 )");
|
||||
add(L"f44", L"?f43 +0-10800000");
|
||||
add(L"f45", L"?f43 +0-21600000");
|
||||
add(L"f46", L"if(?f44 ,?f45 ,?f43 )");
|
||||
add(L"f47", L"abs(?f46 )");
|
||||
add(L"f48", L"if(0-$1 ,0,if(?f47 -$1 ,$1 ,?f47 ))");
|
||||
add(L"f49", L"?f3 +?f48 -0");
|
||||
add(L"f50", L"?f15 *sin(pi*(?f49 )/10800000)");
|
||||
add(L"f51", L"?f16 *cos(pi*(?f49 )/10800000)");
|
||||
add(L"f52", L"?f15 *(cos(atan2(?f50 ,?f51 )))");
|
||||
add(L"f53", L"?f16 *(sin(atan2(?f50 ,?f51 )))");
|
||||
add(L"f54", L"?f21 +?f52 -0");
|
||||
add(L"f55", L"?f23 +?f53 -0");
|
||||
add(L"f56", L"?f10 *sin(pi*(?f4 )/10800000)");
|
||||
add(L"f57", L"?f12 *cos(pi*(?f4 )/10800000)");
|
||||
add(L"f58", L"?f10 *(cos(atan2(?f56 ,?f57 )))");
|
||||
add(L"f59", L"?f12 *(sin(atan2(?f56 ,?f57 )))");
|
||||
add(L"f60", L"?f21 +?f58 -0");
|
||||
add(L"f61", L"?f23 +?f59 -0");
|
||||
add(L"f62", L"?f7 *cos(pi*(?f49 )/10800000)");
|
||||
add(L"f63", L"?f7 *sin(pi*(?f49 )/10800000)");
|
||||
add(L"f64", L"?f22 +?f62 -0");
|
||||
add(L"f65", L"?f24 +?f63 -0");
|
||||
add(L"f66", L"?f7 *cos(pi*(?f49 )/10800000)");
|
||||
add(L"f67", L"?f7 *sin(pi*(?f49 )/10800000)");
|
||||
add(L"f68", L"?f22 +0-?f66 ");
|
||||
add(L"f69", L"?f24 +0-?f67 ");
|
||||
add(L"f70", L"?f68 +0-?f21 ");
|
||||
add(L"f71", L"?f69 +0-?f23 ");
|
||||
add(L"f72", L"?f64 +0-?f21 ");
|
||||
add(L"f73", L"?f65 +0-?f23 ");
|
||||
add(L"f74", L"min(?f10 ,?f12 )");
|
||||
add(L"f75", L"?f70 *?f74 /?f10 ");
|
||||
add(L"f76", L"?f71 *?f74 /?f12 ");
|
||||
add(L"f77", L"?f72 *?f74 /?f10 ");
|
||||
add(L"f78", L"?f73 *?f74 /?f12 ");
|
||||
add(L"f79", L"?f77 +0-?f75 ");
|
||||
add(L"f80", L"?f78 +0-?f76 ");
|
||||
add(L"f81", L"sqrt(?f79 *?f79 +?f80 *?f80 +0*0)");
|
||||
add(L"f82", L"?f75 *?f78 /1");
|
||||
add(L"f83", L"?f77 *?f76 /1");
|
||||
add(L"f84", L"?f82 +0-?f83 ");
|
||||
add(L"f85", L"?f74 *?f74 /1");
|
||||
add(L"f86", L"?f81 *?f81 /1");
|
||||
add(L"f87", L"?f85 *?f86 /1");
|
||||
add(L"f88", L"?f84 *?f84 /1");
|
||||
add(L"f89", L"?f87 +0-?f88 ");
|
||||
add(L"f90", L"max(?f89 ,0)");
|
||||
add(L"f91", L"sqrt(?f90 )");
|
||||
add(L"f92", L"?f80 *-1/1");
|
||||
add(L"f93", L"if(?f92 ,-1,1)");
|
||||
add(L"f94", L"?f93 *?f79 /1");
|
||||
add(L"f95", L"?f94 *?f91 /1");
|
||||
add(L"f96", L"?f84 *?f80 /1");
|
||||
add(L"f97", L"(?f96 +?f95 )/?f86 ");
|
||||
add(L"f98", L"?f96 +0-?f95 ");
|
||||
add(L"f99", L"?f98 *1/?f86 ");
|
||||
add(L"f100", L"abs(?f80 )");
|
||||
add(L"f101", L"?f100 *?f91 /1");
|
||||
add(L"f102", L"?f84 *?f79 /-1");
|
||||
add(L"f103", L"(?f102 +?f101 )/?f86 ");
|
||||
add(L"f104", L"?f102 +0-?f101 ");
|
||||
add(L"f105", L"?f104 *1/?f86 ");
|
||||
add(L"f106", L"?f77 +0-?f97 ");
|
||||
add(L"f107", L"?f77 +0-?f99 ");
|
||||
add(L"f108", L"?f78 +0-?f103 ");
|
||||
add(L"f109", L"?f78 +0-?f105 ");
|
||||
add(L"f110", L"sqrt(?f106 *?f106 +?f108 *?f108 +0*0)");
|
||||
add(L"f111", L"sqrt(?f107 *?f107 +?f109 *?f109 +0*0)");
|
||||
add(L"f112", L"?f111 +0-?f110 ");
|
||||
add(L"f113", L"if(?f112 ,?f97 ,?f99 )");
|
||||
add(L"f114", L"if(?f112 ,?f103 ,?f105 )");
|
||||
add(L"f115", L"?f113 *?f10 /?f74 ");
|
||||
add(L"f116", L"?f114 *?f12 /?f74 ");
|
||||
add(L"f117", L"?f21 +?f115 -0");
|
||||
add(L"f118", L"?f23 +?f116 -0");
|
||||
add(L"f119", L"?f70 *?f25 /?f13 ");
|
||||
add(L"f120", L"?f71 *?f25 /?f14 ");
|
||||
add(L"f121", L"?f72 *?f25 /?f13 ");
|
||||
add(L"f122", L"?f73 *?f25 /?f14 ");
|
||||
add(L"f123", L"?f121 +0-?f119 ");
|
||||
add(L"f124", L"?f122 +0-?f120 ");
|
||||
add(L"f125", L"sqrt(?f123 *?f123 +?f124 *?f124 +0*0)");
|
||||
add(L"f126", L"?f119 *?f122 /1");
|
||||
add(L"f127", L"?f121 *?f120 /1");
|
||||
add(L"f128", L"?f126 +0-?f127 ");
|
||||
add(L"f129", L"?f25 *?f25 /1");
|
||||
add(L"f130", L"?f125 *?f125 /1");
|
||||
add(L"f131", L"?f129 *?f130 /1");
|
||||
add(L"f132", L"?f128 *?f128 /1");
|
||||
add(L"f133", L"?f131 +0-?f132 ");
|
||||
add(L"f134", L"max(?f133 ,0)");
|
||||
add(L"f135", L"sqrt(?f134 )");
|
||||
add(L"f136", L"?f93 *?f123 /1");
|
||||
add(L"f137", L"?f136 *?f135 /1");
|
||||
add(L"f138", L"?f128 *?f124 /1");
|
||||
add(L"f139", L"(?f138 +?f137 )/?f130 ");
|
||||
add(L"f140", L"?f138 +0-?f137 ");
|
||||
add(L"f141", L"?f140 *1/?f130 ");
|
||||
add(L"f142", L"abs(?f124 )");
|
||||
add(L"f143", L"?f142 *?f135 /1");
|
||||
add(L"f144", L"?f128 *?f123 /-1");
|
||||
add(L"f145", L"(?f144 +?f143 )/?f130 ");
|
||||
add(L"f146", L"?f144 +0-?f143 ");
|
||||
add(L"f147", L"?f146 *1/?f130 ");
|
||||
add(L"f148", L"?f119 +0-?f139 ");
|
||||
add(L"f149", L"?f119 +0-?f141 ");
|
||||
add(L"f150", L"?f120 +0-?f145 ");
|
||||
add(L"f151", L"?f120 +0-?f147 ");
|
||||
add(L"f152", L"sqrt(?f148 *?f148 +?f150 *?f150 +0*0)");
|
||||
add(L"f153", L"sqrt(?f149 *?f149 +?f151 *?f151 +0*0)");
|
||||
add(L"f154", L"?f153 +0-?f152 ");
|
||||
add(L"f155", L"if(?f154 ,?f139 ,?f141 )");
|
||||
add(L"f156", L"if(?f154 ,?f145 ,?f147 )");
|
||||
add(L"f157", L"?f155 *?f13 /?f25 ");
|
||||
add(L"f158", L"?f156 *?f14 /?f25 ");
|
||||
add(L"f159", L"?f21 +?f157 -0");
|
||||
add(L"f160", L"?f23 +?f158 -0");
|
||||
add(L"f161", L"(10800000*atan2(?f158 ,?f157 ))/pi");
|
||||
add(L"f162", L"?f161 +21600000-0");
|
||||
add(L"f163", L"if(?f161 ,?f161 ,?f162 )");
|
||||
add(L"f164", L"?f4 +0-?f163 ");
|
||||
add(L"f165", L"?f164 +0-21600000");
|
||||
add(L"f166", L"if(?f164 ,?f165 ,?f164 )");
|
||||
add(L"f167", L"?f117 +0-?f159 ");
|
||||
add(L"f168", L"?f118 +0-?f160 ");
|
||||
add(L"f169", L"sqrt(?f167 *?f167 +?f168 *?f168 +0*0)");
|
||||
add(L"f170", L"?f169 *1/2");
|
||||
add(L"f171", L"?f170 +0-?f7 ");
|
||||
add(L"f172", L"if(?f171 ,?f117 ,?f64 )");
|
||||
add(L"f173", L"if(?f171 ,?f118 ,?f65 )");
|
||||
add(L"f174", L"if(?f171 ,?f159 ,?f68 )");
|
||||
add(L"f175", L"if(?f171 ,?f160 ,?f69 )");
|
||||
add(L"f176", L"(10800000*atan2(?f116 ,?f115 ))/pi");
|
||||
add(L"f177", L"?f176 +21600000-0");
|
||||
add(L"f178", L"if(?f176 ,?f176 ,?f177 )");
|
||||
add(L"f179", L"?f178 +0-?f4 ");
|
||||
add(L"f180", L"?f179 +21600000-0");
|
||||
add(L"f181", L"if(?f179 ,?f179 ,?f180 )");
|
||||
add(L"f182", L"?f15 *sin(pi*(?f4 )/10800000)");
|
||||
add(L"f183", L"?f16 *cos(pi*(?f4 )/10800000)");
|
||||
add(L"f184", L"?f15 *(cos(atan2(?f182 ,?f183 )))");
|
||||
add(L"f185", L"?f16 *(sin(atan2(?f182 ,?f183 )))");
|
||||
add(L"f186", L"?f21 +?f184 -0");
|
||||
add(L"f187", L"?f23 +?f185 -0");
|
||||
add(L"f188", L"?f4 +0-5400000");
|
||||
add(L"f189", L"?f49 +5400000-0");
|
||||
add(L"f190", L"?f49 +10800000-0");
|
||||
add(L"f191", L"?f10 *cos(pi*(2700000)/10800000)");
|
||||
add(L"f192", L"?f12 *sin(pi*(2700000)/10800000)");
|
||||
add(L"f193", L"?f21 +0-?f191 ");
|
||||
add(L"f194", L"?f21 +?f191 -0");
|
||||
add(L"f195", L"?f23 +0-?f192 ");
|
||||
add(L"f196", L"?f23 +?f192 -0");
|
||||
add(L"f197", L"(?f4 )/60000.0");
|
||||
add(L"f198", L"(?f181 )/60000.0");
|
||||
add(L"f199", L"(?f163 )/60000.0");
|
||||
add(L"f200", L"(?f166 )/60000.0");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h;
|
||||
|
||||
h.position = L"?f54 ?f55";
|
||||
handles.push_back(h);
|
||||
|
||||
h.position = L"?f60 ?f61";
|
||||
handles.push_back(h);
|
||||
|
||||
h.position = L"?f117 ?f118";
|
||||
h.r_minimum = L"0";
|
||||
h.r_maximum = L"?f1";
|
||||
handles.push_back(h);
|
||||
|
||||
h.position = L"?f68 ?f69";
|
||||
h.r_minimum = L"0";
|
||||
h.r_maximum = L"25000";
|
||||
handles.push_back(h);
|
||||
add(L"f0", L"10800000");
|
||||
add(L"f1", L"5400000");
|
||||
add(L"f2", L"left");
|
||||
add(L"f3", L"right");
|
||||
add(L"f4", L"top");
|
||||
add(L"f5", L"bottom");
|
||||
add(L"f6", L"?f5 - ?f4");
|
||||
add(L"f7", L"?f3 - ?f2");
|
||||
add(L"f8", L"5419351 / 1725033");
|
||||
add(L"f9", L"180");
|
||||
add(L"f10", L"?f7 / 880110");
|
||||
add(L"f11", L"?f6 / 1583055");
|
||||
add(L"f12", L"695381 - 440055");
|
||||
add(L"f13", L"939240 - 791527");
|
||||
add(L"f14", L"sqrt(?f12 * ?f12 + ?f13 * ?f13 + 0 * 0)");
|
||||
add(L"f15", L"atan2(?f12, ?f13)");
|
||||
add(L"f16", L"?f15 + ?f1");
|
||||
add(L"f17", L"?f16 * ?f9 / ?f0");
|
||||
add(L"f18", L"0 - ?f17");
|
||||
add(L"f19", L"534468 - 440055");
|
||||
add(L"f20", L"1430865 - 791527");
|
||||
add(L"f21", L"sqrt(?f19 * ?f19 + ?f20 * ?f20 + 0 * 0)");
|
||||
add(L"f22", L"atan2(?f19, ?f20)");
|
||||
add(L"f23", L"?f22 + ?f1");
|
||||
add(L"f24", L"?f23 * ?f9 / ?f0");
|
||||
add(L"f25", L"0 - ?f24");
|
||||
add(L"f26", L"756945 - 440055");
|
||||
add(L"f27", L"734520 - 791527");
|
||||
add(L"f28", L"sqrt(?f26 * ?f26 + ?f27 * ?f27 + 0 * 0)");
|
||||
add(L"f29", L"atan2(?f26, ?f27)");
|
||||
add(L"f30", L"?f29 + ?f1");
|
||||
add(L"f31", L"?f30 * ?f9 / ?f0");
|
||||
add(L"f32", L"0 - ?f31");
|
||||
add(L"f33", L"547047 - 440055");
|
||||
add(L"f34", L"613089 - 791527");
|
||||
add(L"f35", L"sqrt(?f33 * ?f33 + ?f34 * ?f34 + 0 * 0)");
|
||||
add(L"f36", L"atan2(?f33, ?f34)");
|
||||
add(L"f37", L"?f36 + ?f1");
|
||||
add(L"f38", L"?f37 * ?f9 / ?f0");
|
||||
add(L"f39", L"0 - ?f38");
|
||||
add(L"f40", L"525840 / ?f10");
|
||||
add(L"f41", L"1372440 / ?f11");
|
||||
add(L"f42", L"853493 / ?f10");
|
||||
add(L"f43", L"790375 / ?f11");
|
||||
add(L"f44", L"695381 / ?f10");
|
||||
add(L"f45", L"939240 / ?f11");
|
||||
add(L"f46", L"547047 / ?f10");
|
||||
add(L"f47", L"613089 / ?f11");
|
||||
add(L"f48", L"215163 / ?f10");
|
||||
add(L"f49", L"664947 / ?f10");
|
||||
add(L"f50", L"318107 / ?f11");
|
||||
add(L"f51", L"1264948 / ?f11");
|
||||
add(L"f52", L"21550000 - 16092125");
|
||||
add(L"f53", L"if(?f52, 16092125, 21550000)");
|
||||
add(L"f54", L"-21550000 - ?f53");
|
||||
add(L"f55", L"if(?f54, -21550000, ?f53)");
|
||||
add(L"f56", L"4895979 + ?f55");
|
||||
add(L"f57", L"4895979 + ?f1");
|
||||
add(L"f58", L"?f57 * ?f8 / ?f0");
|
||||
add(L"f59", L"0 - ?f58");
|
||||
add(L"f60", L"cos(?f59)");
|
||||
add(L"f61", L"0 - ?f60");
|
||||
add(L"f62", L"?f61 * 318045");
|
||||
add(L"f63", L"sin(?f59)");
|
||||
add(L"f64", L"0 - ?f63");
|
||||
add(L"f65", L"?f64 * 669518");
|
||||
add(L"f66", L"sqrt(?f62 * ?f62 + ?f65 * ?f65 + 0 * 0)");
|
||||
add(L"f67", L"318045 * 669518 / ?f66");
|
||||
add(L"f68", L"?f64 * ?f67");
|
||||
add(L"f69", L"534468 - ?f68");
|
||||
add(L"f70", L"?f61 * ?f67");
|
||||
add(L"f71", L"1430865 - ?f70");
|
||||
add(L"f72", L"?f69 - 318045");
|
||||
add(L"f73", L"?f71 - 669518");
|
||||
add(L"f74", L"?f69 + 318045");
|
||||
add(L"f75", L"?f71 + 669518");
|
||||
add(L"f76", L"?f56 + ?f1");
|
||||
add(L"f77", L"?f76 * ?f8 / ?f0");
|
||||
add(L"f78", L"0 - ?f77");
|
||||
add(L"f79", L"cos(?f78)");
|
||||
add(L"f80", L"0 - ?f79");
|
||||
add(L"f81", L"?f80 * 318045");
|
||||
add(L"f82", L"sin(?f78)");
|
||||
add(L"f83", L"0 - ?f82");
|
||||
add(L"f84", L"?f83 * 669518");
|
||||
add(L"f85", L"sqrt(?f81 * ?f81 + ?f84 * ?f84 + 0 * 0)");
|
||||
add(L"f86", L"318045 * 669518 / ?f85");
|
||||
add(L"f87", L"?f83 * ?f86");
|
||||
add(L"f88", L"?f69 + ?f87");
|
||||
add(L"f89", L"?f80 * ?f86");
|
||||
add(L"f90", L"?f71 + ?f89");
|
||||
add(L"f91", L"if(?f55, 534468, ?f72)");
|
||||
add(L"f92", L"if(?f55, 1430865, ?f73)");
|
||||
add(L"f93", L"if(?f55, 534468, ?f74)");
|
||||
add(L"f94", L"if(?f55, 1430865, ?f75)");
|
||||
add(L"f95", L"if(?f55, ?f72, ?f88)");
|
||||
add(L"f96", L"if(?f55, ?f73, ?f90)");
|
||||
add(L"f97", L"if(?f55, ?f74, ?f88)");
|
||||
add(L"f98", L"if(?f55, ?f75, ?f90)");
|
||||
add(L"f99", L"21550000 - -14831828");
|
||||
add(L"f100", L"if(?f99, -14831828, 21550000)");
|
||||
add(L"f101", L"-21550000 - ?f100");
|
||||
add(L"f102", L"if(?f101, -21550000, ?f100)");
|
||||
add(L"f103", L"19727807 + ?f102");
|
||||
add(L"f104", L"19727807 + ?f1");
|
||||
add(L"f105", L"?f104 * ?f8 / ?f0");
|
||||
add(L"f106", L"0 - ?f105");
|
||||
add(L"f107", L"cos(?f106)");
|
||||
add(L"f108", L"0 - ?f107");
|
||||
add(L"f109", L"?f108 * 208032");
|
||||
add(L"f110", L"sin(?f106)");
|
||||
add(L"f111", L"0 - ?f110");
|
||||
add(L"f112", L"?f111 * 559504");
|
||||
add(L"f113", L"sqrt(?f109 * ?f109 + ?f112 * ?f112 + 0 * 0)");
|
||||
add(L"f114", L"208032 * 559504 / ?f113");
|
||||
add(L"f115", L"?f111 * ?f114");
|
||||
add(L"f116", L"643004 - ?f115");
|
||||
add(L"f117", L"?f108 * ?f114");
|
||||
add(L"f118", L"668602 - ?f117");
|
||||
add(L"f119", L"?f116 - 208032");
|
||||
add(L"f120", L"?f118 - 559504");
|
||||
add(L"f121", L"?f116 + 208032");
|
||||
add(L"f122", L"?f118 + 559504");
|
||||
add(L"f123", L"?f103 + ?f1");
|
||||
add(L"f124", L"?f123 * ?f8 / ?f0");
|
||||
add(L"f125", L"0 - ?f124");
|
||||
add(L"f126", L"cos(?f125)");
|
||||
add(L"f127", L"0 - ?f126");
|
||||
add(L"f128", L"?f127 * 208032");
|
||||
add(L"f129", L"sin(?f125)");
|
||||
add(L"f130", L"0 - ?f129");
|
||||
add(L"f131", L"?f130 * 559504");
|
||||
add(L"f132", L"sqrt(?f128 * ?f128 + ?f131 * ?f131 + 0 * 0)");
|
||||
add(L"f133", L"208032 * 559504 / ?f132");
|
||||
add(L"f134", L"?f130 * ?f133");
|
||||
add(L"f135", L"?f116 + ?f134");
|
||||
add(L"f136", L"?f127 * ?f133");
|
||||
add(L"f137", L"?f118 + ?f136");
|
||||
add(L"f138", L"if(?f102, 643004, ?f119)");
|
||||
add(L"f139", L"if(?f102, 668602, ?f120)");
|
||||
add(L"f140", L"if(?f102, 643004, ?f121)");
|
||||
add(L"f141", L"if(?f102, 668602, ?f122)");
|
||||
add(L"f142", L"if(?f102, ?f119, ?f135)");
|
||||
add(L"f143", L"if(?f102, ?f120, ?f137)");
|
||||
add(L"f144", L"if(?f102, ?f121, ?f135)");
|
||||
add(L"f145", L"if(?f102, ?f122, ?f137)");
|
||||
}
|
||||
};
|
||||
class oox_shape_SwooshArrow : public oox_shape
|
||||
@ -990,4 +917,5 @@ public:
|
||||
handles.push_back(h2);
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
@ -35,6 +35,14 @@
|
||||
//+ shapetypeRightArrowCallout
|
||||
//+ shapetypeUpArrowCallout
|
||||
//+ shapetypeDownArrowCallout
|
||||
//+ shapetypeCallout1
|
||||
//+ shapetypeCallout2
|
||||
//- shapetypeCallout3
|
||||
//+ shapetypeWedgeRectCallout
|
||||
//+ shapetypeWedgeRoundRectCallout
|
||||
//+ shapetypeCloudCallout
|
||||
//+ shapetypeWedgeEllipseCallout
|
||||
//+ shapetypeQuadArrowCallout
|
||||
|
||||
namespace cpdoccore
|
||||
{
|
||||
@ -277,5 +285,329 @@ public:
|
||||
handles.push_back(h2);
|
||||
}
|
||||
};
|
||||
class oox_shape_Callout1 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Callout1()
|
||||
{
|
||||
odf_type_name =L"ooxml-callout1";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 112500 -38333";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f13 / 100000");
|
||||
add(L"f9", L"?f5 * ?f12 / 100000");
|
||||
add(L"f10", L"?f4 * ?f15 / 100000");
|
||||
add(L"f11", L"?f5 * ?f14 / 100000");
|
||||
add(L"f12", L"$1 / ?f7");
|
||||
add(L"f13", L"$0 / ?f7");
|
||||
add(L"f14", L"$3 / ?f7");
|
||||
add(L"f15", L"$2 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Callout2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Callout2()
|
||||
{
|
||||
odf_type_name =L"ooxml-callout2";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z N F M ?f9 ?f8 L ?f11 ?f10 ?f13 ?f12 N";
|
||||
text_areas = L"?f0 ?f2 ?f1 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18750 -8333 18750 -16667 112500 -46667";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"?f6 / 21600");
|
||||
add(L"f8", L"?f4 * ?f15 / 100000");
|
||||
add(L"f9", L"?f5 * ?f14 / 100000");
|
||||
add(L"f10", L"?f4 * ?f17 / 100000");
|
||||
add(L"f11", L"?f5 * ?f16 / 100000");
|
||||
add(L"f12", L"?f4 * ?f19 / 100000");
|
||||
add(L"f13", L"?f5 * ?f18 / 100000");
|
||||
add(L"f14", L"$1 / ?f7");
|
||||
add(L"f15", L"$0 / ?f7");
|
||||
add(L"f16", L"$3 / ?f7");
|
||||
add(L"f17", L"$2 / ?f7");
|
||||
add(L"f18", L"$5 / ?f7");
|
||||
add(L"f19", L"$4 / ?f7");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_CloudCallout : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_CloudCallout()
|
||||
{
|
||||
odf_type_name =L"ooxml-cloudCallout";
|
||||
|
||||
enhanced_path = L"M 1930 7160 C 1530 4490 3400 1970 5270 1970 5860 1950 6470 2210 6970 2600 7450 1390 8340 650 9340 650 10004 690 10710 1050 11210 1700 11570 630 12330 0 13150 0 13840 0 14470 460 14870 1160 15330 440 16020 0 16740 0 17910 0 18900 1130 19110 2710 20240 3150 21060 4580 21060 6220 21060 6720 21000 7200 20830 7660 21310 8460 21600 9450 21600 10460 21600 12750 20310 14680 18650 15010 18650 17200 17370 18920 15770 18920 15220 18920 14700 18710 14240 18310 13820 20240 12490 21600 11000 21600 9890 21600 8840 20790 8210 19510 7620 20000 7930 20290 6240 20290 4850 20290 3570 19280 2900 17640 1300 17600 480 16300 480 14660 480 13900 690 13210 1070 12640 380 12160 0 11210 0 10120 0 8590 840 7330 1930 7160 Z N M 1930 7160 C 1950 7410 2040 7690 2090 7920 F N M 6970 2600 C 7200 2790 7480 3050 7670 3310 F N M 11210 1700 C 11130 1910 11080 2160 11030 2400 F N M 14870 1160 C 14720 1400 14640 1720 14540 2010 F N M 19110 2710 C 19130 2890 19230 3290 19190 3380 F N M 20830 7660 C 20660 8170 20430 8620 20110 8990 F N M 18660 15010 C 18740 14200 18280 12200 17000 11450 F N M 14240 18310 C 14320 17980 14350 17680 14370 17360 F N M 8220 19510 C 8060 19250 7960 18950 7860 18640 F N M 2900 17640 C 3090 17600 3280 17540 3460 17450 F N M 1070 12640 C 1400 12900 1780 13130 2330 13040 F N U ?f17 ?f18 1800 1800 0 23592960 Z N U ?f19 ?f20 1200 1200 0 23592960 Z N U ?f13 ?f14 700 700 0 23592960 Z N";
|
||||
text_areas = L"3000 3320 17110 17330";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"6300 24300";
|
||||
glue_points = L"0 10800 10800 21600 21600 10800 10800 0 ?f13 ?f14";
|
||||
|
||||
add(L"f0", L"$0 -10800");
|
||||
add(L"f1", L"$1 -10800");
|
||||
add(L"f2", L"atan2(?f1 ,?f0 )/(pi/180)");
|
||||
add(L"f3", L"10800*cos(?f2 *(pi/180))");
|
||||
add(L"f4", L"10800*sin(?f2 *(pi/180))");
|
||||
add(L"f5", L"?f3 +10800");
|
||||
add(L"f6", L"?f4 +10800");
|
||||
add(L"f7", L"$0 -?f5 ");
|
||||
add(L"f8", L"$1 -?f6 ");
|
||||
add(L"f9", L"?f7 /3");
|
||||
add(L"f10", L"?f8 /3");
|
||||
add(L"f11", L"?f7 *2/3");
|
||||
add(L"f12", L"?f8 *2/3");
|
||||
add(L"f13", L"$0 ");
|
||||
add(L"f14", L"$1 ");
|
||||
add(L"f15", L"?f3 /12");
|
||||
add(L"f16", L"?f4 /12");
|
||||
add(L"f17", L"?f9 +?f5 -?f15 ");
|
||||
add(L"f18", L"?f10 +?f6 -?f16 ");
|
||||
add(L"f19", L"?f11 +?f5 ");
|
||||
add(L"f20", L"?f12 +?f6 ");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1;
|
||||
|
||||
h1.position = L"$0 $1";
|
||||
handles.push_back(h1);
|
||||
}
|
||||
};
|
||||
class oox_shape_WedgeRectCallout : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_WedgeRectCallout()
|
||||
{
|
||||
odf_type_name =L"ooxml-wedgeRectCallout";
|
||||
|
||||
enhanced_path = L"M 0 0 L 0 3590 ?f2 ?f3 0 8970 0 12630 ?f4 ?f5 0 18010 0 21600 3590 21600 ?f6 ?f7 8970 21600 12630 21600 ?f8 ?f9 18010 21600 21600 21600 21600 18010 ?f10 ?f11 21600 12630 21600 8970 ?f12 ?f13 21600 3590 21600 0 18010 0 ?f14 ?f15 12630 0 8970 0 ?f16 ?f17 3590 0 0 0 Z N";
|
||||
text_areas = L"0 0 21600 21600";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"6300 24300";
|
||||
glue_points = L"?f40 ?f41";
|
||||
|
||||
add(L"f0", L"$0 -10800");
|
||||
add(L"f1", L"$1 -10800");
|
||||
add(L"f2", L"if(?f18 ,$0 ,0)");
|
||||
add(L"f3", L"if(?f18 ,$1 ,6280)");
|
||||
add(L"f4", L"if(?f23 ,$0 ,0)");
|
||||
add(L"f5", L"if(?f23 ,$1 ,15320)");
|
||||
add(L"f6", L"if(?f26 ,$0 ,6280)");
|
||||
add(L"f7", L"if(?f26 ,$1 ,21600)");
|
||||
add(L"f8", L"if(?f29 ,$0 ,15320)");
|
||||
add(L"f9", L"if(?f29 ,$1 ,21600)");
|
||||
add(L"f10", L"if(?f32 ,$0 ,21600)");
|
||||
add(L"f11", L"if(?f32 ,$1 ,15320)");
|
||||
add(L"f12", L"if(?f34 ,$0 ,21600)");
|
||||
add(L"f13", L"if(?f34 ,$1 ,6280)");
|
||||
add(L"f14", L"if(?f36 ,$0 ,15320)");
|
||||
add(L"f15", L"if(?f36 ,$1 ,0)");
|
||||
add(L"f16", L"if(?f38 ,$0 ,6280)");
|
||||
add(L"f17", L"if(?f38 ,$1 ,0)");
|
||||
add(L"f18", L"if($0 ,-1,?f19 )");
|
||||
add(L"f19", L"if(?f1 ,-1,?f22 )");
|
||||
add(L"f20", L"abs(?f0 )");
|
||||
add(L"f21", L"abs(?f1 )");
|
||||
add(L"f22", L"?f20 -?f21 ");
|
||||
add(L"f23", L"if($0 ,-1,?f24 )");
|
||||
add(L"f24", L"if(?f1 ,?f22 ,-1)");
|
||||
add(L"f25", L"$1 -21600");
|
||||
add(L"f26", L"if(?f25 ,?f27 ,-1)");
|
||||
add(L"f27", L"if(?f0 ,-1,?f28 )");
|
||||
add(L"f28", L"?f21 -?f20 ");
|
||||
add(L"f29", L"if(?f25 ,?f30 ,-1)");
|
||||
add(L"f30", L"if(?f0 ,?f28 ,-1)");
|
||||
add(L"f31", L"$0 -21600");
|
||||
add(L"f32", L"if(?f31 ,?f33 ,-1)");
|
||||
add(L"f33", L"if(?f1 ,?f22 ,-1)");
|
||||
add(L"f34", L"if(?f31 ,?f35 ,-1)");
|
||||
add(L"f35", L"if(?f1 ,-1,?f22 )");
|
||||
add(L"f36", L"if($1 ,-1,?f37 )");
|
||||
add(L"f37", L"if(?f0 ,?f28 ,-1)");
|
||||
add(L"f38", L"if($1 ,-1,?f39 )");
|
||||
add(L"f39", L"if(?f0 ,-1,?f28 )");
|
||||
add(L"f40", L"$0 ");
|
||||
add(L"f41", L"$1 ");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1;
|
||||
|
||||
h1.position = L"$0 $1";
|
||||
handles.push_back(h1);
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_WedgeRoundRectCallout : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_WedgeRoundRectCallout()
|
||||
{
|
||||
odf_type_name =L"ooxml-wedgeRoundRectCallout";
|
||||
|
||||
enhanced_path = L"M 3590 0 X 0 3590 L ?f2 ?f3 0 8970 0 12630 ?f4 ?f5 0 18010 Y 3590 21600 L ?f6 ?f7 8970 21600 12630 21600 ?f8 ?f9 18010 21600 X 21600 18010 L ?f10 ?f11 21600 12630 21600 8970 ?f12 ?f13 21600 3590 Y 18010 0 L ?f14 ?f15 12630 0 8970 0 ?f16 ?f17 Z N";
|
||||
text_areas = L"800 800 20800 20800";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"6300 24300";
|
||||
glue_points = L"?f40 ?f41";
|
||||
|
||||
add(L"f0", L"$0 -10800");
|
||||
add(L"f1", L"$1 -10800");
|
||||
add(L"f2", L"if(?f18 ,$0 ,0)");
|
||||
add(L"f3", L"if(?f18 ,$1 ,6280)");
|
||||
add(L"f4", L"if(?f23 ,$0 ,0)");
|
||||
add(L"f5", L"if(?f23 ,$1 ,15320)");
|
||||
add(L"f6", L"if(?f26 ,$0 ,6280)");
|
||||
add(L"f7", L"if(?f26 ,$1 ,21600)");
|
||||
add(L"f8", L"if(?f29 ,$0 ,15320)");
|
||||
add(L"f9", L"if(?f29 ,$1 ,21600)");
|
||||
add(L"f10", L"if(?f32 ,$0 ,21600)");
|
||||
add(L"f11", L"if(?f32 ,$1 ,15320)");
|
||||
add(L"f12", L"if(?f34 ,$0 ,21600)");
|
||||
add(L"f13", L"if(?f34 ,$1 ,6280)");
|
||||
add(L"f14", L"if(?f36 ,$0 ,15320)");
|
||||
add(L"f15", L"if(?f36 ,$1 ,0)");
|
||||
add(L"f16", L"if(?f38 ,$0 ,6280)");
|
||||
add(L"f17", L"if(?f38 ,$1 ,0)");
|
||||
add(L"f18", L"if($0 ,-1,?f19 )");
|
||||
add(L"f19", L"if(?f1 ,-1,?f22 )");
|
||||
add(L"f20", L"abs(?f0 )");
|
||||
add(L"f21", L"abs(?f1 )");
|
||||
add(L"f22", L"?f20 -?f21 ");
|
||||
add(L"f23", L"if($0 ,-1,?f24 )");
|
||||
add(L"f24", L"if(?f1 ,?f22 ,-1)");
|
||||
add(L"f25", L"$1 -21600");
|
||||
add(L"f26", L"if(?f25 ,?f27 ,-1)");
|
||||
add(L"f27", L"if(?f0 ,-1,?f28 )");
|
||||
add(L"f28", L"?f21 -?f20 ");
|
||||
add(L"f29", L"if(?f25 ,?f30 ,-1)");
|
||||
add(L"f30", L"if(?f0 ,?f28 ,-1)");
|
||||
add(L"f31", L"$0 -21600");
|
||||
add(L"f32", L"if(?f31 ,?f33 ,-1)");
|
||||
add(L"f33", L"if(?f1 ,?f22 ,-1)");
|
||||
add(L"f34", L"if(?f31 ,?f35 ,-1)");
|
||||
add(L"f35", L"if(?f1 ,-1,?f22 )");
|
||||
add(L"f36", L"if($1 ,-1,?f37 )");
|
||||
add(L"f37", L"if(?f0 ,?f28 ,-1)");
|
||||
add(L"f38", L"if($1 ,-1,?f39 )");
|
||||
add(L"f39", L"if(?f0 ,-1,?f28 )");
|
||||
add(L"f40", L"$0 ");
|
||||
add(L"f41", L"$1 ");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1;
|
||||
|
||||
h1.position = L"$0 $1";
|
||||
handles.push_back(h1);
|
||||
}
|
||||
};
|
||||
class oox_shape_WedgeEllipseCallout : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_WedgeEllipseCallout()
|
||||
{
|
||||
odf_type_name =L"ooxml-wedgeEllipseCallout";
|
||||
|
||||
enhanced_path = L"W 0 0 21600 21600 ?f22 ?f23 ?f18 ?f19 L ?f14 ?f15 Z N";
|
||||
text_areas = L"3200 3200 18400 18400";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"6300 24300";
|
||||
glue_points = L"3160 3160 3160 18440 18440 18440 18440 3160 ?f14 ?f15";
|
||||
|
||||
add(L"f0", L"$0 -10800");
|
||||
add(L"f1", L"$1 -10800");
|
||||
add(L"f2", L"?f0 *?f0 ");
|
||||
add(L"f3", L"?f1 *?f1 ");
|
||||
add(L"f4", L"?f2 +?f3 ");
|
||||
add(L"f5", L"sqrt(?f4 )");
|
||||
add(L"f6", L"?f5 -10800");
|
||||
add(L"f7", L"atan2(?f1 ,?f0 )/(pi/180)");
|
||||
add(L"f8", L"?f7 -10");
|
||||
add(L"f9", L"?f7 +10");
|
||||
add(L"f10", L"10800*cos(?f7 *(pi/180))");
|
||||
add(L"f11", L"10800*sin(?f7 *(pi/180))");
|
||||
add(L"f12", L"?f10 +10800");
|
||||
add(L"f13", L"?f11 +10800");
|
||||
add(L"f14", L"if(?f6 ,$0 ,?f12 )");
|
||||
add(L"f15", L"if(?f6 ,$1 ,?f13 )");
|
||||
add(L"f16", L"10800*cos(?f8 *(pi/180))");
|
||||
add(L"f17", L"10800*sin(?f8 *(pi/180))");
|
||||
add(L"f18", L"?f16 +10800");
|
||||
add(L"f19", L"?f17 +10800");
|
||||
add(L"f20", L"10800*cos(?f9 *(pi/180))");
|
||||
add(L"f21", L"10800*sin(?f9 *(pi/180))");
|
||||
add(L"f22", L"?f20 +10800");
|
||||
add(L"f23", L"?f21 +10800");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1;
|
||||
|
||||
h1.position = L"$0 $1";
|
||||
handles.push_back(h1);
|
||||
}
|
||||
};
|
||||
class oox_shape_QuadArrowCallout : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_QuadArrowCallout()
|
||||
{
|
||||
odf_type_name =L"ooxml-quadArrowCallout";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f6 L ?f17 ?f30 ?f17 ?f32 ?f21 ?f32 ?f21 ?f28 ?f25 ?f28 ?f25 ?f17 ?f23 ?f17 ?f9 ?f2 ?f24 ?f17 ?f26 ?f17 ?f26 ?f28 ?f22 ?f28 ?f22 ?f32 ?f20 ?f32 ?f20 ?f30 ?f1 ?f6 ?f20 ?f31 ?f20 ?f33 ?f22 ?f33 ?f22 ?f29 ?f26 ?f29 ?f26 ?f27 ?f24 ?f27 ?f9 ?f3 ?f23 ?f27 ?f25 ?f27 ?f25 ?f29 ?f21 ?f29 ?f21 ?f33 ?f17 ?f33 ?f17 ?f31 Z N";
|
||||
text_areas = L"?f21 ?f28 ?f22 ?f29";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"18515 18515 18515 48123";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f4 / 2");
|
||||
add(L"f6", L"?f2 + ?f5");
|
||||
add(L"f7", L"?f1 - ?f0");
|
||||
add(L"f8", L"?f7 / 2");
|
||||
add(L"f9", L"?f0 + ?f8");
|
||||
add(L"f10", L"min(?f7, ?f4)");
|
||||
add(L"f11", L"$1");
|
||||
add(L"f12", L"$0");
|
||||
add(L"f13", L"$2");
|
||||
add(L"f14", L"$3");
|
||||
add(L"f15", L"?f10 * ?f11 / 100000");
|
||||
add(L"f16", L"?f10 * ?f12 / 200000");
|
||||
add(L"f17", L"?f10 * ?f13 / 100000");
|
||||
add(L"f18", L"?f7 * ?f14 / 200000");
|
||||
add(L"f19", L"?f4 * ?f14 / 200000");
|
||||
add(L"f20", L"?f1 - ?f17");
|
||||
add(L"f21", L"?f9 - ?f18");
|
||||
add(L"f22", L"?f9 + ?f18");
|
||||
add(L"f23", L"?f9 - ?f15");
|
||||
add(L"f24", L"?f9 + ?f15");
|
||||
add(L"f25", L"?f9 - ?f16");
|
||||
add(L"f26", L"?f9 + ?f16");
|
||||
add(L"f27", L"?f3 - ?f17");
|
||||
add(L"f28", L"?f6 - ?f19");
|
||||
add(L"f29", L"?f6 + ?f19");
|
||||
add(L"f30", L"?f6 - ?f15");
|
||||
add(L"f31", L"?f6 + ?f15");
|
||||
add(L"f32", L"?f6 - ?f16");
|
||||
add(L"f33", L"?f6 + ?f16");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -31,23 +31,28 @@
|
||||
*/
|
||||
//+ shapetypeArc,
|
||||
//+ shapetypeBevel,
|
||||
//+ shapetypeCan,
|
||||
//+ shapetypeChevron,
|
||||
//+ shapetypeChord,
|
||||
//+ shapetypeCorner,
|
||||
// shapetypeCornerTabs,
|
||||
// shapetypeDecagon,
|
||||
//+ shapetypeCube,
|
||||
//+ shapetypeDecagon,
|
||||
// shapetypeDiagStripe,
|
||||
//+ shapetypeDiamond
|
||||
// shapetypeDodecagon,
|
||||
//+ shapetypeDodecagon,
|
||||
//+ shapetypeDoubleWave,
|
||||
//+ shapetypeFunnel,
|
||||
//+ shapetypeGear6,
|
||||
//+ shapetypeGear9,
|
||||
// shapetypeHalfFrame,
|
||||
// shapetypeHeptagon,
|
||||
//+ shapetypeHeptagon,
|
||||
//+ shapetypeHexagon,
|
||||
//+ shapetypeHomePlate,
|
||||
// shapetypeNonIsoscelesTrapezoid,
|
||||
//+ shapetypeOctagon,
|
||||
//+ shapetypeParallelogram
|
||||
//+ shapetypePentagon,
|
||||
//+ shapetypePie,
|
||||
//+ shapetypePieWedge,
|
||||
//+ shapetypePlaque,
|
||||
@ -282,55 +287,52 @@ public:
|
||||
odf_type_name =L"ooxml-wave";
|
||||
|
||||
modifiers = L"12500 0";
|
||||
enhanced_path = L"M ?f13 ?f2 C ?f17 ?f4 ?f18 ?f5 ?f15 ?f2 L ?f20 ?f6 C ?f22 ?f8 ?f21 ?f7 ?f19 ?f6 Z N";
|
||||
text_areas = L"?f27 ?f29 ?f28 ?f30";
|
||||
glue_points = L"?f35 ?f10 ?f19 ?f6 ?f28 ?f14 ?f38 ?f6";
|
||||
view_box = L"0 0 0 0";
|
||||
enhanced_path = L"M ?f23 ?f12 C ?f27 ?f14 ?f28 ?f15 ?f25 ?f12 L ?f30 ?f16 C ?f32 ?f18 ?f31 ?f17 ?f29 ?f16 Z N";
|
||||
text_areas = L"?f36 ?f38 ?f37 ?f39";
|
||||
glue_points = L"?f35 ?f12 ?f21 ?f6 ?f34 ?f16 ?f33 ?f6";
|
||||
view_box = L"0 0 21600 21600";
|
||||
|
||||
add(L"f0", L"if(0-$0 ,0,if(20000-$0 ,$0 ,20000))");
|
||||
add(L"f1", L"if(-10000-$1 ,-10000,if(10000-$1 ,$1 ,10000))");
|
||||
add(L"f2", L"logheight*?f0 /100000");
|
||||
add(L"f3", L"?f2 *10/3");
|
||||
add(L"f4", L"?f2 +0-?f3 ");
|
||||
add(L"f5", L"?f2 +?f3 -0");
|
||||
add(L"f6", L"logheight+0-?f2 ");
|
||||
add(L"f7", L"?f6 +0-?f3 ");
|
||||
add(L"f8", L"?f6 +?f3 -0");
|
||||
add(L"f9", L"logwidth*?f1 /100000");
|
||||
add(L"f10", L"logwidth*?f1 /50000");
|
||||
add(L"f11", L"abs(?f9 )");
|
||||
add(L"f12", L"if(?f10 ,0,?f10 )");
|
||||
add(L"f13", L"0+0-?f12 ");
|
||||
add(L"f14", L"if(?f10 ,?f10 ,0)");
|
||||
add(L"f15", L"logwidth+0-?f14 ");
|
||||
add(L"f16", L"(?f12 +?f15 )/3");
|
||||
add(L"f17", L"?f13 +?f16 -0");
|
||||
add(L"f18", L"(?f17 +?f15 )/2");
|
||||
add(L"f19", L"0+?f14 -0");
|
||||
add(L"f20", L"logwidth+?f12 -0");
|
||||
add(L"f21", L"?f19 +?f16 -0");
|
||||
add(L"f22", L"(?f21 +?f20 )/2");
|
||||
add(L"f23", L"logwidth+0-?f11");
|
||||
add(L"f24", L"logwidth/2");
|
||||
add(L"f25", L"?f24 +?f9 -0");
|
||||
add(L"f26", L"?f24 +0-?f9 ");
|
||||
add(L"f27", L"max(?f13 ,?f19 )");
|
||||
add(L"f28", L"min(?f15 ,?f20 )");
|
||||
add(L"f29", L"logheight*?f0 /50000");
|
||||
add(L"f30", L"logheight+0-?f29 ");
|
||||
add(L"f31", L"logheight");
|
||||
add(L"f32", L"logheight/2");
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f4 / 2");
|
||||
add(L"f6", L"?f2 + ?f5");
|
||||
add(L"f7", L"?f1 - ?f0");
|
||||
add(L"f8", L"?f7 / 2");
|
||||
add(L"f9", L"?f0 + ?f8");
|
||||
add(L"f10", L"$0");
|
||||
add(L"f11", L"$1");
|
||||
add(L"f12", L"?f4 * ?f10 / 100000");
|
||||
add(L"f13", L"?f12 * 10 / 3");
|
||||
add(L"f14", L"?f12 - ?f13");
|
||||
add(L"f15", L"?f12 + ?f13");
|
||||
add(L"f16", L"?f3 - ?f12");
|
||||
add(L"f17", L"?f16 - ?f13");
|
||||
add(L"f18", L"?f16 + ?f13");
|
||||
add(L"f19", L"?f7 * ?f11 / 100000");
|
||||
add(L"f20", L"?f7 * ?f11 / 50000");
|
||||
add(L"f21", L"abs(?f19)");
|
||||
add(L"f22", L"if(?f20, 0, ?f20)");
|
||||
add(L"f23", L"?f0 - ?f22");
|
||||
add(L"f24", L"if(?f20, ?f20, 0)");
|
||||
add(L"f25", L"?f1 - ?f24");
|
||||
add(L"f26", L"(?f22 + ?f25) / 3");
|
||||
add(L"f27", L"?f23 + ?f26");
|
||||
add(L"f28", L"(?f27 + ?f25) / 2");
|
||||
add(L"f29", L"?f0 + ?f24");
|
||||
add(L"f30", L"?f1 + ?f22");
|
||||
add(L"f31", L"?f29 + ?f26");
|
||||
add(L"f32", L"(?f31 + ?f30) / 2");
|
||||
add(L"f33", L"?f1 - ?f21");
|
||||
add(L"f34", L"?f9 + ?f19");
|
||||
add(L"f35", L"?f9 - ?f19");
|
||||
add(L"f36", L"max(?f23, ?f29)");
|
||||
add(L"f37", L"min(?f25, ?f30)");
|
||||
add(L"f38", L"?f4 * ?f10 / 50000");
|
||||
add(L"f39", L"?f3 - ?f38");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1, h2;
|
||||
h1.position = L"0 ?f2";
|
||||
h1.y_maximum= L"20000";
|
||||
h1.y_minimum= L"0";
|
||||
handles.push_back(h1);
|
||||
|
||||
h2.position = L"?f25 ?f31";
|
||||
h2.x_maximum= L"10000";
|
||||
h2.x_minimum= L"-10000";
|
||||
handles.push_back(h2);
|
||||
}
|
||||
};
|
||||
class oox_shape_DoubleWave : public oox_shape
|
||||
@ -338,7 +340,7 @@ class oox_shape_DoubleWave : public oox_shape
|
||||
public:
|
||||
oox_shape_DoubleWave()
|
||||
{
|
||||
odf_type_name =L"ooxml-DoubleWave";
|
||||
odf_type_name =L"ooxml-doubleWave";
|
||||
|
||||
modifiers = L"6500 0";
|
||||
enhanced_path = L"M ?f21 ?f10 C ?f25 ?f12 ?f27 ?f13 ?f28 ?f10 ?f29 ?f12 ?f30 ?f13 ?f23 ?f10 L ?f32 ?f14 C ?f37 ?f16 ?f36 ?f15 ?f35 ?f14 ?f34 ?f16 ?f33 ?f15 ?f31 ?f14 Z N";
|
||||
@ -1316,20 +1318,27 @@ public:
|
||||
{
|
||||
odf_type_name =L"ooxml-bevel";
|
||||
|
||||
enhanced_path = L"M ?f2 ?f2 L ?f3 ?f2 ?f3 ?f4 ?f2 ?f4 Z S N M 0 0 L ?f5 0 ?f3 ?f2 ?f2 ?f2 Z K S N M 0 ?f8 L ?f2 ?f4 ?f3 ?f4 ?f5 ?f8 Z I S N M 0 0 L ?f2 ?f2 ?f2 ?f4 0 ?f8 Z J S N M ?f5 0 L ?f5 ?f8 ?f3 ?f4 ?f3 ?f2 Z H S N M 0 0 L ?f5 0 ?f5 ?f8 0 ?f8 Z M ?f2 ?f2 L ?f3 ?f2 ?f3 ?f4 ?f2 ?f4 Z M 0 0 L ?f2 ?f2 M 0 ?f8 L ?f2 ?f4 M ?f5 0 L ?f3 ?f2 M ?f5 ?f8 L ?f3 ?f4 F N";
|
||||
enhanced_path = L"S M ?f12 ?f12 L ?f13 ?f12 ?f13 ?f14 ?f12 ?f14 Z N S M ?f0 ?f2 L ?f1 ?f2 ?f13 ?f12 ?f12 ?f12 Z N S M ?f0 ?f3 L ?f12 ?f14 ?f13 ?f14 ?f1 ?f3 Z N S M ?f0 ?f2 L ?f12 ?f12 ?f12 ?f14 ?f0 ?f3 Z N S M ?f1 ?f2 L ?f1 ?f3 ?f13 ?f14 ?f13 ?f12 Z N F M ?f0 ?f2 L ?f1 ?f2 ?f1 ?f3 ?f0 ?f3 Z M ?f12 ?f12 L ?f13 ?f12 ?f13 ?f14 ?f12 ?f14 Z M ?f0 ?f2 L ?f12 ?f12 M ?f0 ?f3 L ?f12 ?f14 M ?f1 ?f2 L ?f13 ?f12 M ?f1 ?f3 L ?f13 ?f14 N";
|
||||
text_areas = L"?f2 ?f2 ?f3 ?f4";
|
||||
view_box = L"0 0 0 0";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"12500";
|
||||
glue_points = L"?f13 ?f6 ?f9 ?f14 ?f12 ?f6 ?f9 ?f12";
|
||||
|
||||
add(L"f0", L"if(0-$0 ,0,if(50000-$0 ,$0 ,50000))");
|
||||
add(L"f1", L"min(logwidth,logheight)");
|
||||
add(L"f2", L"?f1 *?f0 /100000");
|
||||
add(L"f3", L"logwidth+0-?f2 ");
|
||||
add(L"f4", L"logheight+0-?f2 ");
|
||||
add(L"f5", L"logwidth");
|
||||
add(L"f6", L"logheight/2");
|
||||
add(L"f7", L"logwidth/2");
|
||||
add(L"f8", L"logheight");
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f4 / 2");
|
||||
add(L"f6", L"?f2 + ?f5");
|
||||
add(L"f7", L"?f1 - ?f0");
|
||||
add(L"f8", L"?f7 / 2");
|
||||
add(L"f9", L"?f0 + ?f8");
|
||||
add(L"f10", L"min(?f7, ?f4)");
|
||||
add(L"f11", L"$0");
|
||||
add(L"f12", L"?f10 * ?f11 / 100000");
|
||||
add(L"f13", L"?f1 - ?f12");
|
||||
add(L"f14", L"?f3 - ?f12");
|
||||
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h;
|
||||
@ -1541,56 +1550,6 @@ public:
|
||||
handles.push_back(h);
|
||||
}
|
||||
};
|
||||
class oox_shape_bracketPair : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_bracketPair()
|
||||
{
|
||||
odf_type_name =L"ooxml-bracketPair";
|
||||
|
||||
//enhanced_path = L"M 0 ?f2 L ?f3 0 L ?f11 ?f4 L ?f2 ?f10 Z S N M ?f2 ?f10 L 0 ?f2 M ?f3 0 L ?f11 ?f4 F N";
|
||||
enhanced_path = L"M 0 ?f2 G ?f2 ?f2 ?f12 ?f13 L ?f3 0 G ?f2 ?f2 ?f14 ?f15 L ?f11 ?f4 G ?f2 ?f2 ?f16 ?f17 L ?f2 ?f10 G ?f2 ?f2 ?f18 ?f19 Z S N M ?f2 ?f10 G ?f2 ?f2 ?f20 ?f21 L 0 ?f2 G ?f2 ?f2 ?f22 ?f23 M ?f3 0 G ?f2 ?f2 ?f24 ?f25 L ?f11 ?f4 G ?f2 ?f2 ?f26 ?f27 F N";
|
||||
text_areas = L"?f5 ?f5 ?f6 ?f7";
|
||||
view_box = L"0 0 0 0";
|
||||
modifiers = L"23051";
|
||||
|
||||
add(L"f0", L"if(0-$0 ,0,if(50000-$0 ,$0 ,50000))");
|
||||
add(L"f1", L"min(logwidth,logheight)");
|
||||
add(L"f2", L"?f1 *?f0 /100000");
|
||||
add(L"f3", L"logwidth+0-?f2 ");
|
||||
add(L"f4", L"logheight+0-?f2 ");
|
||||
add(L"f5", L"?f2 *29289/100000");
|
||||
add(L"f6", L"logwidth+0-?f5 ");
|
||||
add(L"f7", L"logheight+0-?f5 ");
|
||||
add(L"f8", L"logwidth/2");
|
||||
add(L"f9", L"logheight/2");
|
||||
add(L"f10", L"logheight");
|
||||
add(L"f11", L"logwidth");
|
||||
add(L"f12", L"(10800000)/60000.0");
|
||||
add(L"f13", L"(5400000)/60000.0");
|
||||
add(L"f14", L"(16200000)/60000.0");
|
||||
add(L"f15", L"(5400000)/60000.0");
|
||||
add(L"f16", L"(0)/60000.0");
|
||||
add(L"f17", L"(5400000)/60000.0");
|
||||
add(L"f18", L"(5400000)/60000.0");
|
||||
add(L"f19", L"(5400000)/60000.0");
|
||||
add(L"f20", L"(5400000)/60000.0");
|
||||
add(L"f21", L"(5400000)/60000.0");
|
||||
add(L"f22", L"(10800000)/60000.0");
|
||||
add(L"f23", L"(5400000)/60000.0");
|
||||
add(L"f24", L"(16200000)/60000.0");
|
||||
add(L"f25", L"(5400000)/60000.0");
|
||||
add(L"f26", L"(0)/60000.0");
|
||||
add(L"f27", L"(5400000)/60000.0");
|
||||
/////////////////////////////////////////////////////////
|
||||
_handle h1;
|
||||
|
||||
h1.position = L"0 ?f2";
|
||||
h1.y_minimum = L"0";
|
||||
h1.y_maximum = L"50000";
|
||||
handles.push_back(h1);
|
||||
}
|
||||
};
|
||||
class oox_shape_Frame : public oox_shape
|
||||
{
|
||||
public:
|
||||
@ -1623,4 +1582,491 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_Pentagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Pentagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-pentagon";
|
||||
|
||||
enhanced_path = L"M ?f34 ?f38 L ?f11 ?f4 ?f37 ?f38 ?f36 ?f39 ?f35 ?f39 Z N";
|
||||
text_areas = L"?f35 ?f40 ?f36 ?f39";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f34 ?f38 ?f35 ?f39 ?f36 ?f39 ?f37 ?f38";
|
||||
|
||||
add(L"f0", L"10800000");
|
||||
add(L"f1", L"5400000");
|
||||
add(L"f2", L"left");
|
||||
add(L"f3", L"right");
|
||||
add(L"f4", L"top");
|
||||
add(L"f5", L"bottom");
|
||||
add(L"f6", L"?f5 - ?f4");
|
||||
add(L"f7", L"?f6 / 2");
|
||||
add(L"f8", L"?f4 + ?f7");
|
||||
add(L"f9", L"?f3 - ?f2");
|
||||
add(L"f10", L"?f9 / 2");
|
||||
add(L"f11", L"?f2 + ?f10");
|
||||
add(L"f12", L"5419351 / 1725033");
|
||||
add(L"f13", L"?f10 * ?f41 / 100000");
|
||||
add(L"f14", L"?f7 * ?f42 / 100000");
|
||||
add(L"f15", L"?f8 * ?f42 / 100000");
|
||||
add(L"f16", L"1080000 + ?f1");
|
||||
add(L"f17", L"?f16 * ?f12 / ?f0");
|
||||
add(L"f18", L"0 - ?f17");
|
||||
add(L"f19", L"sin(?f18)");
|
||||
add(L"f20", L"0 - ?f19");
|
||||
add(L"f21", L"?f20 * ?f13");
|
||||
add(L"f22", L"18360000 + ?f1");
|
||||
add(L"f23", L"?f22 * ?f12 / ?f0");
|
||||
add(L"f24", L"0 - ?f23");
|
||||
add(L"f25", L"sin(?f24)");
|
||||
add(L"f26", L"0 - ?f25");
|
||||
add(L"f27", L"?f26 * ?f13");
|
||||
add(L"f28", L"cos(?f18)");
|
||||
add(L"f29", L"0 - ?f28");
|
||||
add(L"f30", L"?f29 * ?f14");
|
||||
add(L"f31", L"cos(?f24)");
|
||||
add(L"f32", L"0 - ?f31");
|
||||
add(L"f33", L"?f32 * ?f14");
|
||||
add(L"f34", L"?f11 - ?f21");
|
||||
add(L"f35", L"?f11 - ?f27");
|
||||
add(L"f36", L"?f11 + ?f27");
|
||||
add(L"f37", L"?f11 + ?f21");
|
||||
add(L"f38", L"?f15 - ?f30");
|
||||
add(L"f39", L"?f15 - ?f33");
|
||||
add(L"f40", L"?f38 * ?f27 / ?f21");
|
||||
add(L"f41", L"105146");
|
||||
add(L"f42", L"110557");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_Octagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Octagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-octagon";
|
||||
|
||||
modifiers = L"29289";
|
||||
enhanced_path = L"M ?f0 ?f8 L ?f8 ?f2 ?f9 ?f2 ?f1 ?f8 ?f1 ?f10 ?f9 ?f3 ?f8 ?f3 ?f0 ?f10 Z N";
|
||||
text_areas = L"?f11 ?f11 ?f12 ?f13";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f1 ?f8 ?f1 ?f10 ?f9 ?f3 ?f8 ?f3 ?f0 ?f10 ?f0 ?f8 ?f8 ?f2 ?f9 ?f2";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"$0");
|
||||
add(L"f8", L"?f6 * ?f7 / 100000");
|
||||
add(L"f9", L"?f1 - ?f8");
|
||||
add(L"f10", L"?f3 - ?f8");
|
||||
add(L"f11", L"?f8 / 2");
|
||||
add(L"f12", L"?f1 - ?f11");
|
||||
add(L"f13", L"?f3 - ?f11");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Hexagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Hexagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-hexagon";
|
||||
|
||||
modifiers = L"28921 115470";
|
||||
enhanced_path = L"M ?f2 ?f8 L ?f15 ?f23 ?f16 ?f23 ?f3 ?f8 ?f16 ?f24 ?f15 ?f24 Z N";
|
||||
text_areas = L"?f33 ?f34 ?f35 ?f36";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f16 ?f24 ?f15 ?f24 ?f15 ?f23 ?f16 ?f23";
|
||||
|
||||
add(L"f0", L"10800000");
|
||||
add(L"f1", L"5400000");
|
||||
add(L"f2", L"left");
|
||||
add(L"f3", L"right");
|
||||
add(L"f4", L"top");
|
||||
add(L"f5", L"bottom");
|
||||
add(L"f6", L"?f5 - ?f4");
|
||||
add(L"f7", L"?f6 / 2");
|
||||
add(L"f8", L"?f4 + ?f7");
|
||||
add(L"f9", L"?f3 - ?f2");
|
||||
add(L"f10", L"min(?f9, ?f6)");
|
||||
add(L"f11", L"5419351 / 1725033");
|
||||
add(L"f12", L"50000 * ?f9 / ?f10");
|
||||
add(L"f13", L"$0");
|
||||
add(L"f14", L"?f7 * ?f37 / 100000");
|
||||
add(L"f15", L"?f10 * ?f13 / 100000");
|
||||
add(L"f16", L"?f3 - ?f15");
|
||||
add(L"f17", L"3600000 + ?f1");
|
||||
add(L"f18", L"?f17 * ?f11 / ?f0");
|
||||
add(L"f19", L"0 - ?f18");
|
||||
add(L"f20", L"cos(?f19)");
|
||||
add(L"f21", L"0 - ?f20");
|
||||
add(L"f22", L"?f21 * ?f14");
|
||||
add(L"f23", L"?f8 - ?f22");
|
||||
add(L"f24", L"?f8 + ?f22");
|
||||
add(L"f25", L"?f12 * -1 / 2");
|
||||
add(L"f26", L"?f13 + ?f25");
|
||||
add(L"f27", L"if(?f26, 4, 2)");
|
||||
add(L"f28", L"if(?f26, 3, 2)");
|
||||
add(L"f29", L"if(?f26, ?f25, 0)");
|
||||
add(L"f30", L"(?f13 + ?f29) / ?f25");
|
||||
add(L"f31", L"?f30 * ?f28 / -1");
|
||||
add(L"f32", L"?f27 + ?f31");
|
||||
add(L"f33", L"?f9 * ?f32 / 24");
|
||||
add(L"f34", L"?f6 * ?f32 / 24");
|
||||
add(L"f35", L"?f3 - ?f33");
|
||||
add(L"f36", L"?f5 - ?f34");
|
||||
add(L"f37", L"115470");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_Heptagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Heptagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-heptagon";
|
||||
|
||||
enhanced_path = L"M ?f19 ?f26 L ?f20 ?f25 ?f9 ?f2 ?f23 ?f25 ?f24 ?f26 ?f22 ?f27 ?f21 ?f27 Z N";
|
||||
text_areas = L"?f20 ?f25 ?f23 ?f28";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f23 ?f25 ?f24 ?f26 ?f22 ?f27 ?f21 ?f27 ?f19 ?f26 ?f20 ?f25";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f4 / 2");
|
||||
add(L"f6", L"?f2 + ?f5");
|
||||
add(L"f7", L"?f1 - ?f0");
|
||||
add(L"f8", L"?f7 / 2");
|
||||
add(L"f9", L"?f0 + ?f8");
|
||||
add(L"f10", L"?f8 * ?f29 / 100000");
|
||||
add(L"f11", L"?f5 * ?f30 / 100000");
|
||||
add(L"f12", L"?f6 * ?f30 / 100000");
|
||||
add(L"f13", L"?f10 * 97493 / 100000");
|
||||
add(L"f14", L"?f10 * 78183 / 100000");
|
||||
add(L"f15", L"?f10 * 43388 / 100000");
|
||||
add(L"f16", L"?f11 * 62349 / 100000");
|
||||
add(L"f17", L"?f11 * 22252 / 100000");
|
||||
add(L"f18", L"?f11 * 90097 / 100000");
|
||||
add(L"f19", L"?f9 - ?f13");
|
||||
add(L"f20", L"?f9 - ?f14");
|
||||
add(L"f21", L"?f9 - ?f15");
|
||||
add(L"f22", L"?f9 + ?f15");
|
||||
add(L"f23", L"?f9 + ?f14");
|
||||
add(L"f24", L"?f9 + ?f13");
|
||||
add(L"f25", L"?f12 - ?f16");
|
||||
add(L"f26", L"?f12 + ?f17");
|
||||
add(L"f27", L"?f12 + ?f18");
|
||||
add(L"f28", L"?f3 - ?f25");
|
||||
add(L"f29", L"102572");
|
||||
add(L"f30", L"105210");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Decagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Decagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-decagon";
|
||||
|
||||
enhanced_path = L"M ?f2 ?f8 L ?f26 ?f37 ?f27 ?f36 ?f28 ?f36 ?f29 ?f37 ?f3 ?f8 ?f29 ?f38 ?f28 ?f39 ?f27 ?f39 ?f26 ?f38 Z N";
|
||||
text_areas = L"?f6 ?f14 ?f9 ?f15";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f29 ?f37 ?f29 ?f38 ?f28 ?f39 ?f27 ?f39 ?f26 ?f38 ?f26 ?f37 ?f27 ?f36 ?f28 ?f36";
|
||||
|
||||
add(L"f0", L"10800000");
|
||||
add(L"f1", L"5400000");
|
||||
add(L"f2", L"left");
|
||||
add(L"f3", L"right");
|
||||
add(L"f4", L"top");
|
||||
add(L"f5", L"bottom");
|
||||
add(L"f6", L"?f5 - ?f4");
|
||||
add(L"f7", L"?f6 / 2");
|
||||
add(L"f8", L"?f4 + ?f7");
|
||||
add(L"f9", L"?f3 - ?f2");
|
||||
add(L"f10", L"?f9 / 2");
|
||||
add(L"f11", L"?f2 + ?f10");
|
||||
add(L"f12", L"5419351 / 1725033");
|
||||
add(L"f13", L"?f7 * ?f40 / 100000");
|
||||
add(L"f14", L"2160000 + ?f1");
|
||||
add(L"f15", L"?f14 * ?f12 / ?f0");
|
||||
add(L"f16", L"0 - ?f15");
|
||||
add(L"f17", L"sin(?f16)");
|
||||
add(L"f18", L"0 - ?f17");
|
||||
add(L"f19", L"?f18 * ?f10");
|
||||
add(L"f20", L"4320000 + ?f1");
|
||||
add(L"f21", L"?f20 * ?f12 / ?f0");
|
||||
add(L"f22", L"0 - ?f21");
|
||||
add(L"f23", L"sin(?f22)");
|
||||
add(L"f24", L"0 - ?f23");
|
||||
add(L"f25", L"?f24 * ?f10");
|
||||
add(L"f26", L"?f11 - ?f19");
|
||||
add(L"f27", L"?f11 - ?f25");
|
||||
add(L"f28", L"?f11 + ?f25");
|
||||
add(L"f29", L"?f11 + ?f19");
|
||||
add(L"f30", L"cos(?f22)");
|
||||
add(L"f31", L"0 - ?f30");
|
||||
add(L"f32", L"?f31 * ?f13");
|
||||
add(L"f33", L"cos(?f16)");
|
||||
add(L"f34", L"0 - ?f33");
|
||||
add(L"f35", L"?f34 * ?f13");
|
||||
add(L"f36", L"?f8 - ?f32");
|
||||
add(L"f37", L"?f8 - ?f35");
|
||||
add(L"f38", L"?f8 + ?f35");
|
||||
add(L"f39", L"?f8 + ?f32");
|
||||
add(L"f40", L"105146");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Dodecagon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Dodecagon()
|
||||
{
|
||||
odf_type_name =L"ooxml-dodecagon";
|
||||
|
||||
enhanced_path = L"M ?f0 ?f11 L ?f6 ?f10 ?f7 ?f2 ?f8 ?f2 ?f9 ?f10 ?f1 ?f11 ?f1 ?f12 ?f9 ?f13 ?f8 ?f3 ?f7 ?f3 ?f6 ?f13 ?f0 ?f12 Z N";
|
||||
text_areas = L"?f6 ?f10 ?f9 ?f13";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f9 ?f10 ?f1 ?f11 ?f1 ?f12 ?f9 ?f13 ?f8 ?f3 ?f7 ?f3 ?f6 ?f13 ?f0 ?f12 ?f0 ?f11 ?f6 ?f10 ?f7 ?f2 ?f8 ?f2";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"?f5 * 2894 / 21600");
|
||||
add(L"f7", L"?f5 * 7906 / 21600");
|
||||
add(L"f8", L"?f5 * 13694 / 21600");
|
||||
add(L"f9", L"?f5 * 18706 / 21600");
|
||||
add(L"f10", L"?f4 * 2894 / 21600");
|
||||
add(L"f11", L"?f4 * 7906 / 21600");
|
||||
add(L"f12", L"?f4 * 13694 / 21600");
|
||||
add(L"f13", L"?f4 * 18706 / 21600");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Cube : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Cube()
|
||||
{
|
||||
odf_type_name =L"ooxml-cube";
|
||||
|
||||
modifiers = L"25000";
|
||||
enhanced_path = L"S M ?f0 ?f8 L ?f12 ?f8 ?f12 ?f3 ?f0 ?f3 Z N S M ?f12 ?f8 L ?f1 ?f2 ?f1 ?f9 ?f12 ?f3 Z N S M ?f0 ?f8 L ?f8 ?f2 ?f1 ?f2 ?f12 ?f8 Z N F M ?f0 ?f8 L ?f8 ?f2 ?f1 ?f2 ?f1 ?f9 ?f12 ?f3 ?f0 ?f3 Z M ?f0 ?f8 L ?f12 ?f8 ?f1 ?f2 M ?f12 ?f8 L ?f12 ?f3 N";
|
||||
text_areas = L"?f0 ?f8 ?f12 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f14 ?f2 ?f13 ?f8 ?f0 ?f11 ?f13 ?f3 ?f12 ?f11 ?f1 ?f10";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"min(?f5, ?f4)");
|
||||
add(L"f7", L"$0");
|
||||
add(L"f8", L"?f6 * ?f7 / 100000");
|
||||
add(L"f9", L"?f3 - ?f8");
|
||||
add(L"f10", L"?f9 / 2");
|
||||
add(L"f11", L"(?f8 + ?f3) / 2");
|
||||
add(L"f12", L"?f1 - ?f8");
|
||||
add(L"f13", L"?f12 / 2");
|
||||
add(L"f14", L"(?f8 + ?f1) / 2");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
class oox_shape_Can : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Can()
|
||||
{
|
||||
odf_type_name =L"ooxml-can";
|
||||
|
||||
modifiers = L"25000";
|
||||
enhanced_path = L"S M ?f2 ?f13 A ?f55 ?f56 ?f57 ?f58 ?f2 ?f13 ?f52 ?f54 W ?f59 ?f60 ?f61 ?f62 ?f2 ?f13 ?f52 ?f54 L ?f3 ?f15 A ?f102 ?f103 ?f104 ?f105 ?f3 ?f15 ?f99 ?f101 W ?f106 ?f107 ?f108 ?f109 ?f3 ?f15 ?f99 ?f101 Z N S M ?f2 ?f13 A ?f130 ?f131 ?f132 ?f133 ?f2 ?f13 ?f127 ?f129 W ?f134 ?f135 ?f136 ?f137 ?f2 ?f13 ?f127 ?f129 Z N F M ?f3 ?f13 A ?f157 ?f158 ?f159 ?f160 ?f3 ?f13 ?f154 ?f156 W ?f161 ?f162 ?f163 ?f164 ?f3 ?f13 ?f154 ?f156 L ?f3 ?f15 A ?f102 ?f103 ?f104 ?f105 ?f3 ?f15 ?f99 ?f101 W ?f106 ?f107 ?f108 ?f109 ?f3 ?f15 ?f99 ?f101 L ?f2 ?f13 N";
|
||||
text_areas = L"?f0 ?f8 ?f12 ?f3";
|
||||
view_box = L"0 0 21600 21600";
|
||||
glue_points = L"?f9 ?f14";
|
||||
|
||||
add(L"f0", L"10800000");
|
||||
add(L"f1", L"5400000");
|
||||
add(L"f2", L"left");
|
||||
add(L"f3", L"right");
|
||||
add(L"f4", L"top");
|
||||
add(L"f5", L"bottom");
|
||||
add(L"f6", L"?f5 - ?f4");
|
||||
add(L"f7", L"?f3 - ?f2");
|
||||
add(L"f8", L"?f7 / 2");
|
||||
add(L"f9", L"?f2 + ?f8");
|
||||
add(L"f10", L"min(?f7, ?f6)");
|
||||
add(L"f11", L"5419351 / 1725033");
|
||||
add(L"f12", L"$0");
|
||||
add(L"f13", L"?f10 * ?f12 / 200000");
|
||||
add(L"f14", L"?f13 + ?f13");
|
||||
add(L"f15", L"?f5 - ?f13");
|
||||
add(L"f16", L"21550000 - -10800000");
|
||||
add(L"f17", L"if(?f16, -10800000, 21550000)");
|
||||
add(L"f18", L"-21550000 - ?f17");
|
||||
add(L"f19", L"if(?f18, -21550000, ?f17)");
|
||||
add(L"f20", L"?f0 + ?f19");
|
||||
add(L"f21", L"?f0 + ?f1");
|
||||
add(L"f22", L"?f21 * ?f11 / ?f0");
|
||||
add(L"f23", L"0 - ?f22");
|
||||
add(L"f24", L"cos(?f23)");
|
||||
add(L"f25", L"0 - ?f24");
|
||||
add(L"f26", L"?f25 * ?f8");
|
||||
add(L"f27", L"sin(?f23)");
|
||||
add(L"f28", L"0 - ?f27");
|
||||
add(L"f29", L"?f28 * ?f13");
|
||||
add(L"f30", L"sqrt(?f26 * ?f26 + ?f29 * ?f29 + 0 * 0)");
|
||||
add(L"f31", L"?f8 * ?f13 / ?f30");
|
||||
add(L"f32", L"?f28 * ?f31");
|
||||
add(L"f33", L"?f2 - ?f32");
|
||||
add(L"f34", L"?f25 * ?f31");
|
||||
add(L"f35", L"?f13 - ?f34");
|
||||
add(L"f36", L"?f33 - ?f8");
|
||||
add(L"f37", L"?f35 - ?f13");
|
||||
add(L"f38", L"?f33 + ?f8");
|
||||
add(L"f39", L"?f35 + ?f13");
|
||||
add(L"f40", L"?f20 + ?f1");
|
||||
add(L"f41", L"?f40 * ?f11 / ?f0");
|
||||
add(L"f42", L"0 - ?f41");
|
||||
add(L"f43", L"cos(?f42)");
|
||||
add(L"f44", L"0 - ?f43");
|
||||
add(L"f45", L"?f44 * ?f8");
|
||||
add(L"f46", L"sin(?f42)");
|
||||
add(L"f47", L"0 - ?f46");
|
||||
add(L"f48", L"?f47 * ?f13");
|
||||
add(L"f49", L"sqrt(?f45 * ?f45 + ?f48 * ?f48 + 0 * 0)");
|
||||
add(L"f50", L"?f8 * ?f13 / ?f49");
|
||||
add(L"f51", L"?f47 * ?f50");
|
||||
add(L"f52", L"?f33 + ?f51");
|
||||
add(L"f53", L"?f44 * ?f50");
|
||||
add(L"f54", L"?f35 + ?f53");
|
||||
add(L"f55", L"if(?f19, ?f2, ?f36)");
|
||||
add(L"f56", L"if(?f19, ?f13, ?f37)");
|
||||
add(L"f57", L"if(?f19, ?f2, ?f38)");
|
||||
add(L"f58", L"if(?f19, ?f13, ?f39)");
|
||||
add(L"f59", L"if(?f19, ?f36, ?f52)");
|
||||
add(L"f60", L"if(?f19, ?f37, ?f54)");
|
||||
add(L"f61", L"if(?f19, ?f38, ?f52)");
|
||||
add(L"f62", L"if(?f19, ?f39, ?f54)");
|
||||
add(L"f63", L"21550000 - ?f0");
|
||||
add(L"f64", L"if(?f63, ?f0, 21550000)");
|
||||
add(L"f65", L"-21550000 - ?f64");
|
||||
add(L"f66", L"if(?f65, -21550000, ?f64)");
|
||||
add(L"f67", L"0 + ?f66");
|
||||
add(L"f68", L"0 + ?f1");
|
||||
add(L"f69", L"?f68 * ?f11 / ?f0");
|
||||
add(L"f70", L"0 - ?f69");
|
||||
add(L"f71", L"cos(?f70)");
|
||||
add(L"f72", L"0 - ?f71");
|
||||
add(L"f73", L"?f72 * ?f8");
|
||||
add(L"f74", L"sin(?f70)");
|
||||
add(L"f75", L"0 - ?f74");
|
||||
add(L"f76", L"?f75 * ?f13");
|
||||
add(L"f77", L"sqrt(?f73 * ?f73 + ?f76 * ?f76 + 0 * 0)");
|
||||
add(L"f78", L"?f8 * ?f13 / ?f77");
|
||||
add(L"f79", L"?f75 * ?f78");
|
||||
add(L"f80", L"?f3 - ?f79");
|
||||
add(L"f81", L"?f72 * ?f78");
|
||||
add(L"f82", L"?f15 - ?f81");
|
||||
add(L"f83", L"?f80 - ?f8");
|
||||
add(L"f84", L"?f82 - ?f13");
|
||||
add(L"f85", L"?f80 + ?f8");
|
||||
add(L"f86", L"?f82 + ?f13");
|
||||
add(L"f87", L"?f67 + ?f1");
|
||||
add(L"f88", L"?f87 * ?f11 / ?f0");
|
||||
add(L"f89", L"0 - ?f88");
|
||||
add(L"f90", L"cos(?f89)");
|
||||
add(L"f91", L"0 - ?f90");
|
||||
add(L"f92", L"?f91 * ?f8");
|
||||
add(L"f93", L"sin(?f89)");
|
||||
add(L"f94", L"0 - ?f93");
|
||||
add(L"f95", L"?f94 * ?f13");
|
||||
add(L"f96", L"sqrt(?f92 * ?f92 + ?f95 * ?f95 + 0 * 0)");
|
||||
add(L"f97", L"?f8 * ?f13 / ?f96");
|
||||
add(L"f98", L"?f94 * ?f97");
|
||||
add(L"f99", L"?f80 + ?f98");
|
||||
add(L"f100", L"?f91 * ?f97");
|
||||
add(L"f101", L"?f82 + ?f100");
|
||||
add(L"f102", L"if(?f66, ?f3, ?f83)");
|
||||
add(L"f103", L"if(?f66, ?f15, ?f84)");
|
||||
add(L"f104", L"if(?f66, ?f3, ?f85)");
|
||||
add(L"f105", L"if(?f66, ?f15, ?f86)");
|
||||
add(L"f106", L"if(?f66, ?f83, ?f99)");
|
||||
add(L"f107", L"if(?f66, ?f84, ?f101)");
|
||||
add(L"f108", L"if(?f66, ?f85, ?f99)");
|
||||
add(L"f109", L"if(?f66, ?f86, ?f101)");
|
||||
add(L"f110", L"21550000 - 21600000");
|
||||
add(L"f111", L"if(?f110, 21600000, 21550000)");
|
||||
add(L"f112", L"-21550000 - ?f111");
|
||||
add(L"f113", L"if(?f112, -21550000, ?f111)");
|
||||
add(L"f114", L"?f0 + ?f113");
|
||||
add(L"f115", L"?f114 + ?f1");
|
||||
add(L"f116", L"?f115 * ?f11 / ?f0");
|
||||
add(L"f117", L"0 - ?f116");
|
||||
add(L"f118", L"cos(?f117)");
|
||||
add(L"f119", L"0 - ?f118");
|
||||
add(L"f120", L"?f119 * ?f8");
|
||||
add(L"f121", L"sin(?f117)");
|
||||
add(L"f122", L"0 - ?f121");
|
||||
add(L"f123", L"?f122 * ?f13");
|
||||
add(L"f124", L"sqrt(?f120 * ?f120 + ?f123 * ?f123 + 0 * 0)");
|
||||
add(L"f125", L"?f8 * ?f13 / ?f124");
|
||||
add(L"f126", L"?f122 * ?f125");
|
||||
add(L"f127", L"?f33 + ?f126");
|
||||
add(L"f128", L"?f119 * ?f125");
|
||||
add(L"f129", L"?f35 + ?f128");
|
||||
add(L"f130", L"if(?f113, ?f2, ?f36)");
|
||||
add(L"f131", L"if(?f113, ?f13, ?f37)");
|
||||
add(L"f132", L"if(?f113, ?f2, ?f38)");
|
||||
add(L"f133", L"if(?f113, ?f13, ?f39)");
|
||||
add(L"f134", L"if(?f113, ?f36, ?f127)");
|
||||
add(L"f135", L"if(?f113, ?f37, ?f129)");
|
||||
add(L"f136", L"if(?f113, ?f38, ?f127)");
|
||||
add(L"f137", L"if(?f113, ?f39, ?f129)");
|
||||
add(L"f138", L"0 + ?f113");
|
||||
add(L"f139", L"?f13 - ?f81");
|
||||
add(L"f140", L"?f139 - ?f13");
|
||||
add(L"f141", L"?f139 + ?f13");
|
||||
add(L"f142", L"?f138 + ?f1");
|
||||
add(L"f143", L"?f142 * ?f11 / ?f0");
|
||||
add(L"f144", L"0 - ?f143");
|
||||
add(L"f145", L"cos(?f144)");
|
||||
add(L"f146", L"0 - ?f145");
|
||||
add(L"f147", L"?f146 * ?f8");
|
||||
add(L"f148", L"sin(?f144)");
|
||||
add(L"f149", L"0 - ?f148");
|
||||
add(L"f150", L"?f149 * ?f13");
|
||||
add(L"f151", L"sqrt(?f147 * ?f147 + ?f150 * ?f150 + 0 * 0)");
|
||||
add(L"f152", L"?f8 * ?f13 / ?f151");
|
||||
add(L"f153", L"?f149 * ?f152");
|
||||
add(L"f154", L"?f80 + ?f153");
|
||||
add(L"f155", L"?f146 * ?f152");
|
||||
add(L"f156", L"?f139 + ?f155");
|
||||
add(L"f157", L"if(?f113, ?f3, ?f83)");
|
||||
add(L"f158", L"if(?f113, ?f13, ?f140)");
|
||||
add(L"f159", L"if(?f113, ?f3, ?f85)");
|
||||
add(L"f160", L"if(?f113, ?f13, ?f141)");
|
||||
add(L"f161", L"if(?f113, ?f83, ?f154)");
|
||||
add(L"f162", L"if(?f113, ?f140, ?f156)");
|
||||
add(L"f163", L"if(?f113, ?f85, ?f154)");
|
||||
add(L"f164", L"if(?f113, ?f141, ?f156)");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@ -30,6 +30,11 @@
|
||||
*
|
||||
*/
|
||||
//+ shapetypeLeftRightRibbon
|
||||
//+ shapetypeEllipseRibbon
|
||||
//+ shapetypEllipseRibbon2
|
||||
//+ shapetypEllipseRibbon
|
||||
//+ shapetypRibbon
|
||||
//+ shapetypRibbon2
|
||||
namespace cpdoccore
|
||||
{
|
||||
class oox_shape_LeftRightRibbon : public oox_shape
|
||||
@ -108,4 +113,935 @@ public:
|
||||
handles.push_back(h3);
|
||||
}
|
||||
};
|
||||
class oox_shape_EllipseRibbon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_EllipseRibbon()
|
||||
{
|
||||
odf_type_name =L"ooxml-ellipseRibbon";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f2 Q ?f23 ?f24 ?f14 ?f22 L ?f13 ?f31 Q ?f8 ?f34 ?f16 ?f31 L ?f15 ?f22 Q ?f25 ?f24 ?f1 ?f2 L ?f17 ?f37 ?f1 ?f35 Q ?f43 ?f42 ?f16 ?f38 L ?f16 ?f39 Q ?f8 ?f44 ?f13 ?f39 L ?f13 ?f38 Q ?f40 ?f42 ?f0 ?f35 L ?f7 ?f37 Z N S M ?f14 ?f45 L ?f14 ?f22 ?f13 ?f31 Q ?f8 ?f34 ?f16 ?f31 L ?f15 ?f22 ?f15 ?f45 Q ?f8 ?f46 ?f14 ?f45 Z N F M ?f0 ?f2 Q ?f23 ?f24 ?f14 ?f22 L ?f13 ?f31 Q ?f8 ?f34 ?f16 ?f31 L ?f15 ?f22 Q ?f25 ?f24 ?f1 ?f2 L ?f17 ?f37 ?f1 ?f35 Q ?f43 ?f42 ?f16 ?f38 L ?f16 ?f39 Q ?f8 ?f44 ?f13 ?f39 L ?f13 ?f38 Q ?f40 ?f42 ?f0 ?f35 L ?f7 ?f37 Z M ?f13 ?f38 L ?f13 ?f31 M ?f16 ?f31 L ?f16 ?f38 M ?f14 ?f22 L ?f14 ?f45 M ?f15 ?f45 L ?f15 ?f22 N";
|
||||
text_areas = L"?f13 ?f26 ?f16 ?f39";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"25000 50000 12500";
|
||||
glue_points = L"?f8 ?f26 ?f7 ?f37 ?f17 ?f37";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"?f5 / 2");
|
||||
add(L"f7", L"?f5 / 8");
|
||||
add(L"f8", L"?f0 + ?f6");
|
||||
add(L"f9", L"$0");
|
||||
add(L"f10", L"$1");
|
||||
add(L"f11", L"$2");
|
||||
add(L"f12", L"?f5 * ?f10 / 200000");
|
||||
add(L"f13", L"?f8 - ?f12");
|
||||
add(L"f14", L"?f13 + ?f7");
|
||||
add(L"f15", L"?f1 - ?f14");
|
||||
add(L"f16", L"?f1 - ?f13");
|
||||
add(L"f17", L"?f1 - ?f7");
|
||||
add(L"f18", L"?f4 * ?f11 / 100000");
|
||||
add(L"f19", L"4 * ?f18 / ?f5");
|
||||
add(L"f20", L"?f14 * ?f14 / ?f5");
|
||||
add(L"f21", L"?f14 - ?f20");
|
||||
add(L"f22", L"?f19 * ?f21");
|
||||
add(L"f23", L"?f14 / 2");
|
||||
add(L"f24", L"?f19 * ?f23");
|
||||
add(L"f25", L"?f1 - ?f23");
|
||||
add(L"f26", L"?f4 * ?f9 / 100000");
|
||||
add(L"f27", L"?f26 - ?f18");
|
||||
add(L"f28", L"?f13 * ?f13 / ?f5");
|
||||
add(L"f29", L"?f13 - ?f28");
|
||||
add(L"f30", L"?f19 * ?f29");
|
||||
add(L"f31", L"?f30 + ?f27");
|
||||
add(L"f32", L"?f18 + ?f27 - ?f31");
|
||||
add(L"f33", L"?f32 + ?f18");
|
||||
add(L"f34", L"?f33 + ?f27");
|
||||
add(L"f35", L"?f3 - ?f26");
|
||||
add(L"f36", L"?f18 * 14 / 16");
|
||||
add(L"f37", L"(?f36 + ?f35) / 2");
|
||||
add(L"f38", L"?f30 + ?f35");
|
||||
add(L"f39", L"?f31 + ?f35");
|
||||
add(L"f40", L"?f13 / 2");
|
||||
add(L"f41", L"?f19 * ?f40");
|
||||
add(L"f42", L"?f41 + ?f35");
|
||||
add(L"f43", L"?f1 - ?f40");
|
||||
add(L"f44", L"?f34 + ?f35");
|
||||
add(L"f45", L"?f22 + ?f27");
|
||||
add(L"f46", L"?f26 + ?f26 - ?f45");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_EllipseRibbon2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_EllipseRibbon2()
|
||||
{
|
||||
odf_type_name =L"ooxml-ellipseRibbon2";
|
||||
|
||||
enhanced_path = L"S M ?f0 ?f3 Q ?f24 ?f26 ?f14 ?f23 L ?f13 ?f34 Q ?f8 ?f38 ?f16 ?f34 L ?f15 ?f23 Q ?f27 ?f26 ?f1 ?f3 L ?f17 ?f42 ?f1 ?f28 Q ?f51 ?f50 ?f16 ?f44 L ?f16 ?f46 Q ?f8 ?f53 ?f13 ?f46 L ?f13 ?f44 Q ?f47 ?f50 ?f0 ?f28 L ?f7 ?f42 Z N S M ?f14 ?f55 L ?f14 ?f23 ?f13 ?f34 Q ?f8 ?f38 ?f16 ?f34 L ?f15 ?f23 ?f15 ?f55 Q ?f8 ?f57 ?f14 ?f55 Z N F M ?f0 ?f3 L ?f7 ?f42 ?f0 ?f28 Q ?f47 ?f50 ?f13 ?f44 L ?f13 ?f46 Q ?f8 ?f53 ?f16 ?f46 L ?f16 ?f44 Q ?f51 ?f50 ?f1 ?f28 L ?f17 ?f42 ?f1 ?f3 Q ?f27 ?f26 ?f15 ?f23 L ?f16 ?f34 Q ?f8 ?f38 ?f13 ?f34 L ?f14 ?f23 Q ?f24 ?f26 ?f0 ?f3 Z M ?f13 ?f34 L ?f13 ?f44 M ?f16 ?f44 L ?f16 ?f34 M ?f14 ?f55 L ?f14 ?f23 M ?f15 ?f23 L ?f15 ?f55 N";
|
||||
text_areas = L"?f13 ?f46 ?f16 ?f39";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"25000 50000 12500";
|
||||
glue_points = L"?f7 ?f42 ?f8 ?f39 ?f17 ?f42";
|
||||
|
||||
add(L"f0", L"left");
|
||||
add(L"f1", L"right");
|
||||
add(L"f2", L"top");
|
||||
add(L"f3", L"bottom");
|
||||
add(L"f4", L"?f3 - ?f2");
|
||||
add(L"f5", L"?f1 - ?f0");
|
||||
add(L"f6", L"?f5 / 2");
|
||||
add(L"f7", L"?f5 / 8");
|
||||
add(L"f8", L"?f0 + ?f6");
|
||||
add(L"f9", L"$0");
|
||||
add(L"f10", L"$1");
|
||||
add(L"f11", L"$2");
|
||||
add(L"f12", L"?f5 * ?f10 / 200000");
|
||||
add(L"f13", L"?f8 - ?f12");
|
||||
add(L"f14", L"?f13 + ?f7");
|
||||
add(L"f15", L"?f1 - ?f14");
|
||||
add(L"f16", L"?f1 - ?f13");
|
||||
add(L"f17", L"?f1 - ?f7");
|
||||
add(L"f18", L"?f4 * ?f11 / 100000");
|
||||
add(L"f19", L"4 * ?f18 / ?f5");
|
||||
add(L"f20", L"?f14 * ?f14 / ?f5");
|
||||
add(L"f21", L"?f14 - ?f20");
|
||||
add(L"f22", L"?f19 * ?f21");
|
||||
add(L"f23", L"?f3 - ?f22");
|
||||
add(L"f24", L"?f14 / 2");
|
||||
add(L"f25", L"?f19 * ?f24");
|
||||
add(L"f26", L"?f3 - ?f25");
|
||||
add(L"f27", L"?f1 - ?f24");
|
||||
add(L"f28", L"?f4 * ?f9 / 100000");
|
||||
add(L"f29", L"?f28 - ?f18");
|
||||
add(L"f30", L"?f13 * ?f13 / ?f5");
|
||||
add(L"f31", L"?f13 - ?f30");
|
||||
add(L"f32", L"?f19 * ?f31");
|
||||
add(L"f33", L"?f32 + ?f29");
|
||||
add(L"f34", L"?f3 - ?f33");
|
||||
add(L"f35", L"?f18 + ?f29 - ?f33");
|
||||
add(L"f36", L"?f35 + ?f18");
|
||||
add(L"f37", L"?f36 + ?f29");
|
||||
add(L"f38", L"?f3 - ?f37");
|
||||
add(L"f39", L"?f3 - ?f28");
|
||||
add(L"f40", L"?f18 * 14 / 16");
|
||||
add(L"f41", L"(?f40 + ?f39) / 2");
|
||||
add(L"f42", L"?f3 - ?f41");
|
||||
add(L"f43", L"?f32 + ?f39");
|
||||
add(L"f44", L"?f3 - ?f43");
|
||||
add(L"f45", L"?f33 + ?f39");
|
||||
add(L"f46", L"?f3 - ?f45");
|
||||
add(L"f47", L"?f13 / 2");
|
||||
add(L"f48", L"?f19 * ?f47");
|
||||
add(L"f49", L"?f48 + ?f39");
|
||||
add(L"f50", L"?f3 - ?f49");
|
||||
add(L"f51", L"?f1 - ?f47");
|
||||
add(L"f52", L"?f37 + ?f39");
|
||||
add(L"f53", L"?f3 - ?f52");
|
||||
add(L"f54", L"?f22 + ?f29");
|
||||
add(L"f55", L"?f3 - ?f54");
|
||||
add(L"f56", L"?f28 + ?f28 - ?f54");
|
||||
add(L"f57", L"?f3 - ?f56");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_Ribbon : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Ribbon()
|
||||
{
|
||||
odf_type_name =L"ooxml-ribbon";
|
||||
|
||||
enhanced_path = L"S M ?f3 ?f5 L ?f24 ?f5 A ?f72 ?f73 ?f74 ?f75 ?f24 ?f5 ?f69 ?f71 W ?f76 ?f77 ?f78 ?f79 ?f24 ?f5 ?f69 ?f71 L ?f20 ?f26 A ?f106 ?f107 ?f108 ?f109 ?f20 ?f26 ?f103 ?f105 W ?f110 ?f111 ?f112 ?f113 ?f20 ?f26 ?f103 ?f105 L ?f21 ?f27 A ?f149 ?f150 ?f151 ?f152 ?f21 ?f27 ?f146 ?f148 W ?f153 ?f154 ?f155 ?f156 ?f21 ?f27 ?f146 ?f148 L ?f25 ?f26 A ?f179 ?f180 ?f181 ?f182 ?f25 ?f26 ?f176 ?f178 W ?f183 ?f184 ?f185 ?f186 ?f25 ?f26 ?f176 ?f178 L ?f4 ?f5 ?f16 ?f29 ?f4 ?f28 ?f19 ?f28 ?f19 ?f31 A ?f226 ?f227 ?f228 ?f229 ?f19 ?f31 ?f223 ?f225 W ?f230 ?f231 ?f232 ?f233 ?f19 ?f31 ?f223 ?f225 L ?f20 ?f6 A ?f256 ?f257 ?f258 ?f259 ?f20 ?f6 ?f253 ?f255 W ?f260 ?f261 ?f262 ?f263 ?f20 ?f6 ?f253 ?f255 L ?f18 ?f28 ?f3 ?f28 ?f10 ?f29 Z N S M ?f22 ?f30 A ?f272 ?f273 ?f274 ?f275 ?f22 ?f30 ?f270 ?f271 W ?f276 ?f277 ?f278 ?f279 ?f22 ?f30 ?f270 ?f271 L ?f20 ?f26 A ?f106 ?f107 ?f108 ?f109 ?f20 ?f26 ?f103 ?f105 W ?f110 ?f111 ?f112 ?f113 ?f20 ?f26 ?f103 ?f105 L ?f22 ?f27 Z M ?f23 ?f30 A ?f319 ?f320 ?f321 ?f322 ?f23 ?f30 ?f316 ?f318 W ?f323 ?f324 ?f325 ?f326 ?f23 ?f30 ?f316 ?f318 L ?f21 ?f26 A ?f332 ?f333 ?f334 ?f335 ?f21 ?f26 ?f330 ?f331 W ?f336 ?f337 ?f338 ?f339 ?f21 ?f26 ?f330 ?f331 L ?f23 ?f27 Z N F M ?f3 ?f5 L ?f24 ?f5 A ?f72 ?f73 ?f74 ?f75 ?f24 ?f5 ?f69 ?f71 W ?f76 ?f77 ?f78 ?f79 ?f24 ?f5 ?f69 ?f71 L ?f20 ?f26 A ?f106 ?f107 ?f108 ?f109 ?f20 ?f26 ?f103 ?f105 W ?f110 ?f111 ?f112 ?f113 ?f20 ?f26 ?f103 ?f105 L ?f21 ?f27 A ?f149 ?f150 ?f151 ?f152 ?f21 ?f27 ?f146 ?f148 W ?f153 ?f154 ?f155 ?f156 ?f21 ?f27 ?f146 ?f148 L ?f25 ?f26 A ?f179 ?f180 ?f181 ?f182 ?f25 ?f26 ?f176 ?f178 W ?f183 ?f184 ?f185 ?f186 ?f25 ?f26 ?f176 ?f178 L ?f4 ?f5 ?f16 ?f29 ?f4 ?f28 ?f19 ?f28 ?f19 ?f31 A ?f226 ?f227 ?f228 ?f229 ?f19 ?f31 ?f223 ?f225 W ?f230 ?f231 ?f232 ?f233 ?f19 ?f31 ?f223 ?f225 L ?f20 ?f6 A ?f256 ?f257 ?f258 ?f259 ?f20 ?f6 ?f253 ?f255 W ?f260 ?f261 ?f262 ?f263 ?f20 ?f6 ?f253 ?f255 L ?f18 ?f28 ?f3 ?f28 ?f10 ?f29 Z M ?f22 ?f30 L ?f22 ?f27 M ?f23 ?f27 L ?f23 ?f30 M ?f18 ?f28 L ?f18 ?f32 M ?f19 ?f32 L ?f19 ?f28 N";
|
||||
text_areas = L"?f18 ?f27 ?f19 ?f6";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"16667 50000";
|
||||
glue_points = L"?f12 ?f27 ?f10 ?f29 ?f16 ?f29";
|
||||
|
||||
add(L"f0", L"16200000");
|
||||
add(L"f1", L"10800000");
|
||||
add(L"f2", L"5400000");
|
||||
add(L"f3", L"left");
|
||||
add(L"f4", L"right");
|
||||
add(L"f5", L"top");
|
||||
add(L"f6", L"bottom");
|
||||
add(L"f7", L"?f6 - ?f5");
|
||||
add(L"f8", L"?f4 - ?f3");
|
||||
add(L"f9", L"?f8 / 2");
|
||||
add(L"f10", L"?f8 / 8");
|
||||
add(L"f11", L"?f8 / 32");
|
||||
add(L"f12", L"?f3 + ?f9");
|
||||
add(L"f13", L"5419351 / 1725033");
|
||||
add(L"f14", L"$0");
|
||||
add(L"f15", L"$1");
|
||||
add(L"f16", L"?f4 - ?f10");
|
||||
add(L"f17", L"?f8 * ?f15 / 200000");
|
||||
add(L"f18", L"?f12 - ?f17");
|
||||
add(L"f19", L"?f12 + ?f17");
|
||||
add(L"f20", L"?f18 + ?f11");
|
||||
add(L"f21", L"?f19 - ?f11");
|
||||
add(L"f22", L"?f18 + ?f10");
|
||||
add(L"f23", L"?f19 - ?f10");
|
||||
add(L"f24", L"?f22 - ?f11");
|
||||
add(L"f25", L"?f23 + ?f11");
|
||||
add(L"f26", L"?f7 * ?f14 / 200000");
|
||||
add(L"f27", L"?f7 * ?f14 / 100000");
|
||||
add(L"f28", L"?f6 - ?f27");
|
||||
add(L"f29", L"?f28 / 2");
|
||||
add(L"f30", L"?f7 * ?f14 / 400000");
|
||||
add(L"f31", L"?f6 - ?f30");
|
||||
add(L"f32", L"?f27 - ?f30");
|
||||
add(L"f33", L"21550000 - ?f1");
|
||||
add(L"f34", L"if(?f33, ?f1, 21550000)");
|
||||
add(L"f35", L"-21550000 - ?f34");
|
||||
add(L"f36", L"if(?f35, -21550000, ?f34)");
|
||||
add(L"f37", L"?f0 + ?f36");
|
||||
add(L"f38", L"?f0 + ?f2");
|
||||
add(L"f39", L"?f38 * ?f13 / ?f1");
|
||||
add(L"f40", L"0 - ?f39");
|
||||
add(L"f41", L"cos(?f40)");
|
||||
add(L"f42", L"0 - ?f41");
|
||||
add(L"f43", L"?f42 * ?f11");
|
||||
add(L"f44", L"sin(?f40)");
|
||||
add(L"f45", L"0 - ?f44");
|
||||
add(L"f46", L"?f45 * ?f30");
|
||||
add(L"f47", L"sqrt(?f43 * ?f43 + ?f46 * ?f46 + 0 * 0)");
|
||||
add(L"f48", L"?f11 * ?f30 / ?f47");
|
||||
add(L"f49", L"?f45 * ?f48");
|
||||
add(L"f50", L"?f24 - ?f49");
|
||||
add(L"f51", L"?f42 * ?f48");
|
||||
add(L"f52", L"?f5 - ?f51");
|
||||
add(L"f53", L"?f50 - ?f11");
|
||||
add(L"f54", L"?f52 - ?f30");
|
||||
add(L"f55", L"?f50 + ?f11");
|
||||
add(L"f56", L"?f52 + ?f30");
|
||||
add(L"f57", L"?f37 + ?f2");
|
||||
add(L"f58", L"?f57 * ?f13 / ?f1");
|
||||
add(L"f59", L"0 - ?f58");
|
||||
add(L"f60", L"cos(?f59)");
|
||||
add(L"f61", L"0 - ?f60");
|
||||
add(L"f62", L"?f61 * ?f11");
|
||||
add(L"f63", L"sin(?f59)");
|
||||
add(L"f64", L"0 - ?f63");
|
||||
add(L"f65", L"?f64 * ?f30");
|
||||
add(L"f66", L"sqrt(?f62 * ?f62 + ?f65 * ?f65 + 0 * 0)");
|
||||
add(L"f67", L"?f11 * ?f30 / ?f66");
|
||||
add(L"f68", L"?f64 * ?f67");
|
||||
add(L"f69", L"?f50 + ?f68");
|
||||
add(L"f70", L"?f61 * ?f67");
|
||||
add(L"f71", L"?f52 + ?f70");
|
||||
add(L"f72", L"if(?f36, ?f24, ?f53)");
|
||||
add(L"f73", L"if(?f36, ?f5, ?f54)");
|
||||
add(L"f74", L"if(?f36, ?f24, ?f55)");
|
||||
add(L"f75", L"if(?f36, ?f5, ?f56)");
|
||||
add(L"f76", L"if(?f36, ?f53, ?f69)");
|
||||
add(L"f77", L"if(?f36, ?f54, ?f71)");
|
||||
add(L"f78", L"if(?f36, ?f55, ?f69)");
|
||||
add(L"f79", L"if(?f36, ?f56, ?f71)");
|
||||
add(L"f80", L"21550000 - -10800000");
|
||||
add(L"f81", L"if(?f80, -10800000, 21550000)");
|
||||
add(L"f82", L"-21550000 - ?f81");
|
||||
add(L"f83", L"if(?f82, -21550000, ?f81)");
|
||||
add(L"f84", L"?f0 + ?f83");
|
||||
add(L"f85", L"?f20 - ?f49");
|
||||
add(L"f86", L"?f26 - ?f51");
|
||||
add(L"f87", L"?f85 - ?f11");
|
||||
add(L"f88", L"?f86 - ?f30");
|
||||
add(L"f89", L"?f85 + ?f11");
|
||||
add(L"f90", L"?f86 + ?f30");
|
||||
add(L"f91", L"?f84 + ?f2");
|
||||
add(L"f92", L"?f91 * ?f13 / ?f1");
|
||||
add(L"f93", L"0 - ?f92");
|
||||
add(L"f94", L"cos(?f93)");
|
||||
add(L"f95", L"0 - ?f94");
|
||||
add(L"f96", L"?f95 * ?f11");
|
||||
add(L"f97", L"sin(?f93)");
|
||||
add(L"f98", L"0 - ?f97");
|
||||
add(L"f99", L"?f98 * ?f30");
|
||||
add(L"f100", L"sqrt(?f96 * ?f96 + ?f99 * ?f99 + 0 * 0)");
|
||||
add(L"f101", L"?f11 * ?f30 / ?f100");
|
||||
add(L"f102", L"?f98 * ?f101");
|
||||
add(L"f103", L"?f85 + ?f102");
|
||||
add(L"f104", L"?f95 * ?f101");
|
||||
add(L"f105", L"?f86 + ?f104");
|
||||
add(L"f106", L"if(?f83, ?f20, ?f87)");
|
||||
add(L"f107", L"if(?f83, ?f26, ?f88)");
|
||||
add(L"f108", L"if(?f83, ?f20, ?f89)");
|
||||
add(L"f109", L"if(?f83, ?f26, ?f90)");
|
||||
add(L"f110", L"if(?f83, ?f87, ?f103)");
|
||||
add(L"f111", L"if(?f83, ?f88, ?f105)");
|
||||
add(L"f112", L"if(?f83, ?f89, ?f103)");
|
||||
add(L"f113", L"if(?f83, ?f90, ?f105)");
|
||||
add(L"f114", L"?f2 + ?f83");
|
||||
add(L"f115", L"?f2 + ?f2");
|
||||
add(L"f116", L"?f115 * ?f13 / ?f1");
|
||||
add(L"f117", L"0 - ?f116");
|
||||
add(L"f118", L"cos(?f117)");
|
||||
add(L"f119", L"0 - ?f118");
|
||||
add(L"f120", L"?f119 * ?f11");
|
||||
add(L"f121", L"sin(?f117)");
|
||||
add(L"f122", L"0 - ?f121");
|
||||
add(L"f123", L"?f122 * ?f30");
|
||||
add(L"f124", L"sqrt(?f120 * ?f120 + ?f123 * ?f123 + 0 * 0)");
|
||||
add(L"f125", L"?f11 * ?f30 / ?f124");
|
||||
add(L"f126", L"?f122 * ?f125");
|
||||
add(L"f127", L"?f21 - ?f126");
|
||||
add(L"f128", L"?f119 * ?f125");
|
||||
add(L"f129", L"?f27 - ?f128");
|
||||
add(L"f130", L"?f127 - ?f11");
|
||||
add(L"f131", L"?f129 - ?f30");
|
||||
add(L"f132", L"?f127 + ?f11");
|
||||
add(L"f133", L"?f129 + ?f30");
|
||||
add(L"f134", L"?f114 + ?f2");
|
||||
add(L"f135", L"?f134 * ?f13 / ?f1");
|
||||
add(L"f136", L"0 - ?f135");
|
||||
add(L"f137", L"cos(?f136)");
|
||||
add(L"f138", L"0 - ?f137");
|
||||
add(L"f139", L"?f138 * ?f11");
|
||||
add(L"f140", L"sin(?f136)");
|
||||
add(L"f141", L"0 - ?f140");
|
||||
add(L"f142", L"?f141 * ?f30");
|
||||
add(L"f143", L"sqrt(?f139 * ?f139 + ?f142 * ?f142 + 0 * 0)");
|
||||
add(L"f144", L"?f11 * ?f30 / ?f143");
|
||||
add(L"f145", L"?f141 * ?f144");
|
||||
add(L"f146", L"?f127 + ?f145");
|
||||
add(L"f147", L"?f138 * ?f144");
|
||||
add(L"f148", L"?f129 + ?f147");
|
||||
add(L"f149", L"if(?f83, ?f21, ?f130)");
|
||||
add(L"f150", L"if(?f83, ?f27, ?f131)");
|
||||
add(L"f151", L"if(?f83, ?f21, ?f132)");
|
||||
add(L"f152", L"if(?f83, ?f27, ?f133)");
|
||||
add(L"f153", L"if(?f83, ?f130, ?f146)");
|
||||
add(L"f154", L"if(?f83, ?f131, ?f148)");
|
||||
add(L"f155", L"if(?f83, ?f132, ?f146)");
|
||||
add(L"f156", L"if(?f83, ?f133, ?f148)");
|
||||
add(L"f157", L"?f2 + ?f36");
|
||||
add(L"f158", L"?f25 - ?f126");
|
||||
add(L"f159", L"?f26 - ?f128");
|
||||
add(L"f160", L"?f158 - ?f11");
|
||||
add(L"f161", L"?f159 - ?f30");
|
||||
add(L"f162", L"?f158 + ?f11");
|
||||
add(L"f163", L"?f159 + ?f30");
|
||||
add(L"f164", L"?f157 + ?f2");
|
||||
add(L"f165", L"?f164 * ?f13 / ?f1");
|
||||
add(L"f166", L"0 - ?f165");
|
||||
add(L"f167", L"cos(?f166)");
|
||||
add(L"f168", L"0 - ?f167");
|
||||
add(L"f169", L"?f168 * ?f11");
|
||||
add(L"f170", L"sin(?f166)");
|
||||
add(L"f171", L"0 - ?f170");
|
||||
add(L"f172", L"?f171 * ?f30");
|
||||
add(L"f173", L"sqrt(?f169 * ?f169 + ?f172 * ?f172 + 0 * 0)");
|
||||
add(L"f174", L"?f11 * ?f30 / ?f173");
|
||||
add(L"f175", L"?f171 * ?f174");
|
||||
add(L"f176", L"?f158 + ?f175");
|
||||
add(L"f177", L"?f168 * ?f174");
|
||||
add(L"f178", L"?f159 + ?f177");
|
||||
add(L"f179", L"if(?f36, ?f25, ?f160)");
|
||||
add(L"f180", L"if(?f36, ?f26, ?f161)");
|
||||
add(L"f181", L"if(?f36, ?f25, ?f162)");
|
||||
add(L"f182", L"if(?f36, ?f26, ?f163)");
|
||||
add(L"f183", L"if(?f36, ?f160, ?f176)");
|
||||
add(L"f184", L"if(?f36, ?f161, ?f178)");
|
||||
add(L"f185", L"if(?f36, ?f162, ?f176)");
|
||||
add(L"f186", L"if(?f36, ?f163, ?f178)");
|
||||
add(L"f187", L"21550000 - ?f2");
|
||||
add(L"f188", L"if(?f187, ?f2, 21550000)");
|
||||
add(L"f189", L"-21550000 - ?f188");
|
||||
add(L"f190", L"if(?f189, -21550000, ?f188)");
|
||||
add(L"f191", L"0 + ?f190");
|
||||
add(L"f192", L"0 + ?f2");
|
||||
add(L"f193", L"?f192 * ?f13 / ?f1");
|
||||
add(L"f194", L"0 - ?f193");
|
||||
add(L"f195", L"cos(?f194)");
|
||||
add(L"f196", L"0 - ?f195");
|
||||
add(L"f197", L"?f196 * ?f11");
|
||||
add(L"f198", L"sin(?f194)");
|
||||
add(L"f199", L"0 - ?f198");
|
||||
add(L"f200", L"?f199 * ?f30");
|
||||
add(L"f201", L"sqrt(?f197 * ?f197 + ?f200 * ?f200 + 0 * 0)");
|
||||
add(L"f202", L"?f11 * ?f30 / ?f201");
|
||||
add(L"f203", L"?f199 * ?f202");
|
||||
add(L"f204", L"?f19 - ?f203");
|
||||
add(L"f205", L"?f196 * ?f202");
|
||||
add(L"f206", L"?f31 - ?f205");
|
||||
add(L"f207", L"?f204 - ?f11");
|
||||
add(L"f208", L"?f206 - ?f30");
|
||||
add(L"f209", L"?f204 + ?f11");
|
||||
add(L"f210", L"?f206 + ?f30");
|
||||
add(L"f211", L"?f191 + ?f2");
|
||||
add(L"f212", L"?f211 * ?f13 / ?f1");
|
||||
add(L"f213", L"0 - ?f212");
|
||||
add(L"f214", L"cos(?f213)");
|
||||
add(L"f215", L"0 - ?f214");
|
||||
add(L"f216", L"?f215 * ?f11");
|
||||
add(L"f217", L"sin(?f213)");
|
||||
add(L"f218", L"0 - ?f217");
|
||||
add(L"f219", L"?f218 * ?f30");
|
||||
add(L"f220", L"sqrt(?f216 * ?f216 + ?f219 * ?f219 + 0 * 0)");
|
||||
add(L"f221", L"?f11 * ?f30 / ?f220");
|
||||
add(L"f222", L"?f218 * ?f221");
|
||||
add(L"f223", L"?f204 + ?f222");
|
||||
add(L"f224", L"?f215 * ?f221");
|
||||
add(L"f225", L"?f206 + ?f224");
|
||||
add(L"f226", L"if(?f190, ?f19, ?f207)");
|
||||
add(L"f227", L"if(?f190, ?f31, ?f208)");
|
||||
add(L"f228", L"if(?f190, ?f19, ?f209)");
|
||||
add(L"f229", L"if(?f190, ?f31, ?f210)");
|
||||
add(L"f230", L"if(?f190, ?f207, ?f223)");
|
||||
add(L"f231", L"if(?f190, ?f208, ?f225)");
|
||||
add(L"f232", L"if(?f190, ?f209, ?f223)");
|
||||
add(L"f233", L"if(?f190, ?f210, ?f225)");
|
||||
add(L"f234", L"?f2 + ?f190");
|
||||
add(L"f235", L"?f20 - ?f126");
|
||||
add(L"f236", L"?f6 - ?f128");
|
||||
add(L"f237", L"?f235 - ?f11");
|
||||
add(L"f238", L"?f236 - ?f30");
|
||||
add(L"f239", L"?f235 + ?f11");
|
||||
add(L"f240", L"?f236 + ?f30");
|
||||
add(L"f241", L"?f234 + ?f2");
|
||||
add(L"f242", L"?f241 * ?f13 / ?f1");
|
||||
add(L"f243", L"0 - ?f242");
|
||||
add(L"f244", L"cos(?f243)");
|
||||
add(L"f245", L"0 - ?f244");
|
||||
add(L"f246", L"?f245 * ?f11");
|
||||
add(L"f247", L"sin(?f243)");
|
||||
add(L"f248", L"0 - ?f247");
|
||||
add(L"f249", L"?f248 * ?f30");
|
||||
add(L"f250", L"sqrt(?f246 * ?f246 + ?f249 * ?f249 + 0 * 0)");
|
||||
add(L"f251", L"?f11 * ?f30 / ?f250");
|
||||
add(L"f252", L"?f248 * ?f251");
|
||||
add(L"f253", L"?f235 + ?f252");
|
||||
add(L"f254", L"?f245 * ?f251");
|
||||
add(L"f255", L"?f236 + ?f254");
|
||||
add(L"f256", L"if(?f190, ?f20, ?f237)");
|
||||
add(L"f257", L"if(?f190, ?f6, ?f238)");
|
||||
add(L"f258", L"if(?f190, ?f20, ?f239)");
|
||||
add(L"f259", L"if(?f190, ?f6, ?f240)");
|
||||
add(L"f260", L"if(?f190, ?f237, ?f253)");
|
||||
add(L"f261", L"if(?f190, ?f238, ?f255)");
|
||||
add(L"f262", L"if(?f190, ?f239, ?f253)");
|
||||
add(L"f263", L"if(?f190, ?f240, ?f255)");
|
||||
add(L"f264", L"?f22 - ?f203");
|
||||
add(L"f265", L"?f30 - ?f205");
|
||||
add(L"f266", L"?f264 - ?f11");
|
||||
add(L"f267", L"?f265 - ?f30");
|
||||
add(L"f268", L"?f264 + ?f11");
|
||||
add(L"f269", L"?f265 + ?f30");
|
||||
add(L"f270", L"?f264 + ?f222");
|
||||
add(L"f271", L"?f265 + ?f224");
|
||||
add(L"f272", L"if(?f190, ?f22, ?f266)");
|
||||
add(L"f273", L"if(?f190, ?f30, ?f267)");
|
||||
add(L"f274", L"if(?f190, ?f22, ?f268)");
|
||||
add(L"f275", L"if(?f190, ?f30, ?f269)");
|
||||
add(L"f276", L"if(?f190, ?f266, ?f270)");
|
||||
add(L"f277", L"if(?f190, ?f267, ?f271)");
|
||||
add(L"f278", L"if(?f190, ?f268, ?f270)");
|
||||
add(L"f279", L"if(?f190, ?f269, ?f271)");
|
||||
add(L"f280", L"21550000 - -5400000");
|
||||
add(L"f281", L"if(?f280, -5400000, 21550000)");
|
||||
add(L"f282", L"-21550000 - ?f281");
|
||||
add(L"f283", L"if(?f282, -21550000, ?f281)");
|
||||
add(L"f284", L"?f1 + ?f283");
|
||||
add(L"f285", L"?f1 + ?f2");
|
||||
add(L"f286", L"?f285 * ?f13 / ?f1");
|
||||
add(L"f287", L"0 - ?f286");
|
||||
add(L"f288", L"cos(?f287)");
|
||||
add(L"f289", L"0 - ?f288");
|
||||
add(L"f290", L"?f289 * ?f11");
|
||||
add(L"f291", L"sin(?f287)");
|
||||
add(L"f292", L"0 - ?f291");
|
||||
add(L"f293", L"?f292 * ?f30");
|
||||
add(L"f294", L"sqrt(?f290 * ?f290 + ?f293 * ?f293 + 0 * 0)");
|
||||
add(L"f295", L"?f11 * ?f30 / ?f294");
|
||||
add(L"f296", L"?f292 * ?f295");
|
||||
add(L"f297", L"?f23 - ?f296");
|
||||
add(L"f298", L"?f289 * ?f295");
|
||||
add(L"f299", L"?f30 - ?f298");
|
||||
add(L"f300", L"?f297 - ?f11");
|
||||
add(L"f301", L"?f299 - ?f30");
|
||||
add(L"f302", L"?f297 + ?f11");
|
||||
add(L"f303", L"?f299 + ?f30");
|
||||
add(L"f304", L"?f284 + ?f2");
|
||||
add(L"f305", L"?f304 * ?f13 / ?f1");
|
||||
add(L"f306", L"0 - ?f305");
|
||||
add(L"f307", L"cos(?f306)");
|
||||
add(L"f308", L"0 - ?f307");
|
||||
add(L"f309", L"?f308 * ?f11");
|
||||
add(L"f310", L"sin(?f306)");
|
||||
add(L"f311", L"0 - ?f310");
|
||||
add(L"f312", L"?f311 * ?f30");
|
||||
add(L"f313", L"sqrt(?f309 * ?f309 + ?f312 * ?f312 + 0 * 0)");
|
||||
add(L"f314", L"?f11 * ?f30 / ?f313");
|
||||
add(L"f315", L"?f311 * ?f314");
|
||||
add(L"f316", L"?f297 + ?f315");
|
||||
add(L"f317", L"?f308 * ?f314");
|
||||
add(L"f318", L"?f299 + ?f317");
|
||||
add(L"f319", L"if(?f283, ?f23, ?f300)");
|
||||
add(L"f320", L"if(?f283, ?f30, ?f301)");
|
||||
add(L"f321", L"if(?f283, ?f23, ?f302)");
|
||||
add(L"f322", L"if(?f283, ?f30, ?f303)");
|
||||
add(L"f323", L"if(?f283, ?f300, ?f316)");
|
||||
add(L"f324", L"if(?f283, ?f301, ?f318)");
|
||||
add(L"f325", L"if(?f283, ?f302, ?f316)");
|
||||
add(L"f326", L"if(?f283, ?f303, ?f318)");
|
||||
add(L"f327", L"?f21 - ?f49");
|
||||
add(L"f328", L"?f327 - ?f11");
|
||||
add(L"f329", L"?f327 + ?f11");
|
||||
add(L"f330", L"?f327 + ?f68");
|
||||
add(L"f331", L"?f86 + ?f70");
|
||||
add(L"f332", L"if(?f36, ?f21, ?f328)");
|
||||
add(L"f333", L"if(?f36, ?f26, ?f88)");
|
||||
add(L"f334", L"if(?f36, ?f21, ?f329)");
|
||||
add(L"f335", L"if(?f36, ?f26, ?f90)");
|
||||
add(L"f336", L"if(?f36, ?f328, ?f330)");
|
||||
add(L"f337", L"if(?f36, ?f88, ?f331)");
|
||||
add(L"f338", L"if(?f36, ?f329, ?f330)");
|
||||
add(L"f339", L"if(?f36, ?f90, ?f331)");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
class oox_shape_Ribbon2 : public oox_shape
|
||||
{
|
||||
public:
|
||||
oox_shape_Ribbon2()
|
||||
{
|
||||
odf_type_name =L"ooxml-ribbon2";
|
||||
|
||||
enhanced_path = L"S M ?f3 ?f6 L ?f24 ?f6 A ?f74 ?f75 ?f76 ?f77 ?f24 ?f6 ?f71 ?f73 W ?f78 ?f79 ?f80 ?f81 ?f24 ?f6 ?f71 ?f73 L ?f20 ?f27 A ?f108 ?f109 ?f110 ?f111 ?f20 ?f27 ?f105 ?f107 W ?f112 ?f113 ?f114 ?f115 ?f20 ?f27 ?f105 ?f107 L ?f21 ?f29 A ?f151 ?f152 ?f153 ?f154 ?f21 ?f29 ?f148 ?f150 W ?f155 ?f156 ?f157 ?f158 ?f21 ?f29 ?f148 ?f150 L ?f25 ?f27 A ?f181 ?f182 ?f183 ?f184 ?f25 ?f27 ?f178 ?f180 W ?f185 ?f186 ?f187 ?f188 ?f25 ?f27 ?f178 ?f180 L ?f4 ?f6 ?f16 ?f31 ?f4 ?f30 ?f19 ?f30 ?f19 ?f32 A ?f228 ?f229 ?f230 ?f231 ?f19 ?f32 ?f225 ?f227 W ?f232 ?f233 ?f234 ?f235 ?f19 ?f32 ?f225 ?f227 L ?f20 ?f5 A ?f258 ?f259 ?f260 ?f261 ?f20 ?f5 ?f255 ?f257 W ?f262 ?f263 ?f264 ?f265 ?f20 ?f5 ?f255 ?f257 L ?f18 ?f30 ?f3 ?f30 ?f10 ?f31 Z N S M ?f22 ?f33 A ?f274 ?f275 ?f276 ?f277 ?f22 ?f33 ?f272 ?f273 W ?f278 ?f279 ?f280 ?f281 ?f22 ?f33 ?f272 ?f273 L ?f20 ?f27 A ?f108 ?f109 ?f110 ?f111 ?f20 ?f27 ?f105 ?f107 W ?f112 ?f113 ?f114 ?f115 ?f20 ?f27 ?f105 ?f107 L ?f22 ?f29 Z M ?f23 ?f33 A ?f321 ?f322 ?f323 ?f324 ?f23 ?f33 ?f318 ?f320 W ?f325 ?f326 ?f327 ?f328 ?f23 ?f33 ?f318 ?f320 L ?f21 ?f27 A ?f334 ?f335 ?f336 ?f337 ?f21 ?f27 ?f332 ?f333 W ?f338 ?f339 ?f340 ?f341 ?f21 ?f27 ?f332 ?f333 L ?f23 ?f29 Z N F M ?f3 ?f6 L ?f10 ?f31 ?f3 ?f30 ?f18 ?f30 ?f18 ?f32 A ?f350 ?f351 ?f352 ?f353 ?f18 ?f32 ?f348 ?f349 W ?f354 ?f355 ?f356 ?f357 ?f18 ?f32 ?f348 ?f349 L ?f21 ?f5 A ?f374 ?f375 ?f376 ?f377 ?f21 ?f5 ?f371 ?f373 W ?f378 ?f379 ?f380 ?f381 ?f21 ?f5 ?f371 ?f373 L ?f19 ?f30 ?f19 ?f30 ?f4 ?f30 ?f16 ?f31 ?f4 ?f6 ?f25 ?f6 A ?f387 ?f388 ?f389 ?f390 ?f25 ?f6 ?f385 ?f386 W ?f391 ?f392 ?f393 ?f394 ?f25 ?f6 ?f385 ?f386 L ?f21 ?f27 A ?f334 ?f335 ?f336 ?f337 ?f21 ?f27 ?f332 ?f333 W ?f338 ?f339 ?f340 ?f341 ?f21 ?f27 ?f332 ?f333 L ?f20 ?f29 A ?f397 ?f398 ?f399 ?f400 ?f20 ?f29 ?f395 ?f396 W ?f401 ?f402 ?f403 ?f404 ?f20 ?f29 ?f395 ?f396 L ?f24 ?f27 A ?f410 ?f411 ?f412 ?f413 ?f24 ?f27 ?f408 ?f409 W ?f414 ?f415 ?f416 ?f417 ?f24 ?f27 ?f408 ?f409 Z M ?f22 ?f29 L ?f22 ?f33 M ?f23 ?f33 L ?f23 ?f29 M ?f18 ?f34 L ?f18 ?f30 M ?f19 ?f30 L ?f19 ?f34 N";
|
||||
text_areas = L"?f18 ?f5 ?f19 ?f29";
|
||||
view_box = L"0 0 21600 21600";
|
||||
modifiers = L"16667 50000";
|
||||
glue_points = L"?f10 ?f31 ?f12 ?f29 ?f16 ?f31";
|
||||
|
||||
add(L"f0", L"16200000");
|
||||
add(L"f1", L"10800000");
|
||||
add(L"f2", L"5400000");
|
||||
add(L"f3", L"left");
|
||||
add(L"f4", L"right");
|
||||
add(L"f5", L"top");
|
||||
add(L"f6", L"bottom");
|
||||
add(L"f7", L"?f6 - ?f5");
|
||||
add(L"f8", L"?f4 - ?f3");
|
||||
add(L"f9", L"?f8 / 2");
|
||||
add(L"f10", L"?f8 / 8");
|
||||
add(L"f11", L"?f8 / 32");
|
||||
add(L"f12", L"?f3 + ?f9");
|
||||
add(L"f13", L"5419351 / 1725033");
|
||||
add(L"f14", L"$0");
|
||||
add(L"f15", L"$1");
|
||||
add(L"f16", L"?f4 - ?f10");
|
||||
add(L"f17", L"?f8 * ?f15 / 200000");
|
||||
add(L"f18", L"?f12 - ?f17");
|
||||
add(L"f19", L"?f12 + ?f17");
|
||||
add(L"f20", L"?f18 + ?f11");
|
||||
add(L"f21", L"?f19 - ?f11");
|
||||
add(L"f22", L"?f18 + ?f10");
|
||||
add(L"f23", L"?f19 - ?f10");
|
||||
add(L"f24", L"?f22 - ?f11");
|
||||
add(L"f25", L"?f23 + ?f11");
|
||||
add(L"f26", L"?f7 * ?f14 / 200000");
|
||||
add(L"f27", L"?f6 - ?f26");
|
||||
add(L"f28", L"?f7 * ?f14 / 100000");
|
||||
add(L"f29", L"?f6 - ?f28");
|
||||
add(L"f30", L"?f5 + ?f28");
|
||||
add(L"f31", L"(?f30 + ?f6) / 2");
|
||||
add(L"f32", L"?f7 * ?f14 / 400000");
|
||||
add(L"f33", L"?f6 - ?f32");
|
||||
add(L"f34", L"?f27 - ?f32");
|
||||
add(L"f35", L"21550000 - -10800000");
|
||||
add(L"f36", L"if(?f35, -10800000, 21550000)");
|
||||
add(L"f37", L"-21550000 - ?f36");
|
||||
add(L"f38", L"if(?f37, -21550000, ?f36)");
|
||||
add(L"f39", L"?f2 + ?f38");
|
||||
add(L"f40", L"?f2 + ?f2");
|
||||
add(L"f41", L"?f40 * ?f13 / ?f1");
|
||||
add(L"f42", L"0 - ?f41");
|
||||
add(L"f43", L"cos(?f42)");
|
||||
add(L"f44", L"0 - ?f43");
|
||||
add(L"f45", L"?f44 * ?f11");
|
||||
add(L"f46", L"sin(?f42)");
|
||||
add(L"f47", L"0 - ?f46");
|
||||
add(L"f48", L"?f47 * ?f32");
|
||||
add(L"f49", L"sqrt(?f45 * ?f45 + ?f48 * ?f48 + 0 * 0)");
|
||||
add(L"f50", L"?f11 * ?f32 / ?f49");
|
||||
add(L"f51", L"?f47 * ?f50");
|
||||
add(L"f52", L"?f24 - ?f51");
|
||||
add(L"f53", L"?f44 * ?f50");
|
||||
add(L"f54", L"?f6 - ?f53");
|
||||
add(L"f55", L"?f52 - ?f11");
|
||||
add(L"f56", L"?f54 - ?f32");
|
||||
add(L"f57", L"?f52 + ?f11");
|
||||
add(L"f58", L"?f54 + ?f32");
|
||||
add(L"f59", L"?f39 + ?f2");
|
||||
add(L"f60", L"?f59 * ?f13 / ?f1");
|
||||
add(L"f61", L"0 - ?f60");
|
||||
add(L"f62", L"cos(?f61)");
|
||||
add(L"f63", L"0 - ?f62");
|
||||
add(L"f64", L"?f63 * ?f11");
|
||||
add(L"f65", L"sin(?f61)");
|
||||
add(L"f66", L"0 - ?f65");
|
||||
add(L"f67", L"?f66 * ?f32");
|
||||
add(L"f68", L"sqrt(?f64 * ?f64 + ?f67 * ?f67 + 0 * 0)");
|
||||
add(L"f69", L"?f11 * ?f32 / ?f68");
|
||||
add(L"f70", L"?f66 * ?f69");
|
||||
add(L"f71", L"?f52 + ?f70");
|
||||
add(L"f72", L"?f63 * ?f69");
|
||||
add(L"f73", L"?f54 + ?f72");
|
||||
add(L"f74", L"if(?f38, ?f24, ?f55)");
|
||||
add(L"f75", L"if(?f38, ?f6, ?f56)");
|
||||
add(L"f76", L"if(?f38, ?f24, ?f57)");
|
||||
add(L"f77", L"if(?f38, ?f6, ?f58)");
|
||||
add(L"f78", L"if(?f38, ?f55, ?f71)");
|
||||
add(L"f79", L"if(?f38, ?f56, ?f73)");
|
||||
add(L"f80", L"if(?f38, ?f57, ?f71)");
|
||||
add(L"f81", L"if(?f38, ?f58, ?f73)");
|
||||
add(L"f82", L"21550000 - ?f1");
|
||||
add(L"f83", L"if(?f82, ?f1, 21550000)");
|
||||
add(L"f84", L"-21550000 - ?f83");
|
||||
add(L"f85", L"if(?f84, -21550000, ?f83)");
|
||||
add(L"f86", L"?f2 + ?f85");
|
||||
add(L"f87", L"?f20 - ?f51");
|
||||
add(L"f88", L"?f27 - ?f53");
|
||||
add(L"f89", L"?f87 - ?f11");
|
||||
add(L"f90", L"?f88 - ?f32");
|
||||
add(L"f91", L"?f87 + ?f11");
|
||||
add(L"f92", L"?f88 + ?f32");
|
||||
add(L"f93", L"?f86 + ?f2");
|
||||
add(L"f94", L"?f93 * ?f13 / ?f1");
|
||||
add(L"f95", L"0 - ?f94");
|
||||
add(L"f96", L"cos(?f95)");
|
||||
add(L"f97", L"0 - ?f96");
|
||||
add(L"f98", L"?f97 * ?f11");
|
||||
add(L"f99", L"sin(?f95)");
|
||||
add(L"f100", L"0 - ?f99");
|
||||
add(L"f101", L"?f100 * ?f32");
|
||||
add(L"f102", L"sqrt(?f98 * ?f98 + ?f101 * ?f101 + 0 * 0)");
|
||||
add(L"f103", L"?f11 * ?f32 / ?f102");
|
||||
add(L"f104", L"?f100 * ?f103");
|
||||
add(L"f105", L"?f87 + ?f104");
|
||||
add(L"f106", L"?f97 * ?f103");
|
||||
add(L"f107", L"?f88 + ?f106");
|
||||
add(L"f108", L"if(?f85, ?f20, ?f89)");
|
||||
add(L"f109", L"if(?f85, ?f27, ?f90)");
|
||||
add(L"f110", L"if(?f85, ?f20, ?f91)");
|
||||
add(L"f111", L"if(?f85, ?f27, ?f92)");
|
||||
add(L"f112", L"if(?f85, ?f89, ?f105)");
|
||||
add(L"f113", L"if(?f85, ?f90, ?f107)");
|
||||
add(L"f114", L"if(?f85, ?f91, ?f105)");
|
||||
add(L"f115", L"if(?f85, ?f92, ?f107)");
|
||||
add(L"f116", L"?f0 + ?f85");
|
||||
add(L"f117", L"?f0 + ?f2");
|
||||
add(L"f118", L"?f117 * ?f13 / ?f1");
|
||||
add(L"f119", L"0 - ?f118");
|
||||
add(L"f120", L"cos(?f119)");
|
||||
add(L"f121", L"0 - ?f120");
|
||||
add(L"f122", L"?f121 * ?f11");
|
||||
add(L"f123", L"sin(?f119)");
|
||||
add(L"f124", L"0 - ?f123");
|
||||
add(L"f125", L"?f124 * ?f32");
|
||||
add(L"f126", L"sqrt(?f122 * ?f122 + ?f125 * ?f125 + 0 * 0)");
|
||||
add(L"f127", L"?f11 * ?f32 / ?f126");
|
||||
add(L"f128", L"?f124 * ?f127");
|
||||
add(L"f129", L"?f21 - ?f128");
|
||||
add(L"f130", L"?f121 * ?f127");
|
||||
add(L"f131", L"?f29 - ?f130");
|
||||
add(L"f132", L"?f129 - ?f11");
|
||||
add(L"f133", L"?f131 - ?f32");
|
||||
add(L"f134", L"?f129 + ?f11");
|
||||
add(L"f135", L"?f131 + ?f32");
|
||||
add(L"f136", L"?f116 + ?f2");
|
||||
add(L"f137", L"?f136 * ?f13 / ?f1");
|
||||
add(L"f138", L"0 - ?f137");
|
||||
add(L"f139", L"cos(?f138)");
|
||||
add(L"f140", L"0 - ?f139");
|
||||
add(L"f141", L"?f140 * ?f11");
|
||||
add(L"f142", L"sin(?f138)");
|
||||
add(L"f143", L"0 - ?f142");
|
||||
add(L"f144", L"?f143 * ?f32");
|
||||
add(L"f145", L"sqrt(?f141 * ?f141 + ?f144 * ?f144 + 0 * 0)");
|
||||
add(L"f146", L"?f11 * ?f32 / ?f145");
|
||||
add(L"f147", L"?f143 * ?f146");
|
||||
add(L"f148", L"?f129 + ?f147");
|
||||
add(L"f149", L"?f140 * ?f146");
|
||||
add(L"f150", L"?f131 + ?f149");
|
||||
add(L"f151", L"if(?f85, ?f21, ?f132)");
|
||||
add(L"f152", L"if(?f85, ?f29, ?f133)");
|
||||
add(L"f153", L"if(?f85, ?f21, ?f134)");
|
||||
add(L"f154", L"if(?f85, ?f29, ?f135)");
|
||||
add(L"f155", L"if(?f85, ?f132, ?f148)");
|
||||
add(L"f156", L"if(?f85, ?f133, ?f150)");
|
||||
add(L"f157", L"if(?f85, ?f134, ?f148)");
|
||||
add(L"f158", L"if(?f85, ?f135, ?f150)");
|
||||
add(L"f159", L"?f0 + ?f38");
|
||||
add(L"f160", L"?f25 - ?f128");
|
||||
add(L"f161", L"?f27 - ?f130");
|
||||
add(L"f162", L"?f160 - ?f11");
|
||||
add(L"f163", L"?f161 - ?f32");
|
||||
add(L"f164", L"?f160 + ?f11");
|
||||
add(L"f165", L"?f161 + ?f32");
|
||||
add(L"f166", L"?f159 + ?f2");
|
||||
add(L"f167", L"?f166 * ?f13 / ?f1");
|
||||
add(L"f168", L"0 - ?f167");
|
||||
add(L"f169", L"cos(?f168)");
|
||||
add(L"f170", L"0 - ?f169");
|
||||
add(L"f171", L"?f170 * ?f11");
|
||||
add(L"f172", L"sin(?f168)");
|
||||
add(L"f173", L"0 - ?f172");
|
||||
add(L"f174", L"?f173 * ?f32");
|
||||
add(L"f175", L"sqrt(?f171 * ?f171 + ?f174 * ?f174 + 0 * 0)");
|
||||
add(L"f176", L"?f11 * ?f32 / ?f175");
|
||||
add(L"f177", L"?f173 * ?f176");
|
||||
add(L"f178", L"?f160 + ?f177");
|
||||
add(L"f179", L"?f170 * ?f176");
|
||||
add(L"f180", L"?f161 + ?f179");
|
||||
add(L"f181", L"if(?f38, ?f25, ?f162)");
|
||||
add(L"f182", L"if(?f38, ?f27, ?f163)");
|
||||
add(L"f183", L"if(?f38, ?f25, ?f164)");
|
||||
add(L"f184", L"if(?f38, ?f27, ?f165)");
|
||||
add(L"f185", L"if(?f38, ?f162, ?f178)");
|
||||
add(L"f186", L"if(?f38, ?f163, ?f180)");
|
||||
add(L"f187", L"if(?f38, ?f164, ?f178)");
|
||||
add(L"f188", L"if(?f38, ?f165, ?f180)");
|
||||
add(L"f189", L"21550000 - -5400000");
|
||||
add(L"f190", L"if(?f189, -5400000, 21550000)");
|
||||
add(L"f191", L"-21550000 - ?f190");
|
||||
add(L"f192", L"if(?f191, -21550000, ?f190)");
|
||||
add(L"f193", L"0 + ?f192");
|
||||
add(L"f194", L"0 + ?f2");
|
||||
add(L"f195", L"?f194 * ?f13 / ?f1");
|
||||
add(L"f196", L"0 - ?f195");
|
||||
add(L"f197", L"cos(?f196)");
|
||||
add(L"f198", L"0 - ?f197");
|
||||
add(L"f199", L"?f198 * ?f11");
|
||||
add(L"f200", L"sin(?f196)");
|
||||
add(L"f201", L"0 - ?f200");
|
||||
add(L"f202", L"?f201 * ?f32");
|
||||
add(L"f203", L"sqrt(?f199 * ?f199 + ?f202 * ?f202 + 0 * 0)");
|
||||
add(L"f204", L"?f11 * ?f32 / ?f203");
|
||||
add(L"f205", L"?f201 * ?f204");
|
||||
add(L"f206", L"?f19 - ?f205");
|
||||
add(L"f207", L"?f198 * ?f204");
|
||||
add(L"f208", L"?f32 - ?f207");
|
||||
add(L"f209", L"?f206 - ?f11");
|
||||
add(L"f210", L"?f208 - ?f32");
|
||||
add(L"f211", L"?f206 + ?f11");
|
||||
add(L"f212", L"?f208 + ?f32");
|
||||
add(L"f213", L"?f193 + ?f2");
|
||||
add(L"f214", L"?f213 * ?f13 / ?f1");
|
||||
add(L"f215", L"0 - ?f214");
|
||||
add(L"f216", L"cos(?f215)");
|
||||
add(L"f217", L"0 - ?f216");
|
||||
add(L"f218", L"?f217 * ?f11");
|
||||
add(L"f219", L"sin(?f215)");
|
||||
add(L"f220", L"0 - ?f219");
|
||||
add(L"f221", L"?f220 * ?f32");
|
||||
add(L"f222", L"sqrt(?f218 * ?f218 + ?f221 * ?f221 + 0 * 0)");
|
||||
add(L"f223", L"?f11 * ?f32 / ?f222");
|
||||
add(L"f224", L"?f220 * ?f223");
|
||||
add(L"f225", L"?f206 + ?f224");
|
||||
add(L"f226", L"?f217 * ?f223");
|
||||
add(L"f227", L"?f208 + ?f226");
|
||||
add(L"f228", L"if(?f192, ?f19, ?f209)");
|
||||
add(L"f229", L"if(?f192, ?f32, ?f210)");
|
||||
add(L"f230", L"if(?f192, ?f19, ?f211)");
|
||||
add(L"f231", L"if(?f192, ?f32, ?f212)");
|
||||
add(L"f232", L"if(?f192, ?f209, ?f225)");
|
||||
add(L"f233", L"if(?f192, ?f210, ?f227)");
|
||||
add(L"f234", L"if(?f192, ?f211, ?f225)");
|
||||
add(L"f235", L"if(?f192, ?f212, ?f227)");
|
||||
add(L"f236", L"?f0 + ?f192");
|
||||
add(L"f237", L"?f20 - ?f128");
|
||||
add(L"f238", L"?f5 - ?f130");
|
||||
add(L"f239", L"?f237 - ?f11");
|
||||
add(L"f240", L"?f238 - ?f32");
|
||||
add(L"f241", L"?f237 + ?f11");
|
||||
add(L"f242", L"?f238 + ?f32");
|
||||
add(L"f243", L"?f236 + ?f2");
|
||||
add(L"f244", L"?f243 * ?f13 / ?f1");
|
||||
add(L"f245", L"0 - ?f244");
|
||||
add(L"f246", L"cos(?f245)");
|
||||
add(L"f247", L"0 - ?f246");
|
||||
add(L"f248", L"?f247 * ?f11");
|
||||
add(L"f249", L"sin(?f245)");
|
||||
add(L"f250", L"0 - ?f249");
|
||||
add(L"f251", L"?f250 * ?f32");
|
||||
add(L"f252", L"sqrt(?f248 * ?f248 + ?f251 * ?f251 + 0 * 0)");
|
||||
add(L"f253", L"?f11 * ?f32 / ?f252");
|
||||
add(L"f254", L"?f250 * ?f253");
|
||||
add(L"f255", L"?f237 + ?f254");
|
||||
add(L"f256", L"?f247 * ?f253");
|
||||
add(L"f257", L"?f238 + ?f256");
|
||||
add(L"f258", L"if(?f192, ?f20, ?f239)");
|
||||
add(L"f259", L"if(?f192, ?f5, ?f240)");
|
||||
add(L"f260", L"if(?f192, ?f20, ?f241)");
|
||||
add(L"f261", L"if(?f192, ?f5, ?f242)");
|
||||
add(L"f262", L"if(?f192, ?f239, ?f255)");
|
||||
add(L"f263", L"if(?f192, ?f240, ?f257)");
|
||||
add(L"f264", L"if(?f192, ?f241, ?f255)");
|
||||
add(L"f265", L"if(?f192, ?f242, ?f257)");
|
||||
add(L"f266", L"?f22 - ?f205");
|
||||
add(L"f267", L"?f33 - ?f207");
|
||||
add(L"f268", L"?f266 - ?f11");
|
||||
add(L"f269", L"?f267 - ?f32");
|
||||
add(L"f270", L"?f266 + ?f11");
|
||||
add(L"f271", L"?f267 + ?f32");
|
||||
add(L"f272", L"?f266 + ?f224");
|
||||
add(L"f273", L"?f267 + ?f226");
|
||||
add(L"f274", L"if(?f192, ?f22, ?f268)");
|
||||
add(L"f275", L"if(?f192, ?f33, ?f269)");
|
||||
add(L"f276", L"if(?f192, ?f22, ?f270)");
|
||||
add(L"f277", L"if(?f192, ?f33, ?f271)");
|
||||
add(L"f278", L"if(?f192, ?f268, ?f272)");
|
||||
add(L"f279", L"if(?f192, ?f269, ?f273)");
|
||||
add(L"f280", L"if(?f192, ?f270, ?f272)");
|
||||
add(L"f281", L"if(?f192, ?f271, ?f273)");
|
||||
add(L"f282", L"21550000 - ?f2");
|
||||
add(L"f283", L"if(?f282, ?f2, 21550000)");
|
||||
add(L"f284", L"-21550000 - ?f283");
|
||||
add(L"f285", L"if(?f284, -21550000, ?f283)");
|
||||
add(L"f286", L"?f1 + ?f285");
|
||||
add(L"f287", L"?f1 + ?f2");
|
||||
add(L"f288", L"?f287 * ?f13 / ?f1");
|
||||
add(L"f289", L"0 - ?f288");
|
||||
add(L"f290", L"cos(?f289)");
|
||||
add(L"f291", L"0 - ?f290");
|
||||
add(L"f292", L"?f291 * ?f11");
|
||||
add(L"f293", L"sin(?f289)");
|
||||
add(L"f294", L"0 - ?f293");
|
||||
add(L"f295", L"?f294 * ?f32");
|
||||
add(L"f296", L"sqrt(?f292 * ?f292 + ?f295 * ?f295 + 0 * 0)");
|
||||
add(L"f297", L"?f11 * ?f32 / ?f296");
|
||||
add(L"f298", L"?f294 * ?f297");
|
||||
add(L"f299", L"?f23 - ?f298");
|
||||
add(L"f300", L"?f291 * ?f297");
|
||||
add(L"f301", L"?f33 - ?f300");
|
||||
add(L"f302", L"?f299 - ?f11");
|
||||
add(L"f303", L"?f301 - ?f32");
|
||||
add(L"f304", L"?f299 + ?f11");
|
||||
add(L"f305", L"?f301 + ?f32");
|
||||
add(L"f306", L"?f286 + ?f2");
|
||||
add(L"f307", L"?f306 * ?f13 / ?f1");
|
||||
add(L"f308", L"0 - ?f307");
|
||||
add(L"f309", L"cos(?f308)");
|
||||
add(L"f310", L"0 - ?f309");
|
||||
add(L"f311", L"?f310 * ?f11");
|
||||
add(L"f312", L"sin(?f308)");
|
||||
add(L"f313", L"0 - ?f312");
|
||||
add(L"f314", L"?f313 * ?f32");
|
||||
add(L"f315", L"sqrt(?f311 * ?f311 + ?f314 * ?f314 + 0 * 0)");
|
||||
add(L"f316", L"?f11 * ?f32 / ?f315");
|
||||
add(L"f317", L"?f313 * ?f316");
|
||||
add(L"f318", L"?f299 + ?f317");
|
||||
add(L"f319", L"?f310 * ?f316");
|
||||
add(L"f320", L"?f301 + ?f319");
|
||||
add(L"f321", L"if(?f285, ?f23, ?f302)");
|
||||
add(L"f322", L"if(?f285, ?f33, ?f303)");
|
||||
add(L"f323", L"if(?f285, ?f23, ?f304)");
|
||||
add(L"f324", L"if(?f285, ?f33, ?f305)");
|
||||
add(L"f325", L"if(?f285, ?f302, ?f318)");
|
||||
add(L"f326", L"if(?f285, ?f303, ?f320)");
|
||||
add(L"f327", L"if(?f285, ?f304, ?f318)");
|
||||
add(L"f328", L"if(?f285, ?f305, ?f320)");
|
||||
add(L"f329", L"?f21 - ?f51");
|
||||
add(L"f330", L"?f329 - ?f11");
|
||||
add(L"f331", L"?f329 + ?f11");
|
||||
add(L"f332", L"?f329 + ?f70");
|
||||
add(L"f333", L"?f88 + ?f72");
|
||||
add(L"f334", L"if(?f38, ?f21, ?f330)");
|
||||
add(L"f335", L"if(?f38, ?f27, ?f90)");
|
||||
add(L"f336", L"if(?f38, ?f21, ?f331)");
|
||||
add(L"f337", L"if(?f38, ?f27, ?f92)");
|
||||
add(L"f338", L"if(?f38, ?f330, ?f332)");
|
||||
add(L"f339", L"if(?f38, ?f90, ?f333)");
|
||||
add(L"f340", L"if(?f38, ?f331, ?f332)");
|
||||
add(L"f341", L"if(?f38, ?f92, ?f333)");
|
||||
add(L"f342", L"?f18 - ?f298");
|
||||
add(L"f343", L"?f32 - ?f300");
|
||||
add(L"f344", L"?f342 - ?f11");
|
||||
add(L"f345", L"?f343 - ?f32");
|
||||
add(L"f346", L"?f342 + ?f11");
|
||||
add(L"f347", L"?f343 + ?f32");
|
||||
add(L"f348", L"?f342 + ?f317");
|
||||
add(L"f349", L"?f343 + ?f319");
|
||||
add(L"f350", L"if(?f285, ?f18, ?f344)");
|
||||
add(L"f351", L"if(?f285, ?f32, ?f345)");
|
||||
add(L"f352", L"if(?f285, ?f18, ?f346)");
|
||||
add(L"f353", L"if(?f285, ?f32, ?f347)");
|
||||
add(L"f354", L"if(?f285, ?f344, ?f348)");
|
||||
add(L"f355", L"if(?f285, ?f345, ?f349)");
|
||||
add(L"f356", L"if(?f285, ?f346, ?f348)");
|
||||
add(L"f357", L"if(?f285, ?f347, ?f349)");
|
||||
add(L"f358", L"?f0 + ?f285");
|
||||
add(L"f359", L"?f358 + ?f2");
|
||||
add(L"f360", L"?f359 * ?f13 / ?f1");
|
||||
add(L"f361", L"0 - ?f360");
|
||||
add(L"f362", L"cos(?f361)");
|
||||
add(L"f363", L"0 - ?f362");
|
||||
add(L"f364", L"?f363 * ?f11");
|
||||
add(L"f365", L"sin(?f361)");
|
||||
add(L"f366", L"0 - ?f365");
|
||||
add(L"f367", L"?f366 * ?f32");
|
||||
add(L"f368", L"sqrt(?f364 * ?f364 + ?f367 * ?f367 + 0 * 0)");
|
||||
add(L"f369", L"?f11 * ?f32 / ?f368");
|
||||
add(L"f370", L"?f366 * ?f369");
|
||||
add(L"f371", L"?f129 + ?f370");
|
||||
add(L"f372", L"?f363 * ?f369");
|
||||
add(L"f373", L"?f238 + ?f372");
|
||||
add(L"f374", L"if(?f285, ?f21, ?f132)");
|
||||
add(L"f375", L"if(?f285, ?f5, ?f240)");
|
||||
add(L"f376", L"if(?f285, ?f21, ?f134)");
|
||||
add(L"f377", L"if(?f285, ?f5, ?f242)");
|
||||
add(L"f378", L"if(?f285, ?f132, ?f371)");
|
||||
add(L"f379", L"if(?f285, ?f240, ?f373)");
|
||||
add(L"f380", L"if(?f285, ?f134, ?f371)");
|
||||
add(L"f381", L"if(?f285, ?f242, ?f373)");
|
||||
add(L"f382", L"?f25 - ?f51");
|
||||
add(L"f383", L"?f382 - ?f11");
|
||||
add(L"f384", L"?f382 + ?f11");
|
||||
add(L"f385", L"?f382 + ?f104");
|
||||
add(L"f386", L"?f54 + ?f106");
|
||||
add(L"f387", L"if(?f85, ?f25, ?f383)");
|
||||
add(L"f388", L"if(?f85, ?f6, ?f56)");
|
||||
add(L"f389", L"if(?f85, ?f25, ?f384)");
|
||||
add(L"f390", L"if(?f85, ?f6, ?f58)");
|
||||
add(L"f391", L"if(?f85, ?f383, ?f385)");
|
||||
add(L"f392", L"if(?f85, ?f56, ?f386)");
|
||||
add(L"f393", L"if(?f85, ?f384, ?f385)");
|
||||
add(L"f394", L"if(?f85, ?f58, ?f386)");
|
||||
add(L"f395", L"?f237 + ?f177");
|
||||
add(L"f396", L"?f131 + ?f179");
|
||||
add(L"f397", L"if(?f38, ?f20, ?f239)");
|
||||
add(L"f398", L"if(?f38, ?f29, ?f133)");
|
||||
add(L"f399", L"if(?f38, ?f20, ?f241)");
|
||||
add(L"f400", L"if(?f38, ?f29, ?f135)");
|
||||
add(L"f401", L"if(?f38, ?f239, ?f395)");
|
||||
add(L"f402", L"if(?f38, ?f133, ?f396)");
|
||||
add(L"f403", L"if(?f38, ?f241, ?f395)");
|
||||
add(L"f404", L"if(?f38, ?f135, ?f396)");
|
||||
add(L"f405", L"?f24 - ?f128");
|
||||
add(L"f406", L"?f405 - ?f11");
|
||||
add(L"f407", L"?f405 + ?f11");
|
||||
add(L"f408", L"?f405 + ?f147");
|
||||
add(L"f409", L"?f161 + ?f149");
|
||||
add(L"f410", L"if(?f85, ?f24, ?f406)");
|
||||
add(L"f411", L"if(?f85, ?f27, ?f163)");
|
||||
add(L"f412", L"if(?f85, ?f24, ?f407)");
|
||||
add(L"f413", L"if(?f85, ?f27, ?f165)");
|
||||
add(L"f414", L"if(?f85, ?f406, ?f408)");
|
||||
add(L"f415", L"if(?f85, ?f163, ?f409)");
|
||||
add(L"f416", L"if(?f85, ?f407, ?f408)");
|
||||
add(L"f417", L"if(?f85, ?f165, ?f409)");
|
||||
/////////////////////////////////////////////////////////
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
@ -404,13 +404,17 @@ int draw_enhanced_geometry::parsing(_CP_OPT(std::wstring) val)
|
||||
/// draw-enhanced_geometry_attlist
|
||||
void draw_enhanced_geometry_attlist::serialize(CP_ATTR_NODE)
|
||||
{
|
||||
if (draw_modifiers_ && draw_modifiers_->empty())
|
||||
{
|
||||
draw_modifiers_ = boost::none;
|
||||
}
|
||||
CP_XML_ATTR_OPT(L"draw:type", draw_type_);
|
||||
CP_XML_ATTR_OPT(L"drawooo:sub-view-size", draw_sub_view_size_);
|
||||
CP_XML_ATTR_OPT(L"draw:text-areas", draw_text_areas_);
|
||||
CP_XML_ATTR_OPT(L"draw:text-rotate-angle", draw_text_rotate_angle_);
|
||||
CP_XML_ATTR_OPT(L"draw:modifiers", draw_modifiers_);
|
||||
CP_XML_ATTR_OPT(L"drawooo:enhanced-path", draw_enhanced_path_);
|
||||
//CP_XML_ATTR_OPT(L"draw:enhanced-path", draw_enhanced_path_);
|
||||
//CP_XML_ATTR_OPT(L"drawooo:enhanced-path", draw_enhanced_path_);
|
||||
CP_XML_ATTR_OPT(L"draw:enhanced-path", draw_enhanced_path_);
|
||||
CP_XML_ATTR_OPT(L"draw:glue-points", draw_glue_points_);
|
||||
CP_XML_ATTR_OPT(L"draw:mirror-vertical", draw_mirror_vertical_);
|
||||
CP_XML_ATTR_OPT(L"draw:mirror-horizontal", draw_mirror_horizontal_);
|
||||
|
||||
@ -708,8 +708,14 @@ office_element_ptr odf_drawing_context::Impl::create_draw_element(int type)
|
||||
create_element(L"draw", L"polygon", element, odf_context_);
|
||||
break;
|
||||
case 9:
|
||||
case 10:
|
||||
{
|
||||
create_element(L"draw", L"connector", element, odf_context_);
|
||||
break;
|
||||
draw_connector* connector = dynamic_cast<draw_connector*>(element.get());
|
||||
|
||||
if (type == 10) connector->draw_connector_attlist_.draw_type_ = L"curve";
|
||||
else connector->draw_connector_attlist_.draw_type_ = L"standard";
|
||||
}break;
|
||||
case 5000:
|
||||
create_element(L"draw", L"g", element, odf_context_);
|
||||
break;
|
||||
@ -1160,6 +1166,11 @@ bool odf_drawing_context::isLineShape()
|
||||
case 49: //SimpleTypes::shapetypeCurvedConnector4:
|
||||
case 50: //SimpleTypes::shapetypeCurvedConnector5:
|
||||
case 31: //SimpleTypes::shapetypeBracketPair
|
||||
case 30: //SimpleTypes::shapetypeBracePair
|
||||
case 148: //SimpleTypes::shapetypeRightBracket
|
||||
case 111: //SimpleTypes::shapetypeLeftBracket
|
||||
case 147: //SimpleTypes::shapetypeRightBrace
|
||||
case 110: //SimpleTypes::shapetypeLeftBrace
|
||||
case 18: //SimpleTypes::shapetypeArc
|
||||
return true;
|
||||
case 1000:
|
||||
@ -1267,10 +1278,14 @@ void odf_drawing_context::end_line_properties()
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void odf_drawing_context::set_name(const std::wstring & name)
|
||||
{
|
||||
if (name.empty()) return;
|
||||
|
||||
impl_->current_drawing_state_.name_ = name;
|
||||
}
|
||||
void odf_drawing_context::set_description (const std::wstring & description)
|
||||
{
|
||||
if (description.empty()) return;
|
||||
|
||||
impl_->current_drawing_state_.description_ = description;
|
||||
}
|
||||
void odf_drawing_context::set_hidden (bool bVal)
|
||||
|
||||
@ -83,12 +83,17 @@ oox_shape_ptr oox_shape::create(int ooxPrstGeomType)
|
||||
case SimpleTypes::shapetypeStar12: return boost::make_shared<oox_shape_star12>();
|
||||
case SimpleTypes::shapetypeStar16: return boost::make_shared<oox_shape_star16>();
|
||||
case SimpleTypes::shapetypeStar32: return boost::make_shared<oox_shape_star32>();
|
||||
|
||||
case SimpleTypes::shapetypeSun: return boost::make_shared<oox_shape_sun>();
|
||||
case SimpleTypes::shapetypeMoon: return boost::make_shared<oox_shape_moon>();
|
||||
case SimpleTypes::shapetypeLightningBolt: return boost::make_shared<oox_shape_lightningBolt>();
|
||||
case SimpleTypes::shapetypeHeart: return boost::make_shared<oox_shape_heart>();
|
||||
|
||||
case SimpleTypes::shapetypeCircularArrow: return boost::make_shared<oox_shape_CircularArrow>();
|
||||
case SimpleTypes::shapetypeCurvedLeftArrow: return boost::make_shared<oox_shape_CurvedLeftArrow>();
|
||||
case SimpleTypes::shapetypeCurvedRightArrow: return boost::make_shared<oox_shape_CurvedRightArrow>();
|
||||
case SimpleTypes::shapetypeCurvedDownArrow: return boost::make_shared<oox_shape_CurvedDownArrow>();
|
||||
case SimpleTypes::shapetypeCurvedUpArrow: return boost::make_shared<oox_shape_CurvedUpArrow>();
|
||||
case SimpleTypes::shapetypeLeftCircularArrow: return boost::make_shared<oox_shape_LeftCircularArrow>();
|
||||
case SimpleTypes::shapetypeSwooshArrow: return boost::make_shared<oox_shape_SwooshArrow>();
|
||||
case SimpleTypes::shapetypeLeftArrow: return boost::make_shared<oox_shape_LeftArrow>();
|
||||
@ -99,6 +104,7 @@ oox_shape_ptr oox_shape::create(int ooxPrstGeomType)
|
||||
case SimpleTypes::shapetypeDownArrow: return boost::make_shared<oox_shape_DownArrow>();
|
||||
case SimpleTypes::shapetypeUpArrow: return boost::make_shared<oox_shape_UpArrow>();
|
||||
case SimpleTypes::shapetypeNotchedRightArrow: return boost::make_shared<oox_shape_NotchedRightArrow>();
|
||||
case SimpleTypes::shapetypeQuadArrowCallout: return boost::make_shared<oox_shape_QuadArrowCallout>();
|
||||
|
||||
case SimpleTypes::shapetypeFunnel: return boost::make_shared<oox_shape_Funnel>();
|
||||
case SimpleTypes::shapetypeGear6: return boost::make_shared<oox_shape_Gear6>();
|
||||
@ -124,7 +130,8 @@ oox_shape_ptr oox_shape::create(int ooxPrstGeomType)
|
||||
case SimpleTypes::shapetypeDonut: return boost::make_shared<oox_shape_Donut>();
|
||||
case SimpleTypes::shapetypeLeftRightRibbon: return boost::make_shared<oox_shape_LeftRightRibbon>();
|
||||
case SimpleTypes::shapetypeWave: return boost::make_shared<oox_shape_Wave>();
|
||||
case SimpleTypes::shapetypeBracketPair: return boost::make_shared<oox_shape_bracketPair>();
|
||||
case SimpleTypes::shapetypeFoldedCorner: return boost::make_shared<oox_shape_FoldedCorner>();
|
||||
case SimpleTypes::shapetypeCan: return boost::make_shared<oox_shape_Can>();
|
||||
|
||||
case SimpleTypes::shapetypeFlowChartExtract: return boost::make_shared<oox_shape_FlowChartExtract>();
|
||||
|
||||
@ -138,6 +145,46 @@ oox_shape_ptr oox_shape::create(int ooxPrstGeomType)
|
||||
|
||||
case SimpleTypes::shapetypeStraightConnector1: return boost::make_shared<oox_shape_StraightConnector1>();
|
||||
case SimpleTypes::shapetypeFrame: return boost::make_shared<oox_shape_Frame>();
|
||||
case SimpleTypes::shapetypePentagon: return boost::make_shared<oox_shape_Pentagon>();
|
||||
case SimpleTypes::shapetypeOctagon: return boost::make_shared<oox_shape_Octagon>();
|
||||
case SimpleTypes::shapetypeHexagon: return boost::make_shared<oox_shape_Hexagon>();
|
||||
case SimpleTypes::shapetypeHeptagon: return boost::make_shared<oox_shape_Heptagon>();
|
||||
case SimpleTypes::shapetypeDecagon: return boost::make_shared<oox_shape_Decagon>();
|
||||
case SimpleTypes::shapetypeDodecagon: return boost::make_shared<oox_shape_Dodecagon>();
|
||||
case SimpleTypes::shapetypeCube: return boost::make_shared<oox_shape_Cube>();
|
||||
|
||||
case SimpleTypes::shapetypeCallout1: return boost::make_shared<oox_shape_Callout1>();
|
||||
case SimpleTypes::shapetypeCallout2: return boost::make_shared<oox_shape_Callout2>();
|
||||
// case SimpleTypes::shapetypeCallout3: return boost::make_shared<oox_shape_Callout3>();
|
||||
|
||||
case SimpleTypes::shapetypeAccentCallout1: return boost::make_shared<oox_shape_AccentCallout1>();
|
||||
case SimpleTypes::shapetypeAccentCallout2: return boost::make_shared<oox_shape_AccentCallout2>();
|
||||
case SimpleTypes::shapetypeAccentCallout3: return boost::make_shared<oox_shape_AccentCallout3>();
|
||||
|
||||
case SimpleTypes::shapetypeBorderCallout1: return boost::make_shared<oox_shape_BorderCallout1>();
|
||||
case SimpleTypes::shapetypeBorderCallout2: return boost::make_shared<oox_shape_BorderCallout2>();
|
||||
case SimpleTypes::shapetypeBorderCallout3: return boost::make_shared<oox_shape_BorderCallout3>();
|
||||
|
||||
case SimpleTypes::shapetypeAccentBorderCallout1: return boost::make_shared<oox_shape_AccentBorderCallout1>();
|
||||
case SimpleTypes::shapetypeAccentBorderCallout2: return boost::make_shared<oox_shape_AccentBorderCallout2>();
|
||||
case SimpleTypes::shapetypeAccentBorderCallout3: return boost::make_shared<oox_shape_AccentBorderCallout3>();
|
||||
|
||||
case SimpleTypes::shapetypeCloudCallout: return boost::make_shared<oox_shape_CloudCallout>();
|
||||
case SimpleTypes::shapetypeWedgeRectCallout: return boost::make_shared<oox_shape_WedgeRectCallout>();
|
||||
case SimpleTypes::shapetypeWedgeRoundRectCallout: return boost::make_shared<oox_shape_WedgeRoundRectCallout>();
|
||||
case SimpleTypes::shapetypeWedgeEllipseCallout: return boost::make_shared<oox_shape_WedgeEllipseCallout>();
|
||||
|
||||
case SimpleTypes::shapetypeRibbon: return boost::make_shared<oox_shape_Ribbon>();
|
||||
case SimpleTypes::shapetypeRibbon2: return boost::make_shared<oox_shape_Ribbon2>();
|
||||
case SimpleTypes::shapetypeEllipseRibbon: return boost::make_shared<oox_shape_EllipseRibbon>();
|
||||
case SimpleTypes::shapetypeEllipseRibbon2: return boost::make_shared<oox_shape_EllipseRibbon2>();
|
||||
|
||||
case SimpleTypes::shapetypeRightBrace: return boost::make_shared<oox_shape_RightBrace>();
|
||||
case SimpleTypes::shapetypeLeftBrace: return boost::make_shared<oox_shape_LeftBrace>();
|
||||
case SimpleTypes::shapetypeRightBracket: return boost::make_shared<oox_shape_RightBracket>();
|
||||
case SimpleTypes::shapetypeLeftBracket: return boost::make_shared<oox_shape_LeftBracket>();
|
||||
case SimpleTypes::shapetypeBracePair: return boost::make_shared<oox_shape_BracePair>();
|
||||
case SimpleTypes::shapetypeBracketPair: return boost::make_shared<oox_shape_BracketPair>();
|
||||
//case (2001 + SimpleTypes::textshapetypeTextArchDown):
|
||||
//case (2001 + SimpleTypes::textshapetypeTextArchDownPour):
|
||||
//case (2001 + SimpleTypes::textshapetypeTextArchUp):
|
||||
|
||||
@ -666,7 +666,14 @@ namespace PPTX
|
||||
|
||||
std::wstring strValue = strParams.substr(nPosOld, nPosition - nPosOld);
|
||||
|
||||
m_mapSettings.insert(std::pair<std::wstring, std::wstring>(strName, strValue));
|
||||
if (m_mapSettings.find(strName) == m_mapSettings.end())
|
||||
{
|
||||
m_mapSettings.insert(std::make_pair(strName, strValue));
|
||||
}
|
||||
else
|
||||
{
|
||||
m_mapSettings[strName] += L"," + strValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -733,8 +740,14 @@ namespace PPTX
|
||||
if (pData[nPosOld] == WCHAR('.'))
|
||||
strValue = (L"0" + strValue);
|
||||
|
||||
//добавляем через [], а не insert, потому что ключи могут дублироваться(а в предыдущей реализации использовалось последнее значение)
|
||||
m_mapSettings[strName] = strValue;
|
||||
if (m_mapSettings.find(strName) == m_mapSettings.end())
|
||||
{
|
||||
m_mapSettings.insert(std::make_pair(strName, strValue));
|
||||
}
|
||||
else
|
||||
{
|
||||
m_mapSettings[strName] += L"," + strValue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1346,10 +1359,21 @@ std::wstring CDrawingConverter::ObjectToDrawingML(const std::wstring& sXml, int
|
||||
|
||||
oXmlWriter.WriteString(strMainProps);
|
||||
|
||||
std::wstring uri = oElem.GetUriElem();
|
||||
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"><a:graphicData uri=\"" + uri + L"\">");
|
||||
|
||||
if (oElem.is<PPTX::Logic::SpTree>())
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\">");
|
||||
}
|
||||
else if (oElem.is<PPTX::Logic::Pic>())
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/picture\">");
|
||||
}
|
||||
else
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\">");
|
||||
}
|
||||
oElem.toXmlWriter(&oXmlWriter);
|
||||
oXmlWriter.WriteString(L"</a:graphicData></a:graphic>");
|
||||
|
||||
@ -1400,31 +1424,7 @@ std::wstring CDrawingConverter::ObjectToVML (const std::wstring& sXml)
|
||||
|
||||
HRESULT CDrawingConverter::AddObject(const std::wstring& bsXml, std::wstring** pMainProps)
|
||||
{
|
||||
std::wstring sBegin(L"<main \
|
||||
xmlns:wpc=\"http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas\" \
|
||||
xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" \
|
||||
xmlns:p=\"urn:schemas-microsoft-com:office:powerpoint\" \
|
||||
xmlns:v=\"urn:schemas-microsoft-com:vml\" \
|
||||
xmlns:x=\"urn:schemas-microsoft-com:office:excel\" \
|
||||
xmlns:o=\"urn:schemas-microsoft-com:office:office\" \
|
||||
xmlns:w10=\"urn:schemas-microsoft-com:office:word\" \
|
||||
xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" \
|
||||
xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\" \
|
||||
xmlns:ve=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" \
|
||||
xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" \
|
||||
xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" \
|
||||
xmlns:wp14=\"http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing\" \
|
||||
xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\" \
|
||||
xmlns:w15=\"http://schemas.microsoft.com/office/word/2012/wordml\" \
|
||||
xmlns:wpg=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\" \
|
||||
xmlns:wpi=\"http://schemas.microsoft.com/office/word/2010/wordprocessingInk\" \
|
||||
xmlns:wne=\"http://schemas.microsoft.com/office/word/2006/wordml\" \
|
||||
xmlns:wps=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\" \
|
||||
xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" \
|
||||
xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\" \
|
||||
xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\" \
|
||||
xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\" \
|
||||
mc:Ignorable=\"w14 w15 wp14\">");
|
||||
std::wstring sBegin(L"<main xmlns:wpc=\"http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas\" xmlns:mc=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" xmlns:p=\"urn:schemas-microsoft-com:office:powerpoint\" xmlns:v=\"urn:schemas-microsoft-com:vml\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns:o=\"urn:schemas-microsoft-com:office:office\" xmlns:w10=\"urn:schemas-microsoft-com:office:word\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" xmlns:m=\"http://schemas.openxmlformats.org/officeDocument/2006/math\" xmlns:ve=\"http://schemas.openxmlformats.org/markup-compatibility/2006\" xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\" xmlns:wp=\"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing\" xmlns:wp14=\"http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing\" xmlns:w14=\"http://schemas.microsoft.com/office/word/2010/wordml\" xmlns:w15=\"http://schemas.microsoft.com/office/word/2012/wordml\" xmlns:wpg=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\" xmlns:wpi=\"http://schemas.microsoft.com/office/word/2010/wordprocessingInk\" xmlns:wne=\"http://schemas.microsoft.com/office/word/2006/wordml\" xmlns:wps=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\" xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\" xmlns:pic=\"http://schemas.openxmlformats.org/drawingml/2006/picture\" xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\">");
|
||||
|
||||
std::wstring sEnd(L"</main>");
|
||||
std::wstring strXml = sBegin + bsXml + sEnd;
|
||||
@ -2399,25 +2399,6 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
XmlMacroReadAttributeBase(oNodeShape, L"strokecolor", sStrokeColor);
|
||||
XmlMacroReadAttributeBase(oNodeShape, L"strokeweight", sStrokeWeight);
|
||||
XmlMacroReadAttributeBase(oNodeShape, L"stroked", sStroked);
|
||||
|
||||
XmlUtils::CXmlNode oNodeStroke = oNodeShape.ReadNode(L"v:stroke");
|
||||
if (oNodeStroke.IsValid())
|
||||
{
|
||||
nullable_string sStrokeOn;
|
||||
XmlMacroReadAttributeBase(oNodeStroke, L"on", sStrokeOn);
|
||||
if (sStrokeOn.is_init())
|
||||
{
|
||||
sStroked.reset();
|
||||
sStroked = sStrokeOn;
|
||||
}
|
||||
nullable_string sStrokeColor1;
|
||||
XmlMacroReadAttributeBase(oNodeStroke, L"strokecolor", sStrokeColor1);
|
||||
if (sStrokeColor1.is_init())
|
||||
{
|
||||
sStrokeColor1.reset();
|
||||
sStrokeColor = sStrokeColor1;
|
||||
}
|
||||
}
|
||||
|
||||
//textFill
|
||||
strRPr += L"<w14:textFill>";
|
||||
@ -2565,7 +2546,8 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
strRPr += L"<w14:noFill/>";
|
||||
bStroked = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (sStrokeColor.is_init())
|
||||
{
|
||||
color = NS_DWC_Common::getColorFromString(*sStrokeColor);
|
||||
@ -2864,7 +2846,8 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
pSpPr->xfrm->flipH = true;
|
||||
else if (pFind->second == L"y")
|
||||
pSpPr->xfrm->flipV = true;
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x"))
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x")
|
||||
|| (pFind->second == L"y,x") || (pFind->second == L"x,y"))
|
||||
{
|
||||
pSpPr->xfrm->flipH = true;
|
||||
pSpPr->xfrm->flipV = true;
|
||||
@ -2898,7 +2881,8 @@ void CDrawingConverter::doc_LoadShape(PPTX::Logic::SpTreeElem *elem, XmlUtils::C
|
||||
pSpPr->xfrm->flipH = true;
|
||||
else if (pFind->second == L"y")
|
||||
pSpPr->xfrm->flipV = true;
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x"))
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x")
|
||||
|| (pFind->second == L"y,x") || (pFind->second == L"x,y"))
|
||||
{
|
||||
pSpPr->xfrm->flipH = true;
|
||||
pSpPr->xfrm->flipV = true;
|
||||
@ -3062,7 +3046,8 @@ void CDrawingConverter::doc_LoadGroup(PPTX::Logic::SpTreeElem *result, XmlUtils:
|
||||
pTree->grpSpPr.xfrm->flipH = true;
|
||||
else if (pFind->second == L"y")
|
||||
pTree->grpSpPr.xfrm->flipV = true;
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x"))
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x")
|
||||
|| (pFind->second == L"y,x") || (pFind->second == L"x,y"))
|
||||
{
|
||||
pTree->grpSpPr.xfrm->flipH = true;
|
||||
pTree->grpSpPr.xfrm->flipV = true;
|
||||
@ -3102,7 +3087,8 @@ void CDrawingConverter::doc_LoadGroup(PPTX::Logic::SpTreeElem *result, XmlUtils:
|
||||
pTree->grpSpPr.xfrm->flipH = true;
|
||||
else if (pFind->second == L"y")
|
||||
pTree->grpSpPr.xfrm->flipV = true;
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x"))
|
||||
else if ((pFind->second == L"xy") || (pFind->second == L"yx") || (pFind->second == L"x y") || (pFind->second == L"y x")
|
||||
|| (pFind->second == L"y,x") || (pFind->second == L"x,y"))
|
||||
{
|
||||
pTree->grpSpPr.xfrm->flipH = true;
|
||||
pTree->grpSpPr.xfrm->flipV = true;
|
||||
@ -4492,21 +4478,9 @@ void CDrawingConverter::CheckPenShape(PPTX::Logic::SpTreeElem* oElem, XmlUtils::
|
||||
pSpPr->ln->w = size;
|
||||
pPPTShape->m_bIsStroked = true;
|
||||
}
|
||||
XmlUtils::CXmlNode oNodeStroke = oNode.ReadNode(L"v:stroke");
|
||||
|
||||
|
||||
nullable_string sStroked;
|
||||
XmlMacroReadAttributeBase(oNode, L"stroked", sStroked);
|
||||
|
||||
if (oNodeStroke.IsValid())
|
||||
{
|
||||
nullable_string sStrokeOn;
|
||||
XmlMacroReadAttributeBase(oNodeStroke, L"on", sStrokeOn);
|
||||
if (sStrokeOn.is_init())
|
||||
{
|
||||
sStroked.reset();
|
||||
sStroked = sStrokeOn;
|
||||
}
|
||||
}
|
||||
if (sStroked.is_init())
|
||||
{
|
||||
if (*sStroked == L"false" || *sStroked == L"f")
|
||||
@ -4527,8 +4501,16 @@ void CDrawingConverter::CheckPenShape(PPTX::Logic::SpTreeElem* oElem, XmlUtils::
|
||||
pSpPr->ln->Fill.Fill = new PPTX::Logic::NoFill();
|
||||
}
|
||||
|
||||
XmlUtils::CXmlNode oNodeStroke = oNode.ReadNode(L"v:stroke");
|
||||
if (oNodeStroke.IsValid())
|
||||
{
|
||||
nullable_string sStrokeOn;
|
||||
XmlMacroReadAttributeBase(oNodeStroke, L"on", sStrokeOn);
|
||||
if (sStrokeOn.is_init())
|
||||
{
|
||||
sStroked.reset();
|
||||
sStroked = sStrokeOn;
|
||||
}
|
||||
sStrokeColor.reset();
|
||||
XmlMacroReadAttributeBase(oNodeStroke, L"strokecolor", sStrokeColor);
|
||||
if (sStrokeColor.is_init())
|
||||
@ -4787,6 +4769,14 @@ HRESULT CDrawingConverter::SaveObject(LONG lStart, LONG lLength, const std::wstr
|
||||
if(oPic.oleObject.IsInit())
|
||||
{
|
||||
bOle = oPic.oleObject->isValid();
|
||||
if (oPic.oleObject->m_oDxaOrig.IsInit() == false)
|
||||
{
|
||||
oPic.oleObject->m_oDxaOrig = 0;
|
||||
}
|
||||
if (oPic.oleObject->m_oDyaOrig.IsInit() == false)
|
||||
{
|
||||
oPic.oleObject->m_oDyaOrig = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
bool bSignatureLine = false;
|
||||
@ -4844,12 +4834,24 @@ HRESULT CDrawingConverter::SaveObject(LONG lStart, LONG lLength, const std::wstr
|
||||
oXmlWriter.WriteString(L"<w:drawing>");
|
||||
oXmlWriter.WriteString(strMainProps);
|
||||
|
||||
std::wstring uri = oElem.GetUriElem();
|
||||
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\"><a:graphicData uri=\"" + uri + L"\">");
|
||||
|
||||
if (oElem.is<PPTX::Logic::SpTree>())
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup\">");
|
||||
}
|
||||
else if (oElem.is<PPTX::Logic::Pic>())
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/picture\">");
|
||||
}
|
||||
else
|
||||
{
|
||||
oXmlWriter.WriteString(L"<a:graphic xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\">\
|
||||
<a:graphicData uri=\"http://schemas.microsoft.com/office/word/2010/wordprocessingShape\">");
|
||||
}
|
||||
oElem.toXmlWriter(&oXmlWriter);
|
||||
oXmlWriter.WriteString(L"</a:graphicData></a:graphic>");
|
||||
oXmlWriter.WriteString(L"</a:graphicData>\
|
||||
</a:graphic>");
|
||||
|
||||
oXmlWriter.WriteString(strMainPropsTail);
|
||||
oXmlWriter.WriteString(bIsInline ? L"</wp:inline>" : L"</wp:anchor>");
|
||||
|
||||
@ -190,7 +190,6 @@ namespace NSBinPptxRW
|
||||
#define SPTREE_TYPE_OLE 6
|
||||
#define SPTREE_TYPE_VIDEO 7
|
||||
#define SPTREE_TYPE_AUDIO 8
|
||||
#define SPTREE_TYPE_LOCKED_CANVAS 9
|
||||
|
||||
static BYTE SchemeClr_GetBYTECode(const std::wstring& sValue)
|
||||
{
|
||||
@ -275,9 +274,9 @@ static std::wstring SchemeClr_GetStringCode(const BYTE& val)
|
||||
#define XMLWRITER_DOC_TYPE_PPTX 0
|
||||
#define XMLWRITER_DOC_TYPE_DOCX 1
|
||||
#define XMLWRITER_DOC_TYPE_XLSX 2
|
||||
#define XMLWRITER_DOC_TYPE_CHART 3
|
||||
#define XMLWRITER_DOC_TYPE_WORDART 4
|
||||
#define XMLWRITER_DOC_TYPE_GRAPHICS 5
|
||||
#define XMLWRITER_DOC_TYPE_CHART 3
|
||||
#define XMLWRITER_DOC_TYPE_WORDART 4
|
||||
#define XMLWRITER_DOC_TYPE_DOCX_CHILD 5
|
||||
|
||||
#define XMLWRITER_RECORD_TYPE_SPPR 0
|
||||
#define XMLWRITER_RECORD_TYPE_CLRMAPOVR 1
|
||||
|
||||
@ -717,7 +717,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteUSHORT(const _UINT16& lValue)
|
||||
{
|
||||
CheckBufferSize(UINT16_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lValue, sizeof(_UINT16));
|
||||
#else
|
||||
*((_UINT16*)m_pStreamCur) = lValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -728,7 +728,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteULONG(const _UINT32& lValue)
|
||||
{
|
||||
CheckBufferSize(UINT32_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lValue, sizeof(_UINT32));
|
||||
#else
|
||||
*((_UINT32*)m_pStreamCur) = lValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -739,7 +739,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteLONG(const _INT32& lValue)
|
||||
{
|
||||
CheckBufferSize(INT32_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lValue, sizeof(_INT32));
|
||||
#else
|
||||
*((_INT32*)m_pStreamCur) = lValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -750,7 +750,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteLONG64(const _INT64& lValue)
|
||||
{
|
||||
CheckBufferSize(INT64_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lValue, sizeof(_INT64));
|
||||
#else
|
||||
*((_INT64*)m_pStreamCur) = lValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -761,7 +761,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteINT(const _INT32& lValue)
|
||||
{
|
||||
CheckBufferSize(INT32_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lValue, sizeof(_INT32));
|
||||
#else
|
||||
*((_INT32*)m_pStreamCur) = lValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -794,7 +794,7 @@ namespace NSBinPptxRW
|
||||
void CBinaryFileWriter::WriteDoubleReal(const double& dValue)
|
||||
{
|
||||
CheckBufferSize(DOUBLE_SIZEOF);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &dValue, sizeof(double));
|
||||
#else
|
||||
*((double*)m_pStreamCur) = dValue; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -815,7 +815,7 @@ namespace NSBinPptxRW
|
||||
_UINT32 lSizeMem = lSize * sizeof(char);
|
||||
|
||||
CheckBufferSize(UINT32_SIZEOF + lSizeMem);
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(m_pStreamCur, &lSizeMem, sizeof(_UINT32));
|
||||
#else
|
||||
*((_UINT32*)m_pStreamCur) = lSizeMem; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -926,7 +926,7 @@ namespace NSBinPptxRW
|
||||
{
|
||||
*pData = (BYTE)m_arMainTables[i].Type;
|
||||
++pData;
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
memcpy(pData, &m_arMainTables[i].SeekPos, sizeof(_INT32));
|
||||
#else
|
||||
*((_INT32*)pData) = m_arMainTables[i].SeekPos; // EXC_ARM_DA_ALIGN on ios
|
||||
@ -1661,7 +1661,7 @@ namespace NSBinPptxRW
|
||||
{
|
||||
if (m_lPos + 1 >= m_lSize)
|
||||
return 0;
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
_UINT16 res = 0;
|
||||
memcpy(&res, m_pDataCur, sizeof(_UINT16));
|
||||
#else
|
||||
@ -1677,7 +1677,7 @@ namespace NSBinPptxRW
|
||||
{
|
||||
if (m_lPos + 3 >= m_lSize)
|
||||
return 0;
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
_UINT32 res = 0;
|
||||
memcpy(&res, m_pDataCur, sizeof(_UINT32));
|
||||
#else
|
||||
@ -1691,7 +1691,7 @@ namespace NSBinPptxRW
|
||||
{
|
||||
if (m_lPos + 7 >= m_lSize)
|
||||
return 0;
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
_INT64 res = 0;
|
||||
memcpy(&res, m_pDataCur, sizeof(_INT64));
|
||||
#else
|
||||
@ -1717,7 +1717,7 @@ namespace NSBinPptxRW
|
||||
{
|
||||
if (m_lPos + (int)DOUBLE_SIZEOF > m_lSize)
|
||||
return 0;
|
||||
#if defined(_IOS) || defined(__ANDROID__)
|
||||
#ifdef _IOS
|
||||
double res = 0.0;
|
||||
memcpy(&res, m_pDataCur, sizeof(double));
|
||||
#else
|
||||
|
||||
@ -91,11 +91,11 @@ namespace PPTX
|
||||
XmlMacroLoadArray(oNodeVector2, _T("vt:variant"), TitlesOfParts, Logic::PartTitle);
|
||||
}
|
||||
|
||||
XmlMacroReadNodeValueBase(oNode, L"Company", Company);
|
||||
XmlMacroReadNodeValueBase(oNode, L"LinksUpToDate", LinksUpToDate);
|
||||
XmlMacroReadNodeValueBase(oNode, L"SharedDoc", SharedDoc);
|
||||
XmlMacroReadNodeValueBase(oNode, L"HyperlinksChanged", HyperlinksChanged);
|
||||
XmlMacroReadNodeValueBase(oNode, L"AppVersion", AppVersion);
|
||||
XmlMacroReadAttributeBase(oNode, L"Company", Company);
|
||||
XmlMacroReadAttributeBase(oNode, L"LinksUpToDate", LinksUpToDate);
|
||||
XmlMacroReadAttributeBase(oNode, L"SharedDoc", SharedDoc);
|
||||
XmlMacroReadAttributeBase(oNode, L"HyperlinksChanged", HyperlinksChanged);
|
||||
XmlMacroReadAttributeBase(oNode, L"AppVersion", AppVersion);
|
||||
|
||||
//Characters = document.Root.element("Characters").text();
|
||||
//CharactersWithSpaces = document.Root.element("CharactersWithSpaces").text();
|
||||
|
||||
@ -62,11 +62,11 @@ namespace PPTX
|
||||
oNode.FromXmlFile(filename.m_strFilename);
|
||||
|
||||
XmlMacroReadNodeValueBase(oNode, _T("dc:title"), title);
|
||||
XmlMacroReadNodeValueBase(oNode, _T("dc:creator"), creator);
|
||||
XmlMacroReadNodeValueBase(oNode, _T("cp:lastModifiedBy"), lastModifiedBy);
|
||||
XmlMacroReadNodeValueBase(oNode, _T("cp:revision"), revision);
|
||||
XmlMacroReadNodeValueBase(oNode, _T("dcterms:modified"), modified);
|
||||
XmlMacroReadNodeValueBase(oNode, _T("dcterms:created"), created);
|
||||
XmlMacroReadAttributeBase(oNode, _T("dc:creator"), creator);
|
||||
XmlMacroReadAttributeBase(oNode, _T("cp:lastModifiedBy"), lastModifiedBy);
|
||||
XmlMacroReadAttributeBase(oNode, _T("cp:revision"), revision);
|
||||
XmlMacroReadAttributeBase(oNode, _T("dcterms:modified"), modified);
|
||||
XmlMacroReadAttributeBase(oNode, _T("dcterms:created"), created);
|
||||
|
||||
// created = PPTX::DateTime::Parse(document.Root.element("created").text().ToString());
|
||||
// modified = PPTX::DateTime::Parse(document.Root.element("modified").text().ToString());
|
||||
|
||||
@ -192,9 +192,8 @@ namespace PPTX
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)namespace_ = L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = _T("xdr");
|
||||
|
||||
pWriter->StartNode(namespace_ + L":cNvCxnSpPr");
|
||||
|
||||
|
||||
@ -143,7 +143,6 @@ namespace PPTX
|
||||
namespaceLockLink_ = PPTX::g_Namespaces.a.m_strLink;
|
||||
namespace_ = L"wp";
|
||||
}
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":cNvGraphicFramePr");
|
||||
|
||||
|
||||
@ -58,10 +58,9 @@ namespace PPTX
|
||||
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
std::wstring ns = m_namespace;
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX)
|
||||
ns = L"xdr";
|
||||
|
||||
if (!noChangeAspect.is_init() &&
|
||||
!noGrp.is_init() &&
|
||||
@ -71,11 +70,11 @@ namespace PPTX
|
||||
!noSelect.is_init() &&
|
||||
!noUngrp.is_init())
|
||||
{
|
||||
pWriter->WriteString(L"<" + namespace_ + L":cNvGrpSpPr/>");
|
||||
pWriter->WriteString(L"<" + ns + L":cNvGrpSpPr/>");
|
||||
return;
|
||||
}
|
||||
|
||||
pWriter->WriteString(L"<" + namespace_ + L":cNvGrpSpPr>");
|
||||
pWriter->WriteString(L"<" + ns + L":cNvGrpSpPr>");
|
||||
|
||||
pWriter->StartNode(_T("a:grpSpLocks"));
|
||||
|
||||
@ -91,7 +90,7 @@ namespace PPTX
|
||||
|
||||
pWriter->EndNode(_T("a:grpSpLocks"));
|
||||
|
||||
pWriter->WriteString(L"</" + namespace_ + L":cNvGrpSpPr>");
|
||||
pWriter->WriteString(L"</" + ns + L":cNvGrpSpPr>");
|
||||
}
|
||||
|
||||
void toXmlWriter2(const std::wstring& strNS, NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
|
||||
@ -169,7 +169,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"pic";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":cNvPicPr");
|
||||
|
||||
|
||||
@ -178,9 +178,8 @@ namespace PPTX
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_= L"pic";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_= L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)namespace_= L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_= _T("pic");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_= _T("xdr");
|
||||
|
||||
toXmlWriter2(namespace_, pWriter);
|
||||
|
||||
|
||||
@ -161,9 +161,8 @@ namespace PPTX
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = _T("xdr");
|
||||
|
||||
pWriter->StartNode(namespace_ + L":cNvSpPr");
|
||||
|
||||
|
||||
@ -91,8 +91,7 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)namespace_ = L"a";
|
||||
|
||||
|
||||
pWriter->StartNode(namespace_ + L":cxnSp");
|
||||
|
||||
pWriter->EndAttributes();
|
||||
@ -102,9 +101,10 @@ namespace PPTX
|
||||
|
||||
if (style.is_init())
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) style->m_namespace = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) style->m_namespace = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)style->m_namespace = L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
style->m_namespace = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX)
|
||||
style->m_namespace = _T("xdr");
|
||||
|
||||
pWriter->Write(style);
|
||||
}
|
||||
|
||||
@ -351,12 +351,14 @@ namespace PPTX
|
||||
nvGraphicFramePr.toXmlWriter(pWriter);
|
||||
|
||||
if (xfrm.IsInit() && pWriter->m_lDocType != XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && pWriter->m_lGroupIndex >= 0) xfrm->m_ns = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) xfrm->m_ns = L"a";
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && pWriter->m_lGroupIndex >= 0) namespace_ = L"xdr";
|
||||
|
||||
xfrm->m_ns = namespace_;
|
||||
xfrm->toXmlWriter(pWriter);
|
||||
}
|
||||
|
||||
if (table.is_init())
|
||||
{
|
||||
pWriter->WriteString (L"<a:graphic><a:graphicData uri=\"http://schemas.openxmlformats.org/drawingml/2006/table\">");
|
||||
@ -376,7 +378,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX && pWriter->m_lGroupIndex >= 0) namespace_ = L"wpg";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && pWriter->m_lGroupIndex >= 0) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":graphicFrame");
|
||||
|
||||
|
||||
@ -165,7 +165,6 @@ namespace PPTX
|
||||
std::wstring namespace_ = m_namespace;
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wpg";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":grpSpPr");
|
||||
|
||||
|
||||
@ -109,9 +109,8 @@ namespace PPTX
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)namespace_ = L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = _T("xdr");
|
||||
|
||||
pWriter->StartNode(namespace_ + L":nvCxnSpPr");
|
||||
|
||||
|
||||
@ -117,7 +117,7 @@ namespace PPTX
|
||||
return;
|
||||
}
|
||||
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && pWriter->m_lGroupIndex >= 0)
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && pWriter->m_lGroupIndex >= 0)
|
||||
{
|
||||
pWriter->StartNode(_T("xdr:nvGraphicFramePr"));
|
||||
pWriter->EndAttributes();
|
||||
@ -128,20 +128,15 @@ namespace PPTX
|
||||
pWriter->EndNode(_T("xdr:nvGraphicFramePr"));
|
||||
return;
|
||||
}
|
||||
std::wstring namespace_ = m_namespace;
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)
|
||||
{
|
||||
namespace_ = L"a";
|
||||
}
|
||||
|
||||
pWriter->StartNode(namespace_ + L":nvGraphicFramePr");
|
||||
pWriter->StartNode(_T("p:nvGraphicFramePr"));
|
||||
pWriter->EndAttributes();
|
||||
|
||||
cNvPr.toXmlWriter(pWriter);
|
||||
cNvGraphicFramePr.toXmlWriter(pWriter);
|
||||
nvPr.toXmlWriter(pWriter);
|
||||
|
||||
pWriter->EndNode(namespace_ + L":nvGraphicFramePr");
|
||||
pWriter->EndNode(_T("p:nvGraphicFramePr"));
|
||||
}
|
||||
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
|
||||
@ -79,7 +79,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wpg";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":nvGrpSpPr");
|
||||
|
||||
|
||||
@ -129,7 +129,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"pic";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
pWriter->StartNode(namespace_ + L":nvPicPr");
|
||||
|
||||
|
||||
@ -125,9 +125,8 @@ namespace PPTX
|
||||
{
|
||||
std::wstring namespace_ = m_namespace;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = _T("xdr");
|
||||
|
||||
pWriter->StartNode( namespace_ + L":nvSpPr");
|
||||
|
||||
|
||||
@ -323,7 +323,8 @@ namespace PPTX
|
||||
{
|
||||
m_OleObjectFile = new OOX::OleObject(NULL, true, pReader->m_nDocumentType == XMLWRITER_DOC_TYPE_DOCX);
|
||||
|
||||
std::wstring strOlePath = pReader->GetString(_embed_data_size);
|
||||
BYTE type = pReader->GetUChar();
|
||||
std::wstring strOlePath = pReader->GetString2();
|
||||
m_OleObjectFile->set_filename(strOlePath, false); //temp !!! for ImageManager original file name
|
||||
}
|
||||
else if (embedded_type == 4)
|
||||
@ -752,7 +753,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) namespace_ = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) namespace_ = L"pic";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) namespace_ = L"a";
|
||||
|
||||
if (pWriter->m_lDocType != XMLWRITER_DOC_TYPE_XLSX &&
|
||||
pWriter->m_lDocType != XMLWRITER_DOC_TYPE_DOCX)
|
||||
|
||||
@ -207,7 +207,6 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) name_ = L"wps:wsp";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) name_ = L"xdr:sp";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) name_ = L"a:sp";
|
||||
|
||||
pWriter->StartNode(name_);
|
||||
|
||||
@ -237,6 +236,21 @@ namespace PPTX
|
||||
pWriter->m_lFlag -= 0x02;
|
||||
}
|
||||
|
||||
if (style.is_init())
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) style->m_namespace = _T("wps");
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) style->m_namespace = _T("xdr");
|
||||
|
||||
pWriter->Write(style);
|
||||
}
|
||||
|
||||
if (pWriter->m_lDocType != XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX && txBody.is_init())
|
||||
txBody->m_name = _T("xdr:txBody");
|
||||
pWriter->Write(txBody);
|
||||
}
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
bool bIsWritedBodyPr = false;
|
||||
@ -265,33 +279,7 @@ namespace PPTX
|
||||
pWriter->WriteString(_T("<wps:bodyPr rot=\"0\"><a:prstTxWarp prst=\"textNoShape\"><a:avLst/></a:prstTxWarp><a:noAutofit/></wps:bodyPr>"));
|
||||
}
|
||||
}
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS)
|
||||
{
|
||||
txBody->m_name = L"a:txBody";
|
||||
|
||||
pWriter->StartNode(L"a:txSp");
|
||||
pWriter->EndAttributes();
|
||||
pWriter->Write(txBody);
|
||||
pWriter->WriteString(L"<a:useSpRect/>");
|
||||
pWriter->EndNode(L"a:txSp");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (txBody.is_init())
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX)
|
||||
txBody->m_name = L"xdr:txBody";
|
||||
}
|
||||
pWriter->Write(txBody);
|
||||
}
|
||||
if (style.is_init())
|
||||
{
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX) style->m_namespace = L"wps";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) style->m_namespace = L"xdr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) style->m_namespace = L"a";
|
||||
|
||||
pWriter->Write(style);
|
||||
}
|
||||
pWriter->EndNode(name_);
|
||||
}
|
||||
|
||||
|
||||
@ -80,22 +80,24 @@ namespace PPTX
|
||||
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
std::wstring name_ = L"a:spPr";
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
if (0 == (pWriter->m_lFlag & 0x01)) name_ = L"wps:spPr";
|
||||
else name_ = L"pic:spPr";
|
||||
if (0 == (pWriter->m_lFlag & 0x01))
|
||||
pWriter->StartNode(_T("wps:spPr"));
|
||||
else
|
||||
pWriter->StartNode(_T("pic:spPr"));
|
||||
}
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) name_ = L"xdr:spPr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_CHART) name_ = L"c:spPr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) name_ = L"a:spPr";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX)
|
||||
pWriter->StartNode(_T("xdr:spPr"));
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_CHART)
|
||||
pWriter->StartNode(_T("c:spPr"));
|
||||
else
|
||||
{//theme
|
||||
if (0 != (pWriter->m_lFlag & 0x04)) name_ = L"a:spPr";
|
||||
else name_ = L"p:spPr";
|
||||
{
|
||||
if (0 != (pWriter->m_lFlag & 0x04))//theme
|
||||
pWriter->StartNode(_T("a:spPr"));
|
||||
else
|
||||
pWriter->StartNode(_T("p:spPr"));
|
||||
}
|
||||
pWriter->StartNode(name_);
|
||||
|
||||
pWriter->StartAttributes();
|
||||
pWriter->WriteAttribute(_T("bwMode"), bwMode);
|
||||
@ -115,7 +117,24 @@ namespace PPTX
|
||||
pWriter->Write(scene3d);
|
||||
pWriter->Write(sp3d);
|
||||
|
||||
pWriter->EndNode(name_);
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
if (0 == (pWriter->m_lFlag & 0x01))
|
||||
pWriter->EndNode(_T("wps:spPr"));
|
||||
else
|
||||
pWriter->EndNode(_T("pic:spPr"));
|
||||
}
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX)
|
||||
pWriter->EndNode(_T("xdr:spPr"));
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_CHART)
|
||||
pWriter->EndNode(_T("c:spPr"));
|
||||
else
|
||||
{
|
||||
if (0 != (pWriter->m_lFlag & 0x04))//theme
|
||||
pWriter->EndNode(_T("a:spPr"));
|
||||
else
|
||||
pWriter->EndNode(_T("p:spPr"));
|
||||
}
|
||||
}
|
||||
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
|
||||
@ -195,14 +195,12 @@ namespace PPTX
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
std::wstring name_;
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
if (pWriter->m_lGroupIndex == 0) name_ = L"wpg:wgp";
|
||||
else name_ = L"wpg:grpSp";
|
||||
}
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_XLSX) name_ = L"xdr:grpSp";
|
||||
else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_GRAPHICS) name_ = L"a:grpSp";
|
||||
else
|
||||
{
|
||||
if (pWriter->m_lGroupIndex == 0) name_ = L"p:spTree";
|
||||
@ -214,7 +212,7 @@ namespace PPTX
|
||||
|
||||
if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_DOCX)
|
||||
{
|
||||
nvGrpSpPr.cNvGrpSpPr.toXmlWriter2(L"wpg", pWriter);
|
||||
nvGrpSpPr.cNvGrpSpPr.toXmlWriter2(_T("wpg"), pWriter);
|
||||
}
|
||||
else
|
||||
nvGrpSpPr.toXmlWriter(pWriter);
|
||||
@ -223,7 +221,8 @@ namespace PPTX
|
||||
|
||||
pWriter->m_lGroupIndex++;
|
||||
|
||||
for (size_t i = 0; i < SpTreeElems.size(); ++i)
|
||||
size_t nCount = SpTreeElems.size();
|
||||
for (size_t i = 0; i < nCount; ++i)
|
||||
SpTreeElems[i].toXmlWriter(pWriter);
|
||||
|
||||
pWriter->m_lGroupIndex--;
|
||||
@ -253,10 +252,7 @@ namespace PPTX
|
||||
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
if (getType() == OOX::et_lc_LockedCanvas)
|
||||
pWriter->StartRecord(SPTREE_TYPE_LOCKED_CANVAS);
|
||||
else
|
||||
pWriter->StartRecord(SPTREE_TYPE_SPTREE);
|
||||
pWriter->StartRecord(SPTREE_TYPE_SPTREE);
|
||||
|
||||
pWriter->WriteRecord1(0, nvGrpSpPr);
|
||||
pWriter->WriteRecord1(1, grpSpPr);
|
||||
@ -267,8 +263,7 @@ namespace PPTX
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
LONG _end_rec = pReader->GetPos() + pReader->GetLong() + 4;
|
||||
|
||||
pReader->Skip(5); //+ len
|
||||
pReader->Skip(5); // type SPTREE + len
|
||||
|
||||
while (pReader->GetPos() < _end_rec)
|
||||
{
|
||||
@ -334,166 +329,11 @@ namespace PPTX
|
||||
nvGrpSpPr.SetParentPointer(this);
|
||||
grpSpPr.SetParentPointer(this);
|
||||
|
||||
for (size_t i = 0; i < SpTreeElems.size(); ++i)
|
||||
size_t count = SpTreeElems.size();
|
||||
for (size_t i = 0; i < count; ++i)
|
||||
SpTreeElems[i].SetParentPointer(this);
|
||||
}
|
||||
};
|
||||
class LockedCanvas : public SpTree
|
||||
{
|
||||
public:
|
||||
WritingElement_AdditionConstructors(LockedCanvas)
|
||||
|
||||
LockedCanvas() : SpTree(L"a")
|
||||
{
|
||||
}
|
||||
|
||||
LockedCanvas& operator=(const LockedCanvas& oSrc)
|
||||
{
|
||||
parentFile = oSrc.parentFile;
|
||||
parentElement = oSrc.parentElement;
|
||||
|
||||
nvGrpSpPr = oSrc.nvGrpSpPr;
|
||||
grpSpPr = oSrc.grpSpPr;
|
||||
|
||||
for (size_t i=0; i < oSrc.SpTreeElems.size(); i++)
|
||||
SpTreeElems.push_back(oSrc.SpTreeElems[i]);
|
||||
|
||||
m_lGroupIndex = oSrc.m_lGroupIndex;
|
||||
|
||||
return *this;
|
||||
}
|
||||
virtual OOX::EElementType getType () const
|
||||
{
|
||||
return OOX::et_lc_LockedCanvas;
|
||||
}
|
||||
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader)
|
||||
{
|
||||
SpTree::fromXML(oReader);
|
||||
}
|
||||
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node)
|
||||
{
|
||||
SpTree::fromXML(node);
|
||||
}
|
||||
|
||||
virtual std::wstring toXML() const
|
||||
{
|
||||
XmlUtils::CAttribute oAttr;
|
||||
oAttr.Write(L"xmlns:lc", L"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas");
|
||||
|
||||
XmlUtils::CNodeValue oValue;
|
||||
oValue.Write(nvGrpSpPr);
|
||||
oValue.Write(grpSpPr);
|
||||
|
||||
oValue.WriteArray(SpTreeElems);
|
||||
|
||||
return XmlUtils::CreateNode(L"lc:lockedCanvas", oAttr, oValue);
|
||||
}
|
||||
|
||||
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
|
||||
{
|
||||
BYTE lDocType = pWriter->m_lDocType;
|
||||
pWriter->m_lDocType = XMLWRITER_DOC_TYPE_GRAPHICS;
|
||||
|
||||
pWriter->StartNode(L"lc:lockedCanvas");
|
||||
pWriter->StartAttributes();
|
||||
pWriter->WriteAttribute(L"xmlns:lc", L"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas");
|
||||
|
||||
pWriter->EndAttributes();
|
||||
|
||||
nvGrpSpPr.toXmlWriter(pWriter);
|
||||
|
||||
grpSpPr.toXmlWriter(pWriter);
|
||||
|
||||
pWriter->m_lGroupIndex++;
|
||||
|
||||
for (size_t i = 0; i < SpTreeElems.size(); ++i)
|
||||
{
|
||||
SpTreeElems[i].toXmlWriter(pWriter);
|
||||
}
|
||||
|
||||
pWriter->m_lGroupIndex--;
|
||||
|
||||
pWriter->EndNode(L"lc:lockedCanvas");
|
||||
|
||||
pWriter->m_lDocType = lDocType;
|
||||
}
|
||||
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
BinDocxRW::CDocxSerializer* docx = pWriter->m_pMainDocument;
|
||||
pWriter->m_pMainDocument = NULL;
|
||||
|
||||
pWriter->StartRecord(SPTREE_TYPE_LOCKED_CANVAS);
|
||||
|
||||
pWriter->WriteRecord1(0, nvGrpSpPr);
|
||||
pWriter->WriteRecord1(1, grpSpPr);
|
||||
pWriter->WriteRecordArray(2, 0, SpTreeElems);
|
||||
|
||||
pWriter->EndRecord();
|
||||
pWriter->m_pMainDocument = docx;
|
||||
}
|
||||
virtual void fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
LONG _end_rec = pReader->GetPos() + pReader->GetLong() + 4;
|
||||
|
||||
pReader->Skip(5); // type + len
|
||||
|
||||
BinDocxRW::CDocxSerializer* docx = pReader->m_pMainDocument;
|
||||
pReader->m_pMainDocument = NULL;
|
||||
|
||||
while (pReader->GetPos() < _end_rec)
|
||||
{
|
||||
BYTE _at = pReader->GetUChar();
|
||||
switch (_at)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
nvGrpSpPr.fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
case 1:
|
||||
{
|
||||
grpSpPr.fromPPTY(pReader);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
{
|
||||
pReader->Skip(4); // len
|
||||
ULONG _c = pReader->GetULong();
|
||||
|
||||
for (ULONG i = 0; i < _c; ++i)
|
||||
{
|
||||
pReader->Skip(1); // type (0)
|
||||
LONG nElemLength = pReader->GetLong(); // len
|
||||
//SpTreeElem::fromPPTY сразу делает GetChar, а toPPTY ничего не пишет если не инициализирован
|
||||
if(nElemLength > 0)
|
||||
{
|
||||
SpTreeElem elm;
|
||||
elm.fromPPTY(pReader);
|
||||
|
||||
if (elm.is_init())
|
||||
{
|
||||
if (elm.getType() == OOX::et_p_ShapeTree)
|
||||
{
|
||||
smart_ptr<SpTree> e = elm.GetElem().smart_dynamic_cast<SpTree>();
|
||||
e->m_lGroupIndex = m_lGroupIndex + 1;
|
||||
}
|
||||
SpTreeElems.push_back(elm);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
default:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
pReader->Seek(_end_rec);
|
||||
pReader->m_pMainDocument = docx;
|
||||
}
|
||||
|
||||
};
|
||||
} // namespace Logic
|
||||
} // namespace PPTX
|
||||
|
||||
|
||||
@ -89,7 +89,7 @@ namespace PPTX
|
||||
|
||||
if (oBlip.blip.is_init() && oBlip.blip->embed.is_init())
|
||||
{
|
||||
std::wstring fopacity;
|
||||
std::wstring fopacity = _T("");
|
||||
size_t eff_count = oBlip.blip->Effects.size();
|
||||
for (size_t eff = 0; eff < eff_count; ++eff)
|
||||
{
|
||||
@ -108,7 +108,7 @@ namespace PPTX
|
||||
if (nA > 65536)
|
||||
nA = 65536;
|
||||
|
||||
fopacity = L" opacity=\"" + std::to_wstring(nA) + L"f\"";
|
||||
fopacity = _T(" opacity=\"") + std::to_wstring(nA) + _T("f\"");
|
||||
}
|
||||
break;
|
||||
}
|
||||
@ -118,28 +118,28 @@ namespace PPTX
|
||||
|
||||
if (bOle || bSignature)
|
||||
{
|
||||
strAttr = L" filled=\"f\"";
|
||||
strNode = L"<v:imagedata r:id=\"" + strId + L"\" o:title=\"\" />";
|
||||
strAttr = _T(" filled=\"f\"");
|
||||
strNode = _T("<v:imagedata r:id=\"") + strId + _T("\" o:title=\"\" />");
|
||||
}
|
||||
else
|
||||
{
|
||||
if (oBlip.tile.is_init())
|
||||
strNode = L"<v:fill r:id=\"" + strId + L"\" o:title=\"\" type=\"tile\"" + fopacity + L" />";
|
||||
strNode = _T("<v:fill r:id=\"") + strId + _T("\" o:title=\"\" type=\"tile\"") + fopacity + _T(" />");
|
||||
else
|
||||
strNode = L"<v:fill r:id=\"" + strId + L"\" o:title=\"\" type=\"frame\"" + fopacity + L" />";
|
||||
strNode = _T("<v:fill r:id=\"") + strId + _T("\" o:title=\"\" type=\"frame\"") + fopacity + _T(" />");
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (fill.is<SolidFill>())
|
||||
{
|
||||
ARGB = fill.as<SolidFill>().Color.GetRGBColor(oTheme, oClrMap, ARGB);
|
||||
strAttr = L" fillcolor=\"" + GetHexColor(ARGB) + L"\"";
|
||||
strAttr = _T(" fillcolor=\"") + GetHexColor(ARGB) + _T("\"");
|
||||
|
||||
BYTE A = (BYTE)((ARGB >> 24) & 0xFF);
|
||||
if (A != 255)
|
||||
{
|
||||
int fopacity = 100 - (int)(((double)A / 255.0) * 65536);
|
||||
strNode = L"<v:fill opacity=\"" + std::to_wstring(fopacity) + L"f\" />";
|
||||
strNode = _T("<v:fill opacity=\"") + std::to_wstring(fopacity) + _T("f\" />");
|
||||
}
|
||||
}
|
||||
else if (fill.is<GradFill>())
|
||||
@ -148,29 +148,29 @@ namespace PPTX
|
||||
if (oGrad.GsLst.size() > 0)
|
||||
{
|
||||
ARGB = oGrad.GsLst[0].color.GetRGBColor(oTheme, oClrMap, ARGB);
|
||||
strAttr = L" fillcolor=\"" + GetHexColor(ARGB) + L"\"";
|
||||
strAttr = _T(" fillcolor=\"") + GetHexColor(ARGB) + _T("\"");
|
||||
|
||||
BYTE A = (BYTE)((ARGB >> 24) & 0xFF);
|
||||
if (A != 255)
|
||||
{
|
||||
int fopacity = 100 - (int)(((double)A / 255.0) * 65536);
|
||||
strNode = L"<v:fill opacity=\"" + std::to_wstring(fopacity) + L"f\" />";
|
||||
strNode = _T("<v:fill opacity=\"") + std::to_wstring(fopacity) + _T("f\" />");
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (fill.is<NoFill>() || !fill.is_init())
|
||||
{
|
||||
strAttr = L" filled=\"f\"";
|
||||
strAttr = _T(" filled=\"f\"");
|
||||
}
|
||||
else
|
||||
{
|
||||
strAttr = L" fillcolor=\"" + GetHexColor(ARGB) + L"\"";
|
||||
strAttr = _T(" fillcolor=\"") + GetHexColor(ARGB) + _T("\"");
|
||||
|
||||
BYTE A = (BYTE)((ARGB >> 24) & 0xFF);
|
||||
if (A != 255)
|
||||
{
|
||||
int fopacity = (int)(((double)A / 255.0) * 65536);
|
||||
strNode = L"<v:fill opacity=\"" + std::to_wstring(fopacity) + L"f\" />";
|
||||
strNode = _T("<v:fill opacity=\"") + std::to_wstring(fopacity) + _T("f\" />");
|
||||
}
|
||||
}
|
||||
|
||||
@ -200,10 +200,10 @@ namespace PPTX
|
||||
if (line.Fill.is<SolidFill>())
|
||||
{
|
||||
ARGB = line.Fill.as<SolidFill>().Color.GetRGBColor(oTheme, oClrMap, ARGB);
|
||||
strAttr = L" strokecolor=\"" + GetHexColor(ARGB) + L"\"";
|
||||
strAttr = _T(" strokecolor=\"") + GetHexColor(ARGB) + _T("\"");
|
||||
}
|
||||
else if (bOle || bSignature)
|
||||
strAttr = L" stroked=\"f\"";
|
||||
strAttr = _T(" stroked=\"f\"");
|
||||
|
||||
if (line.w.is_init())
|
||||
{
|
||||
@ -241,17 +241,15 @@ namespace PPTX
|
||||
{
|
||||
std::wstring name = XmlUtils::GetNameNoNS(oReader.GetName());
|
||||
|
||||
if (name == L"sp" || name == L"wsp")
|
||||
if (name == _T("sp") || name == _T("wsp"))
|
||||
m_elem.reset(new Logic::Shape(oReader));
|
||||
else if (name == L"pic")
|
||||
else if (name == _T("pic"))
|
||||
m_elem.reset(new Logic::Pic(oReader));
|
||||
else if (name == L"cxnSp")
|
||||
else if (name == _T("cxnSp"))
|
||||
m_elem.reset(new Logic::CxnSp(oReader));
|
||||
else if (name == L"lockedCanvas")
|
||||
m_elem.reset(new Logic::LockedCanvas(oReader));
|
||||
else if (name == L"grpSp" || name == L"wgp" || name == L"spTree" || name == L"wpc")
|
||||
else if (name == _T("grpSp") || name == _T("wgp") || name == _T("spTree") || name == _T("lockedCanvas") || name == _T("wpc"))
|
||||
m_elem.reset(new Logic::SpTree(oReader));
|
||||
else if (name == L"graphicFrame")
|
||||
else if (name == _T("graphicFrame"))
|
||||
{
|
||||
Logic::GraphicFrame *pGraphic = new Logic::GraphicFrame(oReader);
|
||||
|
||||
@ -260,7 +258,7 @@ namespace PPTX
|
||||
else
|
||||
RELEASEOBJECT(pGraphic);
|
||||
}
|
||||
else if (name == L"AlternateContent")
|
||||
else if (name == _T("AlternateContent"))
|
||||
{
|
||||
if ( oReader.IsEmptyNode() )
|
||||
return;
|
||||
@ -293,23 +291,21 @@ namespace PPTX
|
||||
{
|
||||
std::wstring name = XmlUtils::GetNameNoNS(node.GetName());
|
||||
|
||||
if (name == L"sp" || name == L"wsp")
|
||||
if (name == _T("sp") || name == _T("wsp"))
|
||||
m_elem.reset(new Logic::Shape(node));
|
||||
else if (name == L"pic")
|
||||
else if (name == _T("pic"))
|
||||
m_elem.reset(new Logic::Pic(node));
|
||||
else if (name == L"cxnSp")
|
||||
else if (name == _T("cxnSp"))
|
||||
m_elem.reset(new Logic::CxnSp(node));
|
||||
else if (name == L"lockedCanvas")
|
||||
m_elem.reset(new Logic::LockedCanvas(node));
|
||||
else if (name == L"grpSp" || name == L"wgp" || name == L"spTree" || name == L"wpc")
|
||||
else if (name == _T("grpSp") || name == _T("wgp") || name == _T("spTree") || name == _T("lockedCanvas") || name == _T("wpc"))
|
||||
m_elem.reset(new Logic::SpTree(node));
|
||||
else if (name == L"graphicFrame")
|
||||
else if (name == _T("graphicFrame"))
|
||||
m_elem.reset(new Logic::GraphicFrame(node));
|
||||
else if (name == L"AlternateContent")
|
||||
else if (name == _T("AlternateContent"))
|
||||
{
|
||||
bool isEmpty = true;
|
||||
XmlUtils::CXmlNode oNodeChoice;
|
||||
if (node.GetNode(L"mc:Choice", oNodeChoice))
|
||||
if (node.GetNode(_T("mc:Choice"), oNodeChoice))
|
||||
{
|
||||
XmlUtils::CXmlNode oNodeFall;
|
||||
XmlUtils::CXmlNodes oNodesC;
|
||||
@ -317,11 +313,11 @@ namespace PPTX
|
||||
//todo better check (a14 can be math, slicer)
|
||||
if(oNodeChoice.GetAttributeIfExist(L"Requires", sRequires) && L"a14" == sRequires)
|
||||
{
|
||||
oNodeChoice.GetNodes(L"*", oNodesC);
|
||||
oNodeChoice.GetNodes(_T("*"), oNodesC);
|
||||
}
|
||||
else if (node.GetNode(L"mc:Fallback", oNodeFall))
|
||||
else if (node.GetNode(_T("mc:Fallback"), oNodeFall))
|
||||
{
|
||||
oNodeFall.GetNodes(L"*", oNodesC);
|
||||
oNodeFall.GetNodes(_T("*"), oNodesC);
|
||||
}
|
||||
if (1 == oNodesC.GetCount())
|
||||
{
|
||||
@ -341,30 +337,6 @@ namespace PPTX
|
||||
else m_elem.reset();
|
||||
}
|
||||
|
||||
std::wstring SpTreeElem::GetUriElem()
|
||||
{
|
||||
if (m_elem.IsInit() == false)
|
||||
{
|
||||
return L"";
|
||||
//return L"http://schemas.microsoft.com/office/word/2010/wordprocessingShape";
|
||||
}
|
||||
else if (m_elem->getType() == OOX::et_lc_LockedCanvas)
|
||||
{
|
||||
return L"http://schemas.openxmlformats.org/drawingml/2006/lockedCanvas";
|
||||
}
|
||||
else if (m_elem->getType() == OOX::et_p_ShapeTree)
|
||||
{
|
||||
return L"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup";
|
||||
}
|
||||
else if (m_elem->getType() == OOX::et_pic)
|
||||
{
|
||||
return L"http://schemas.openxmlformats.org/drawingml/2006/picture";
|
||||
}
|
||||
else
|
||||
{
|
||||
return L"http://schemas.microsoft.com/office/word/2010/wordprocessingShape";
|
||||
}
|
||||
}
|
||||
void SpTreeElem::fromPPTY(NSBinPptxRW::CBinaryFileReader* pReader)
|
||||
{
|
||||
BYTE _type = pReader->GetUChar();
|
||||
@ -375,8 +347,9 @@ namespace PPTX
|
||||
{
|
||||
Logic::Shape* p = new Logic::Shape();
|
||||
p->fromPPTY(pReader);
|
||||
m_elem.reset(p);
|
||||
}break;
|
||||
m_elem.reset(p);
|
||||
break;
|
||||
}
|
||||
case SPTREE_TYPE_OLE:
|
||||
case SPTREE_TYPE_PIC:
|
||||
case SPTREE_TYPE_AUDIO:
|
||||
@ -396,27 +369,16 @@ namespace PPTX
|
||||
}
|
||||
|
||||
p->fromPPTY(pReader);
|
||||
m_elem.reset(p);
|
||||
}break;
|
||||
m_elem.reset(p);
|
||||
break;
|
||||
}
|
||||
case SPTREE_TYPE_CXNSP:
|
||||
{
|
||||
Logic::CxnSp* p = new Logic::CxnSp();
|
||||
p->fromPPTY(pReader);
|
||||
m_elem.reset(p);
|
||||
}break;
|
||||
case SPTREE_TYPE_LOCKED_CANVAS:
|
||||
{
|
||||
Logic::LockedCanvas* p = new Logic::LockedCanvas();
|
||||
pReader->Seek(pReader->GetPos() - 5); // type back + len
|
||||
p->fromPPTY(pReader);
|
||||
|
||||
if (getType() == OOX::et_lc_LockedCanvas)
|
||||
{
|
||||
smart_ptr<PPTX::Logic::LockedCanvas> parent = GetElem().smart_dynamic_cast<PPTX::Logic::LockedCanvas>();
|
||||
p->m_lGroupIndex = parent->m_lGroupIndex + 1;
|
||||
}
|
||||
m_elem.reset(p);
|
||||
}break;
|
||||
m_elem.reset(p);
|
||||
break;
|
||||
}
|
||||
case SPTREE_TYPE_SPTREE:
|
||||
{
|
||||
Logic::SpTree* p = new Logic::SpTree();
|
||||
@ -428,19 +390,23 @@ namespace PPTX
|
||||
smart_ptr<PPTX::Logic::SpTree> parent = GetElem().smart_dynamic_cast<PPTX::Logic::SpTree>();
|
||||
p->m_lGroupIndex = parent->m_lGroupIndex + 1;
|
||||
}
|
||||
m_elem.reset(p);
|
||||
}break;
|
||||
m_elem.reset(p);
|
||||
break;
|
||||
}
|
||||
case SPTREE_TYPE_GRFRAME:
|
||||
{
|
||||
Logic::GraphicFrame* pFrame = new Logic::GraphicFrame();
|
||||
pFrame->fromPPTY(pReader);
|
||||
m_elem.reset(pFrame);
|
||||
}break;
|
||||
m_elem.reset(pFrame);
|
||||
break;
|
||||
}
|
||||
case SPTREE_TYPE_NONE:
|
||||
default:
|
||||
{
|
||||
pReader->SkipRecord();
|
||||
}break;
|
||||
pReader->SkipRecord();
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -448,7 +414,7 @@ namespace PPTX
|
||||
{
|
||||
if (m_elem.IsInit())
|
||||
return m_elem->toXML();
|
||||
return L"";
|
||||
return _T("");
|
||||
}
|
||||
|
||||
void SpTreeElem::toXmlWriterVML (NSBinPptxRW::CXmlWriter* pWriter, smart_ptr<PPTX::Theme>& oTheme, smart_ptr<PPTX::Logic::ClrMap>& oClrMap, const WCHAR* pId) const
|
||||
@ -468,7 +434,6 @@ namespace PPTX
|
||||
if (oPic.IsInit()) oPic->toXmlWriterVML(pWriter, oTheme, oClrMap, pId);
|
||||
}break;
|
||||
case OOX::et_p_ShapeTree:
|
||||
case OOX::et_lc_LockedCanvas:
|
||||
{
|
||||
smart_ptr<PPTX::Logic::SpTree> oSpTree = m_elem.smart_dynamic_cast<PPTX::Logic::SpTree>();
|
||||
if (oSpTree.IsInit()) oSpTree->toXmlWriterVML(pWriter, oTheme, oClrMap, pId);
|
||||
|
||||
@ -71,7 +71,8 @@ namespace PPTX
|
||||
{
|
||||
m_elem = oSrc.m_elem;
|
||||
return *this;
|
||||
}
|
||||
}
|
||||
|
||||
virtual void fromXML(XmlUtils::CXmlNode& node);
|
||||
virtual void fromXML(XmlUtils::CXmlLiteReader& oReader);
|
||||
|
||||
@ -87,7 +88,6 @@ namespace PPTX
|
||||
m_elem.reset(pElem);
|
||||
}
|
||||
|
||||
|
||||
virtual void fromPPTY (NSBinPptxRW::CBinaryFileReader* pReader);
|
||||
virtual void toPPTY (NSBinPptxRW::CBinaryFileWriter* pWriter) const
|
||||
{
|
||||
@ -100,8 +100,7 @@ namespace PPTX
|
||||
if (m_elem.is_init())
|
||||
m_elem->toXmlWriter(pWriter);
|
||||
}
|
||||
std::wstring GetUriElem();
|
||||
|
||||
|
||||
smart_ptr<WrapperWritingElement> GetElem()
|
||||
{
|
||||
return m_elem;
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
17C1FCB71ACC429D006B99B3 /* CxnSp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A44361AC57B83005A27F7 /* CxnSp.cpp */; };
|
||||
17C1FCB81ACC429D006B99B3 /* Hyperlink.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A44771AC57B83005A27F7 /* Hyperlink.cpp */; };
|
||||
17C1FCB91ACC429D006B99B3 /* SpPr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A44B11AC57B83005A27F7 /* SpPr.cpp */; };
|
||||
17C1FCBA1ACC429D006B99B3 /* TableCell.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A44BC1AC57B83005A27F7 /* TableCell.cpp */; };
|
||||
17C1FCBB1ACC429D006B99B3 /* FileFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A43A11AC57B83005A27F7 /* FileFactory.cpp */; };
|
||||
17C1FCBC1ACC429D006B99B3 /* pptxformatlib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A43681AC57B46005A27F7 /* pptxformatlib.cpp */; };
|
||||
17C1FCBD1ACC429D006B99B3 /* TxBody.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 179A45091AC57B83005A27F7 /* TxBody.cpp */; };
|
||||
@ -830,13 +831,6 @@
|
||||
696791821D9E8B81002CA4BA /* MathParaWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 696791801D9E8B81002CA4BA /* MathParaWrapper.cpp */; };
|
||||
696791831D9E8B81002CA4BA /* MathParaWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 696791811D9E8B81002CA4BA /* MathParaWrapper.h */; };
|
||||
697DFC1E200F51A700F0A9AF /* WavAudioFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 697DFC1D200F51A600F0A9AF /* WavAudioFile.cpp */; };
|
||||
8A35A6FF215E612C005CC806 /* xmlutils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A35A6FE215E612B005CC806 /* xmlutils.h */; };
|
||||
8A35A701215E6194005CC806 /* xmldom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A35A700215E6194005CC806 /* xmldom.cpp */; };
|
||||
8A35A706215E61BE005CC806 /* xmllight_private.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A35A703215E61BE005CC806 /* xmllight_private.h */; };
|
||||
8A35A707215E61BE005CC806 /* xmllight.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A35A704215E61BE005CC806 /* xmllight.cpp */; };
|
||||
8A35A709215E622B005CC806 /* BlipFill.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A35A708215E622B005CC806 /* BlipFill.cpp */; };
|
||||
8A35A70B215E626D005CC806 /* UniFill.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A35A70A215E626D005CC806 /* UniFill.cpp */; };
|
||||
8A35A70D215E62D0005CC806 /* TableCell.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8A35A70C215E62D0005CC806 /* TableCell.cpp */; };
|
||||
8A9FACE120777BA7007787F6 /* Structures.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A9FACE020777BA7007787F6 /* Structures.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
@ -1115,6 +1109,7 @@
|
||||
179A44B81AC57B83005A27F7 /* SupplementalFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SupplementalFont.h; sourceTree = "<group>"; };
|
||||
179A44B91AC57B83005A27F7 /* Tab.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Tab.h; sourceTree = "<group>"; };
|
||||
179A44BB1AC57B83005A27F7 /* Table.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Table.h; sourceTree = "<group>"; };
|
||||
179A44BC1AC57B83005A27F7 /* TableCell.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TableCell.cpp; sourceTree = "<group>"; };
|
||||
179A44BD1AC57B83005A27F7 /* TableCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableCell.h; sourceTree = "<group>"; };
|
||||
179A44BE1AC57B83005A27F7 /* TableCellProperties.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableCellProperties.h; sourceTree = "<group>"; };
|
||||
179A44BF1AC57B83005A27F7 /* TableCol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TableCol.h; sourceTree = "<group>"; };
|
||||
@ -1667,13 +1662,6 @@
|
||||
696791801D9E8B81002CA4BA /* MathParaWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MathParaWrapper.cpp; sourceTree = "<group>"; };
|
||||
696791811D9E8B81002CA4BA /* MathParaWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MathParaWrapper.h; sourceTree = "<group>"; };
|
||||
697DFC1D200F51A600F0A9AF /* WavAudioFile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WavAudioFile.cpp; sourceTree = "<group>"; };
|
||||
8A35A6FE215E612B005CC806 /* xmlutils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = xmlutils.h; path = ../../../DesktopEditor/xml/include/xmlutils.h; sourceTree = "<group>"; };
|
||||
8A35A700215E6194005CC806 /* xmldom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmldom.cpp; path = ../../../DesktopEditor/xml/src/xmldom.cpp; sourceTree = "<group>"; };
|
||||
8A35A703215E61BE005CC806 /* xmllight_private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = xmllight_private.h; path = ../../../DesktopEditor/xml/src/xmllight_private.h; sourceTree = "<group>"; };
|
||||
8A35A704215E61BE005CC806 /* xmllight.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmllight.cpp; path = ../../../DesktopEditor/xml/src/xmllight.cpp; sourceTree = "<group>"; };
|
||||
8A35A708215E622B005CC806 /* BlipFill.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BlipFill.cpp; sourceTree = "<group>"; };
|
||||
8A35A70A215E626D005CC806 /* UniFill.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UniFill.cpp; sourceTree = "<group>"; };
|
||||
8A35A70C215E62D0005CC806 /* TableCell.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TableCell.cpp; sourceTree = "<group>"; };
|
||||
8A9FACE020777BA7007787F6 /* Structures.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Structures.h; path = Drawing/Structures.h; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
@ -1691,7 +1679,6 @@
|
||||
17063B5A1AC5708E0056A3F1 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8A35A6FD215E6124005CC806 /* XmlUtils */,
|
||||
695BC0221C070DCB00817D7E /* HtmlRenderer */,
|
||||
175CC2441AC96AA0007D7DEC /* OfficeDrawing */,
|
||||
17D91A141AC5A4DF0096D788 /* Editor */,
|
||||
@ -1996,15 +1983,14 @@
|
||||
179A44CC1AC57B83005A27F7 /* TextSpacing.h */,
|
||||
179A44CD1AC57B83005A27F7 /* Timing */,
|
||||
179A44FA1AC57B83005A27F7 /* Transitions */,
|
||||
179A450A1AC57B83005A27F7 /* TxBody.h */,
|
||||
179A45091AC57B83005A27F7 /* TxBody.cpp */,
|
||||
179A450A1AC57B83005A27F7 /* TxBody.h */,
|
||||
179A450B1AC57B83005A27F7 /* TxStyles.h */,
|
||||
179A450C1AC57B83005A27F7 /* UniColor.cpp */,
|
||||
179A450D1AC57B83005A27F7 /* UniColor.h */,
|
||||
179A450F1AC57B83005A27F7 /* UniEffect.h */,
|
||||
179A450E1AC57B83005A27F7 /* UniEffect.cpp */,
|
||||
179A450F1AC57B83005A27F7 /* UniEffect.h */,
|
||||
179A45101AC57B83005A27F7 /* UniFill.h */,
|
||||
8A35A70A215E626D005CC806 /* UniFill.cpp */,
|
||||
179A45111AC57B83005A27F7 /* UniMedia.h */,
|
||||
179A45121AC57B83005A27F7 /* UniPath2D.h */,
|
||||
179A45131AC57B83005A27F7 /* Xfrm.h */,
|
||||
@ -2090,7 +2076,6 @@
|
||||
179A44611AC57B83005A27F7 /* Blip.cpp */,
|
||||
179A44621AC57B83005A27F7 /* Blip.h */,
|
||||
179A44631AC57B83005A27F7 /* BlipFill.h */,
|
||||
8A35A708215E622B005CC806 /* BlipFill.cpp */,
|
||||
179A44641AC57B83005A27F7 /* GradFill.h */,
|
||||
179A44651AC57B83005A27F7 /* NoFill.h */,
|
||||
179A44661AC57B83005A27F7 /* PattFill.h */,
|
||||
@ -2143,8 +2128,8 @@
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
179A44BB1AC57B83005A27F7 /* Table.h */,
|
||||
179A44BC1AC57B83005A27F7 /* TableCell.cpp */,
|
||||
179A44BD1AC57B83005A27F7 /* TableCell.h */,
|
||||
8A35A70C215E62D0005CC806 /* TableCell.cpp */,
|
||||
179A44BE1AC57B83005A27F7 /* TableCellProperties.h */,
|
||||
179A44BF1AC57B83005A27F7 /* TableCol.h */,
|
||||
179A44C01AC57B83005A27F7 /* TableProperties.h */,
|
||||
@ -2752,17 +2737,6 @@
|
||||
path = OOXMLShapes;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8A35A6FD215E6124005CC806 /* XmlUtils */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8A35A6FE215E612B005CC806 /* xmlutils.h */,
|
||||
8A35A703215E61BE005CC806 /* xmllight_private.h */,
|
||||
8A35A704215E61BE005CC806 /* xmllight.cpp */,
|
||||
8A35A700215E6194005CC806 /* xmldom.cpp */,
|
||||
);
|
||||
name = XmlUtils;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
@ -3256,7 +3230,6 @@
|
||||
69656E411FC2FF800028C4BA /* QuadArrowCalloutType.h in Headers */,
|
||||
17C1FDE51ACC429D006B99B3 /* OuterShdw.h in Headers */,
|
||||
69656E5F1FC2FF800028C4BA /* WaveType.h in Headers */,
|
||||
8A35A6FF215E612C005CC806 /* xmlutils.h in Headers */,
|
||||
17C1FDE61ACC429D006B99B3 /* PPTXEvent.h in Headers */,
|
||||
69656ED01FC2FF800028C4BA /* CHeptagon.h in Headers */,
|
||||
69656EF71FC2FF800028C4BA /* CQuadArrowCallout.h in Headers */,
|
||||
@ -3407,7 +3380,6 @@
|
||||
17C1FE401ACC429D006B99B3 /* Conformance.h in Headers */,
|
||||
17C1FE411ACC429D006B99B3 /* TLColorSpace.h in Headers */,
|
||||
69656E5C1FC2FF800028C4BA /* UturnArrowType.h in Headers */,
|
||||
8A35A706215E61BE005CC806 /* xmllight_private.h in Headers */,
|
||||
69656EFF1FC2FF800028C4BA /* CRound1Rect.h in Headers */,
|
||||
69656EA21FC2FF800028C4BA /* CDiagStripe.h in Headers */,
|
||||
17C1FE421ACC429D006B99B3 /* Sld.h in Headers */,
|
||||
@ -3616,8 +3588,8 @@
|
||||
17C1FCB91ACC429D006B99B3 /* SpPr.cpp in Sources */,
|
||||
695BBFF81C06FFA100817D7E /* TextAttributesEx.cpp in Sources */,
|
||||
17C1E3E11AD40612001E3D18 /* Controls.cpp in Sources */,
|
||||
17C1FCBA1ACC429D006B99B3 /* TableCell.cpp in Sources */,
|
||||
17C1FCBB1ACC429D006B99B3 /* FileFactory.cpp in Sources */,
|
||||
8A35A709215E622B005CC806 /* BlipFill.cpp in Sources */,
|
||||
17C1FCBC1ACC429D006B99B3 /* pptxformatlib.cpp in Sources */,
|
||||
17C1FCBD1ACC429D006B99B3 /* TxBody.cpp in Sources */,
|
||||
697DFC1E200F51A700F0A9AF /* WavAudioFile.cpp in Sources */,
|
||||
@ -3630,10 +3602,8 @@
|
||||
17C1FCC51ACC429D006B99B3 /* Shape.cpp in Sources */,
|
||||
17C1FCC71ACC429D006B99B3 /* BuildNodeBase.cpp in Sources */,
|
||||
17C1FCC81ACC429D006B99B3 /* ContentPart.cpp in Sources */,
|
||||
8A35A707215E61BE005CC806 /* xmllight.cpp in Sources */,
|
||||
69656F501FC2FF800028C4BA /* PptxShape.cpp in Sources */,
|
||||
69656E631FC2FF800028C4BA /* PptFormula.cpp in Sources */,
|
||||
8A35A70D215E62D0005CC806 /* TableCell.cpp in Sources */,
|
||||
17C1FCC91ACC429D006B99B3 /* CNvGrpSpPr.cpp in Sources */,
|
||||
17C1FCCA1ACC429D006B99B3 /* EffectStyle.cpp in Sources */,
|
||||
17C1FCCB1ACC429D006B99B3 /* UniColor.cpp in Sources */,
|
||||
@ -3645,7 +3615,6 @@
|
||||
17C1FCD11ACC429D006B99B3 /* Bg.cpp in Sources */,
|
||||
17C1FCD21ACC429D006B99B3 /* Folder.cpp in Sources */,
|
||||
17C1FCD31ACC429D006B99B3 /* BinaryFileReaderWriter.cpp in Sources */,
|
||||
8A35A701215E6194005CC806 /* xmldom.cpp in Sources */,
|
||||
17C1FCD41ACC429D006B99B3 /* TimeNodeBase.cpp in Sources */,
|
||||
17C1FCD51ACC429D006B99B3 /* GraphicFrame.cpp in Sources */,
|
||||
69656E651FC2FF800028C4BA /* PptShape.cpp in Sources */,
|
||||
@ -3654,7 +3623,6 @@
|
||||
17C1FCD81ACC429D006B99B3 /* UniEffect.cpp in Sources */,
|
||||
17C1FCDA1ACC429D006B99B3 /* Pic.cpp in Sources */,
|
||||
17C1FCDB1ACC429D006B99B3 /* NvGraphicFramePr.cpp in Sources */,
|
||||
8A35A70B215E626D005CC806 /* UniFill.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -3770,9 +3738,20 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
PPTX_DEF,
|
||||
PPT_DEF,
|
||||
ENABLE_PPT_TO_PPTX_CONVERT,
|
||||
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML,
|
||||
NODOCX,
|
||||
CXIMAGE_DONT_DECLARE_TCHAR,
|
||||
BUILD_CONFIG_FULL_VERSION,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
CXIMAGE_DONT_DECLARE_TCHAR,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
@ -3801,9 +3780,20 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
PPTX_DEF,
|
||||
PPT_DEF,
|
||||
ENABLE_PPT_TO_PPTX_CONVERT,
|
||||
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML,
|
||||
NODOCX,
|
||||
CXIMAGE_DONT_DECLARE_TCHAR,
|
||||
BUILD_CONFIG_FULL_VERSION,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
CXIMAGE_DONT_DECLARE_TCHAR,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
HEADER_SEARCH_PATHS = (
|
||||
|
||||
@ -86,6 +86,7 @@
|
||||
6967B1561E27B4B800A129E2 /* OOXParagraphElementReaders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = OOXParagraphElementReaders.cpp; sourceTree = "<group>"; };
|
||||
6967B1571E27B4B800A129E2 /* OOXParagraphReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXParagraphReader.h; sourceTree = "<group>"; };
|
||||
6967B1581E27B4B800A129E2 /* OOXPictureAnchorReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXPictureAnchorReader.h; sourceTree = "<group>"; };
|
||||
6967B1591E27B4B800A129E2 /* OOXPictureGraphicReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXPictureGraphicReader.h; sourceTree = "<group>"; };
|
||||
6967B15A1E27B4B800A129E2 /* OOXPictureInlineReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXPictureInlineReader.h; sourceTree = "<group>"; };
|
||||
6967B15B1E27B4B800A129E2 /* OOXPictureReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXPictureReader.h; sourceTree = "<group>"; };
|
||||
6967B15C1E27B4B800A129E2 /* OOXpPrFrameReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OOXpPrFrameReader.h; sourceTree = "<group>"; };
|
||||
@ -240,6 +241,7 @@
|
||||
6967B1561E27B4B800A129E2 /* OOXParagraphElementReaders.cpp */,
|
||||
6967B1571E27B4B800A129E2 /* OOXParagraphReader.h */,
|
||||
6967B1581E27B4B800A129E2 /* OOXPictureAnchorReader.h */,
|
||||
6967B1591E27B4B800A129E2 /* OOXPictureGraphicReader.h */,
|
||||
6967B15A1E27B4B800A129E2 /* OOXPictureInlineReader.h */,
|
||||
6967B15B1E27B4B800A129E2 /* OOXPictureReader.h */,
|
||||
6967B15C1E27B4B800A129E2 /* OOXpPrFrameReader.h */,
|
||||
@ -572,14 +574,21 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
LINUX,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
PPT_DEF,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML,
|
||||
_IOS,
|
||||
_XCODE,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../Common/3dParty/boost/boost_1_58_0",
|
||||
"$(PROJECT_DIR)/../../../DesktopEditor",
|
||||
"$(PROJECT_DIR)/../../../DesktopEditor/freetype-2.5.2/include",
|
||||
@ -599,14 +608,21 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
LINUX,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
PPT_DEF,
|
||||
_IOS,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML,
|
||||
_IOS,
|
||||
_XCODE,
|
||||
);
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../Common/3dParty/boost/boost_1_58_0",
|
||||
"$(PROJECT_DIR)/../../../DesktopEditor",
|
||||
"$(PROJECT_DIR)/../../../DesktopEditor/freetype-2.5.2/include",
|
||||
|
||||
@ -42,8 +42,7 @@ int OOXGraphicReader::Parse( ReaderParameter oParam , RtfShapePtr & pOutput)
|
||||
|
||||
if (m_ooxGraphic->element.is_init())
|
||||
{
|
||||
if (m_ooxGraphic->element.getType() == OOX::et_p_ShapeTree ||
|
||||
m_ooxGraphic->element.getType() == OOX::et_lc_LockedCanvas)
|
||||
if (m_ooxGraphic->element.getType() == OOX::et_p_ShapeTree)
|
||||
{
|
||||
OOXShapeGroupReader groupReader(dynamic_cast<PPTX::Logic::SpTree*>(m_ooxGraphic->element.GetElem().operator->()));
|
||||
return (groupReader.Parse(oParam, pOutput) ? 1 : 0);
|
||||
|
||||
@ -1924,8 +1924,7 @@ bool OOXShapeGroupReader::Parse( ReaderParameter oParam , RtfShapePtr& pOutput)
|
||||
|
||||
for (size_t i = 0; i < m_ooxGroup->SpTreeElems.size() ; i++ )
|
||||
{
|
||||
if (m_ooxGroup->SpTreeElems[i].getType() == OOX::et_p_ShapeTree ||
|
||||
m_ooxGroup->SpTreeElems[i].getType() == OOX::et_lc_LockedCanvas)
|
||||
if (m_ooxGroup->SpTreeElems[i].getType() == OOX::et_p_ShapeTree)
|
||||
{
|
||||
RtfShapePtr pNewShape( new RtfShape() );
|
||||
pNewShape->m_bIsGroup = true;
|
||||
|
||||
@ -14,7 +14,6 @@
|
||||
6967AFE91E279C6F00A129E2 /* ToString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6967AFE51E279C6F00A129E2 /* ToString.cpp */; };
|
||||
6967AFF01E279C7700A129E2 /* File.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6967AFEB1E279C7700A129E2 /* File.cpp */; };
|
||||
6967AFF11E279C7700A129E2 /* TxtFile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6967AFED1E279C7700A129E2 /* TxtFile.cpp */; };
|
||||
8AB24C012130055700E80DDD /* SystemUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8AB24C002130055700E80DDD /* SystemUtils.cpp */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
@ -50,8 +49,6 @@
|
||||
6967AFED1E279C7700A129E2 /* TxtFile.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TxtFile.cpp; sourceTree = "<group>"; };
|
||||
6967AFEE1E279C7700A129E2 /* TxtFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TxtFile.h; sourceTree = "<group>"; };
|
||||
6967AFEF1E279C7700A129E2 /* TxtFormat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TxtFormat.h; sourceTree = "<group>"; };
|
||||
8AB24BFF2130055700E80DDD /* SystemUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SystemUtils.h; path = ../../../../DesktopEditor/common/SystemUtils.h; sourceTree = "<group>"; };
|
||||
8AB24C002130055700E80DDD /* SystemUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SystemUtils.cpp; path = ../../../../DesktopEditor/common/SystemUtils.cpp; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@ -107,8 +104,6 @@
|
||||
6967AFE51E279C6F00A129E2 /* ToString.cpp */,
|
||||
6967AFE61E279C6F00A129E2 /* ToString.h */,
|
||||
6967AFE71E279C6F00A129E2 /* Utility.h */,
|
||||
8AB24C002130055700E80DDD /* SystemUtils.cpp */,
|
||||
8AB24BFF2130055700E80DDD /* SystemUtils.h */,
|
||||
);
|
||||
name = Common;
|
||||
path = ../../../Source/Common;
|
||||
@ -191,7 +186,6 @@
|
||||
6967AFD61E2798DB00A129E2 /* TxtXmlFile.cpp in Sources */,
|
||||
6967AFF01E279C7700A129E2 /* File.cpp in Sources */,
|
||||
6967AFD51E2798DB00A129E2 /* ConvertTxt2Docx.cpp in Sources */,
|
||||
8AB24C012130055700E80DDD /* SystemUtils.cpp in Sources */,
|
||||
6967AFD41E2798DB00A129E2 /* ConvertDocx2Txt.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@ -310,6 +304,10 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
LIBXML_READER_ENABLED,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
@ -318,7 +316,8 @@
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../../Common/3dParty/boost/boost_1_58_0",
|
||||
"$(PROJECT_DIR)/../../../../DesktopEditor/xml/libxml2/include",
|
||||
"$(PROJECT_DIR)/../../../../DesktopEditor/freetype-2.5.2/include",
|
||||
@ -336,6 +335,10 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
LIBXML_READER_ENABLED,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
@ -344,7 +347,8 @@
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../../Common/3dParty/boost/boost_1_58_0",
|
||||
"$(PROJECT_DIR)/../../../../DesktopEditor/xml/libxml2/include",
|
||||
"$(PROJECT_DIR)/../../../../DesktopEditor/freetype-2.5.2/include",
|
||||
|
||||
@ -70,7 +70,7 @@ HRESULT convert_single(std::wstring srcFileName)
|
||||
std::wstring dstPath;
|
||||
|
||||
bool bMacros = true;
|
||||
hr = ConvertXls2Xlsx(srcFileName, dstTempPath, L"2222", L"C:\\Windows\\Fonts", L"C:\\Windows\\Temp", NULL, bMacros);
|
||||
hr = ConvertXls2Xlsx(srcFileName, dstTempPath, L"password", L"C:\\Windows\\Fonts", L"C:\\Windows\\Temp", NULL, bMacros);
|
||||
|
||||
if (bMacros)
|
||||
{
|
||||
|
||||
@ -37,7 +37,14 @@ mkdir "build"
|
||||
fi
|
||||
cef_binary=cef_binary
|
||||
cef_arch=$cef_binary.7z
|
||||
cef_url=http://d2ettrnqo7v976.cloudfront.net/cef/3163/$platform$arch/$cef_arch
|
||||
cef_version="3163"
|
||||
|
||||
if [[ "$platform" == *"linux"* ]]
|
||||
then
|
||||
cef_version="3202"
|
||||
fi
|
||||
|
||||
cef_url=http://d2ettrnqo7v976.cloudfront.net/cef/$cef_version/$platform$arch/$cef_arch
|
||||
|
||||
if [[ "$platform" == *"linux"* ]]
|
||||
then
|
||||
|
||||
@ -708,7 +708,7 @@ NAMESPACE_END
|
||||
// ***************** Miscellaneous ********************
|
||||
|
||||
// Nearly all Intel's and AMD's have SSE. Enable it independent of SSE ASM and intrinscs
|
||||
#if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64 || CRYPTOPP_BOOL_PPC32 || CRYPTOPP_BOOL_PPC64) && !defined(CRYPTOPP_DISABLE_ASM) && !(defined(_IOS) || defined(__ANDROID__))
|
||||
#if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64 || CRYPTOPP_BOOL_PPC32 || CRYPTOPP_BOOL_PPC64) && !defined(CRYPTOPP_DISABLE_ASM) && !defined(_IOS)
|
||||
#define CRYPTOPP_BOOL_ALIGN16 1
|
||||
#else
|
||||
#define CRYPTOPP_BOOL_ALIGN16 0
|
||||
|
||||
@ -1,17 +0,0 @@
|
||||
QMAKE_CXX.INCDIRS = \
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\INCLUDE" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.10240.0\\ucrt" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt"
|
||||
QMAKE_CXX.LIBDIRS = \
|
||||
"C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\LIB\\amd64" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.10240.0\\ucrt\\x64" \
|
||||
"C:\\Program Files (x86)\\Windows Kits\\8.1\\lib\\winv6.3\\um\\x64"
|
||||
QMAKE_CXX.QT_COMPILER_STDCXX = 199711L
|
||||
QMAKE_CXX.QMAKE_MSC_VER = 1900
|
||||
QMAKE_CXX.QMAKE_MSC_FULL_VER = 190024210
|
||||
QMAKE_CXX.COMPILER_MACROS = \
|
||||
QT_COMPILER_STDCXX \
|
||||
QMAKE_MSC_VER \
|
||||
QMAKE_MSC_FULL_VER
|
||||
@ -26,7 +26,10 @@ core_linux {
|
||||
|
||||
core_mac {
|
||||
LIBS += -L$$CORE_V8_PATH_LIBS -lv8_base -lv8_libplatform -lv8_libbase -lv8_snapshot -lv8_libsampler
|
||||
LIBS += -L$$CORE_V8_PATH_LIBS/third_party/icu -licui18n -licuuc
|
||||
|
||||
#LIBS += -L$$CORE_V8_PATH_LIBS/third_party/icu -licui18n -licuuc
|
||||
LIBS += $$CORE_V8_PATH_LIBS/third_party/icu/libicui18n.a
|
||||
LIBS += $$CORE_V8_PATH_LIBS/third_party/icu/libicuuc.a
|
||||
|
||||
QMAKE_CXXFLAGS += -Wall -Wno-inconsistent-missing-override
|
||||
QMAKE_CFLAGS += -Wall -Wno-inconsistent-missing-override
|
||||
|
||||
@ -56,8 +56,6 @@ SOURCES += \
|
||||
../Source/XlsxFormat/Xlsx.cpp \
|
||||
../Source/XlsxFormat/Worksheets/Worksheet.cpp \
|
||||
../Source/XlsxFormat/Worksheets/SheetData.cpp \
|
||||
../Source/DocxFormat/App.cpp \
|
||||
../Source/DocxFormat/Core.cpp \
|
||||
../Source/DocxFormat/FileFactory.cpp \
|
||||
../Source/DocxFormat/IFileContainer.cpp \
|
||||
../Source/XlsxFormat/FileFactory_Spreadsheet.cpp \
|
||||
|
||||
@ -51,8 +51,6 @@
|
||||
#include "../Source/DocxFormat/Media/VbaProject.cpp"
|
||||
#include "../Source/DocxFormat/Media/JsaProject.cpp"
|
||||
#include "../Source/DocxFormat/Docx.cpp"
|
||||
#include "../Source/DocxFormat/App.cpp"
|
||||
#include "../Source/DocxFormat/Core.cpp"
|
||||
#include "../Source/DocxFormat/FileFactory.cpp"
|
||||
#include "../Source/DocxFormat/IFileContainer.cpp"
|
||||
#include "../Source/DocxFormat/Drawing/DrawingExt.cpp"
|
||||
|
||||
@ -1231,6 +1231,9 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
@ -1242,7 +1245,7 @@
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/**",
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/icu/common",
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/icu/i18n",
|
||||
@ -1270,6 +1273,9 @@
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
UNICODE,
|
||||
_UNICODE,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
MAC,
|
||||
unix,
|
||||
_IOS,
|
||||
@ -1281,7 +1287,7 @@
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/,
|
||||
/usr/include/libxml2,
|
||||
/usr/include/libxml2/,
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/**",
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/icu/common",
|
||||
"$(PROJECT_DIR)/../../../UnicodeConverter/icubuilds/mac/icu/icu/i18n",
|
||||
|
||||
@ -5428,14 +5428,6 @@
|
||||
RelativePath="..\Source\DocxFormat\File.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\App.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\Core.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\FileFactory.cpp"
|
||||
>
|
||||
|
||||
@ -2008,14 +2008,6 @@
|
||||
RelativePath="..\Source\DocxFormat\File.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\App.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\Core.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\Source\DocxFormat\FileFactory.cpp"
|
||||
>
|
||||
|
||||
@ -558,14 +558,6 @@
|
||||
<ClCompile Include="..\Source\DocxFormat\Docx.cpp">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\Source\DocxFormat\App.cpp">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\Source\DocxFormat\Core.cpp">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\Source\DocxFormat\FileFactory.cpp">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/bigobj %(AdditionalOptions)</AdditionalOptions>
|
||||
|
||||
@ -811,8 +811,6 @@
|
||||
<Filter>VectorML</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\Source\DocxFormat\Docx.cpp" />
|
||||
<ClCompile Include="..\Source\DocxFormat\App.cpp" />
|
||||
<ClCompile Include="..\Source\DocxFormat\Core.cpp" />
|
||||
<ClCompile Include="..\Source\DocxFormat\FileFactory.cpp" />
|
||||
<ClCompile Include="..\Source\DocxFormat\IFileContainer.cpp" />
|
||||
</ItemGroup>
|
||||
|
||||
@ -165,10 +165,6 @@ namespace SimpleTypes
|
||||
{
|
||||
return (long)Pt_To_Dx(m_dValue);
|
||||
}
|
||||
long ToHps() const
|
||||
{
|
||||
return (long)(m_dValue * 2);
|
||||
}
|
||||
unsigned long ToUnsignedTwips() const
|
||||
{
|
||||
return (unsigned long)Pt_To_Dx(m_dValue);
|
||||
|
||||
@ -4884,11 +4884,11 @@ namespace SimpleTypes
|
||||
enum EShd
|
||||
{
|
||||
shdClear = 0,
|
||||
shdNil = 1,
|
||||
shdDiagCross = 2,
|
||||
shdDiagStripe = 3,
|
||||
shdHorzCross = 4,
|
||||
shdHorzStripe = 5,
|
||||
shdDiagCross = 1,
|
||||
shdDiagStripe = 2,
|
||||
shdHorzCross = 3,
|
||||
shdHorzStripe = 4,
|
||||
shdNil = 5,
|
||||
shdPct10 = 6,
|
||||
shdPct12 = 7,
|
||||
shdPct15 = 8,
|
||||
|
||||
@ -1,92 +0,0 @@
|
||||
/*
|
||||
* (c) Copyright Ascensio System SIA 2010-2018
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
#include "App.h"
|
||||
#include "../XlsxFormat/Xlsx.h"
|
||||
#include "../../../../ASCOfficePPTXFile/PPTXFormat/App.h"
|
||||
|
||||
namespace OOX
|
||||
{
|
||||
CApp::CApp(OOX::Document* pMain) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pApp = this;
|
||||
OOX::Spreadsheet::CXlsx* xlsx = dynamic_cast<OOX::Spreadsheet::CXlsx*>(File::m_pMainDocument);
|
||||
if (xlsx) xlsx->m_pApp = this;
|
||||
}
|
||||
CApp::CApp(OOX::Document* pMain, const CPath& oPath) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pApp = this;
|
||||
OOX::Spreadsheet::CXlsx* xlsx = dynamic_cast<OOX::Spreadsheet::CXlsx*>(File::m_pMainDocument);
|
||||
if (xlsx) xlsx->m_pApp = this;
|
||||
|
||||
read( oPath );
|
||||
}
|
||||
PPTX::App* CApp::ToPptxApp()
|
||||
{
|
||||
PPTX::App* res = new PPTX::App(NULL);
|
||||
if(m_sTemplate.IsInit())
|
||||
res->Template = m_sTemplate.get();
|
||||
if(m_nTotalTime.IsInit())
|
||||
res->TotalTime = m_nTotalTime.get();
|
||||
if(m_nWords.IsInit())
|
||||
res->Words = m_nWords.get();
|
||||
if(m_sApplication.IsInit())
|
||||
res->Application = m_sApplication.get();
|
||||
if(m_sPresentationForm.IsInit())
|
||||
res->PresentationFormat = m_sPresentationForm.get();
|
||||
if(m_nParagraphs.IsInit())
|
||||
res->Paragraphs = m_nParagraphs.get();
|
||||
if(m_nSlides.IsInit())
|
||||
res->Slides = m_nSlides.get();
|
||||
if(m_nNotes.IsInit())
|
||||
res->Notes = m_nNotes.get();
|
||||
if(m_nHiddenSlides.IsInit())
|
||||
res->HiddenSlides = m_nHiddenSlides.get();
|
||||
if(m_nMMClips.IsInit())
|
||||
res->MMClips = m_nMMClips.get();
|
||||
if(m_bScaleCrop.IsInit())
|
||||
res->ScaleCrop = m_bScaleCrop.get();
|
||||
if(m_sCompany.IsInit())
|
||||
res->Company = m_sCompany.get();
|
||||
if(m_bLinksUpToDate.IsInit())
|
||||
res->LinksUpToDate = m_bLinksUpToDate.get();
|
||||
if(m_bSharedDoc.IsInit())
|
||||
res->SharedDoc = m_bSharedDoc.get();
|
||||
if(m_bHyperlinksChanged.IsInit())
|
||||
res->HyperlinksChanged = m_bHyperlinksChanged.get();
|
||||
if(m_sAppVersion.IsInit())
|
||||
res->AppVersion = m_sAppVersion.get();
|
||||
|
||||
return res;
|
||||
}
|
||||
} // namespace OOX
|
||||
@ -40,17 +40,23 @@
|
||||
#include "../Common/SimpleTypes_Shared.h"
|
||||
#include "../../../../DesktopEditor/common/SystemUtils.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
class App;
|
||||
}
|
||||
namespace OOX
|
||||
{
|
||||
class CApp : public OOX::File
|
||||
{
|
||||
public:
|
||||
CApp(OOX::Document* pMain);
|
||||
CApp(OOX::Document* pMain, const CPath& oPath);
|
||||
CApp(OOX::Document* pMain) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pApp = this;
|
||||
}
|
||||
CApp(OOX::Document* pMain, const CPath& oPath) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pApp = this;
|
||||
|
||||
read( oPath );
|
||||
}
|
||||
virtual ~CApp()
|
||||
{
|
||||
}
|
||||
@ -459,8 +465,6 @@ namespace OOX
|
||||
{
|
||||
m_bHyperlinksChanged = bVal;
|
||||
}
|
||||
PPTX::App* ToPptxApp();
|
||||
|
||||
// TO DO: DigSig
|
||||
// HeadingPairs
|
||||
// HLinks
|
||||
|
||||
@ -1,72 +0,0 @@
|
||||
/*
|
||||
* (c) Copyright Ascensio System SIA 2010-2018
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
#include "Core.h"
|
||||
#include "../XlsxFormat/Xlsx.h"
|
||||
#include "../../../../ASCOfficePPTXFile/PPTXFormat/Core.h"
|
||||
|
||||
namespace OOX
|
||||
{
|
||||
CCore::CCore(OOX::Document* pMain) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pCore = this;
|
||||
OOX::Spreadsheet::CXlsx* xlsx = dynamic_cast<OOX::Spreadsheet::CXlsx*>(File::m_pMainDocument);
|
||||
if (xlsx) xlsx->m_pCore = this;
|
||||
}
|
||||
CCore::CCore(OOX::Document* pMain, const CPath& oPath) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pCore = this;
|
||||
OOX::Spreadsheet::CXlsx* xlsx = dynamic_cast<OOX::Spreadsheet::CXlsx*>(File::m_pMainDocument);
|
||||
if (xlsx) xlsx->m_pCore = this;
|
||||
|
||||
read( oPath );
|
||||
}
|
||||
|
||||
PPTX::Core* CCore::ToPptxCore()
|
||||
{
|
||||
PPTX::Core* res = new PPTX::Core(NULL);
|
||||
if (m_sTitle.IsInit())
|
||||
res->title = m_sTitle.get();
|
||||
if (m_sCreator.IsInit())
|
||||
res->creator = m_sCreator.get();
|
||||
if (m_sLastModifiedBy.IsInit())
|
||||
res->lastModifiedBy = m_sLastModifiedBy.get();
|
||||
if (m_sRevision.IsInit())
|
||||
res->revision = m_sRevision.get();
|
||||
if (m_sCreated.IsInit())
|
||||
res->created = m_sCreated.get();
|
||||
if (m_sModified.IsInit())
|
||||
res->modified = m_sModified.get();
|
||||
return res;
|
||||
}
|
||||
} // namespace OOX
|
||||
@ -37,17 +37,23 @@
|
||||
#include "File.h"
|
||||
#include "../Base/Nullable.h"
|
||||
|
||||
namespace PPTX
|
||||
{
|
||||
class Core;
|
||||
}
|
||||
namespace OOX
|
||||
{
|
||||
class CCore : public OOX::File
|
||||
{
|
||||
public:
|
||||
CCore(OOX::Document* pMain);
|
||||
CCore(OOX::Document* pMain, const CPath& oPath);
|
||||
CCore(OOX::Document* pMain) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pCore = this;
|
||||
}
|
||||
CCore(OOX::Document* pMain, const CPath& oPath) : OOX::File(pMain)
|
||||
{
|
||||
CDocx* docx = dynamic_cast<CDocx*>(File::m_pMainDocument);
|
||||
if (docx) docx->m_pCore = this;
|
||||
|
||||
read( oPath );
|
||||
}
|
||||
virtual ~CCore()
|
||||
{
|
||||
}
|
||||
@ -248,7 +254,6 @@ namespace OOX
|
||||
{
|
||||
m_sLastModifiedBy = sVal;
|
||||
}
|
||||
PPTX::Core* ToPptxCore();
|
||||
|
||||
nullable<std::wstring> m_sCategory;
|
||||
nullable<std::wstring> m_sContentStatus;
|
||||
|
||||
@ -29,11 +29,6 @@
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef __ANDROID__
|
||||
#include <gcvt.h>
|
||||
#endif
|
||||
|
||||
#include "CommonInclude.h"
|
||||
#include "Common.h"
|
||||
|
||||
|
||||
@ -42,9 +42,6 @@
|
||||
|
||||
namespace OOX
|
||||
{
|
||||
class CApp;
|
||||
class CCore;
|
||||
|
||||
namespace Spreadsheet
|
||||
{
|
||||
class CWorksheet;
|
||||
@ -88,9 +85,6 @@ namespace OOX
|
||||
}
|
||||
smart_ptr<PPTX::Theme> m_pTheme;
|
||||
|
||||
CApp* m_pApp;
|
||||
CCore* m_pCore;
|
||||
|
||||
CWorkbook* m_pWorkbook;
|
||||
CSharedStrings* m_pSharedStrings;
|
||||
CStyles* m_pStyles;
|
||||
@ -108,9 +102,6 @@ namespace OOX
|
||||
{
|
||||
m_bSpreadsheets = true;
|
||||
|
||||
m_pApp = NULL;
|
||||
m_pCore = NULL;
|
||||
|
||||
m_pWorkbook = NULL;
|
||||
m_pSharedStrings = NULL;
|
||||
m_pStyles = NULL;
|
||||
|
||||
@ -262,7 +262,7 @@ std::wstring COfficeFileFormatChecker::getDocumentID (const std::wstring & _file
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( false == isOpenOfficeFormatFile(fileName, sDocumentID))
|
||||
if ( false == isOpenOfficeFormatFile(fileName, documentID))
|
||||
{
|
||||
NSFile::CFileBinary file;
|
||||
if (!file.OpenFile(fileName))
|
||||
@ -275,12 +275,13 @@ std::wstring COfficeFileFormatChecker::getDocumentID (const std::wstring & _file
|
||||
file.ReadFile(buffer, MIN_SIZE_BUFFER, dwReadBytes);
|
||||
file.CloseFile();
|
||||
|
||||
if (isPdfFormatFile(buffer, (int)dwReadBytes, sDocumentID) )
|
||||
if (isPdfFormatFile(buffer, (int)dwReadBytes, documentID) )
|
||||
{
|
||||
nFileType = AVS_OFFICESTUDIO_FILE_CROSSPLATFORM_PDF;
|
||||
}
|
||||
}
|
||||
}
|
||||
sDocumentID = documentID;
|
||||
|
||||
return documentID;
|
||||
}
|
||||
|
||||
@ -1,9 +1,31 @@
|
||||
|
||||
VERSION = $$cat(version.txt)
|
||||
|
||||
PRODUCT_VERSION = $$(PRODUCT_VERSION)
|
||||
BUILD_NUMBER = $$(BUILD_NUMBER)
|
||||
|
||||
!isEmpty(PRODUCT_VERSION){
|
||||
!isEmpty(BUILD_NUMBER){
|
||||
VERSION = $${PRODUCT_VERSION}.$${BUILD_NUMBER}
|
||||
}
|
||||
}
|
||||
|
||||
DEFINES += INTVER=$$VERSION
|
||||
|
||||
QMAKE_TARGET_COMPANY = $$cat(copyright.txt)
|
||||
QMAKE_TARGET_COPYRIGHT = $$cat(copyright.txt) (c) 2018
|
||||
PUBLISHER_NAME = $$(PUBLISHER_NAME)
|
||||
isEmpty(PUBLISHER_NAME){
|
||||
PUBLISHER_NAME = $$cat(copyright.txt)
|
||||
}
|
||||
|
||||
win32 {
|
||||
CURRENT_YEAR = $$system("echo %Date:~6,4%")
|
||||
}
|
||||
|
||||
!win32 {
|
||||
CURRENT_YEAR = $$system(date +%Y)
|
||||
}
|
||||
|
||||
QMAKE_TARGET_COMPANY = $$PUBLISHER_NAME
|
||||
QMAKE_TARGET_COPYRIGHT = Copyright (C) $${PUBLISHER_NAME} $${CURRENT_YEAR}. All rights reserved
|
||||
|
||||
# CONFIGURATION
|
||||
CONFIG(debug, debug|release) {
|
||||
|
||||
@ -1 +1 @@
|
||||
2.4.554.0
|
||||
2.4.556.0
|
||||
|
||||
@ -991,10 +991,10 @@ namespace NSEditorApi
|
||||
js_wrapper<int> m_nTransitionType;
|
||||
js_wrapper<int> m_nTransitionOption;
|
||||
js_wrapper<int> m_nTransitionDuration;
|
||||
js_wrapper<int> m_nSlideAdvanceDuration;
|
||||
|
||||
js_wrapper<bool> m_bSlideAdvanceOnMouseClick;
|
||||
js_wrapper<bool> m_bSlideAdvanceAfter;
|
||||
js_wrapper<bool> m_bSlideAdvanceDuration;
|
||||
js_wrapper<bool> m_bShowLoop;
|
||||
|
||||
public:
|
||||
@ -1007,10 +1007,10 @@ namespace NSEditorApi
|
||||
LINK_PROPERTY_INT_JS(TransitionType)
|
||||
LINK_PROPERTY_INT_JS(TransitionOption)
|
||||
LINK_PROPERTY_INT_JS(TransitionDuration)
|
||||
LINK_PROPERTY_INT_JS(SlideAdvanceDuration)
|
||||
|
||||
LINK_PROPERTY_BOOL_JS(SlideAdvanceOnMouseClick)
|
||||
LINK_PROPERTY_BOOL_JS(SlideAdvanceAfter)
|
||||
LINK_PROPERTY_BOOL_JS(SlideAdvanceDuration)
|
||||
LINK_PROPERTY_BOOL_JS(ShowLoop)
|
||||
};
|
||||
|
||||
|
||||
@ -548,10 +548,6 @@
|
||||
#define shd_Clear 0
|
||||
#define shd_Nil 1
|
||||
|
||||
#define c_oAscHyperlinkType_InternalLink 0
|
||||
#define c_oAscHyperlinkType_WebLink 1
|
||||
#define c_oAscHyperlinkType_RangeLink 2
|
||||
|
||||
#define c_oAscContextMenuTypes_Common 0 // Обычное контекстное меню
|
||||
#define c_oAscContextMenuTypes_ChangeHdrFtr 1 // Специальное контестное меню для попадания в колонтитул
|
||||
|
||||
@ -694,7 +690,6 @@
|
||||
#define ASC_MENU_EVENT_TYPE_SECTION 17
|
||||
#define ASC_MENU_EVENT_TYPE_SHAPE 18
|
||||
#define ASC_MENU_EVENT_TYPE_SLIDE 20
|
||||
#define ASC_MENU_EVENT_TYPE_CHART 21
|
||||
|
||||
// insert commands
|
||||
#define ASC_MENU_EVENT_TYPE_INSERT_IMAGE 50
|
||||
@ -753,7 +748,6 @@
|
||||
#define ASC_MENU_EVENT_TYPE_USER_ZOOM 301
|
||||
|
||||
#define ASC_MENU_EVENT_TYPE_INSERT_CHART 400
|
||||
#define ASC_MENU_EVENT_TYPE_ADD_CHART_DATA 440
|
||||
#define ASC_MENU_EVENT_TYPE_GET_CHART_DATA 450
|
||||
#define ASC_MENU_EVENT_TYPE_SET_CHART_DATA 460
|
||||
|
||||
@ -764,8 +758,6 @@
|
||||
#define ASC_MENU_EVENT_TYPE_COLOR_SCHEMES 2404 // CAscColorSchemes
|
||||
#define ASC_MENU_EVENT_TYPE_CHANGE_COLOR_SCHEME 2415 // SET(int)
|
||||
|
||||
#define ASC_MENU_EVENT_TYPE_GO_TO_INTERNAL_LINK 5000
|
||||
|
||||
#define ASC_SOCKET_EVENT_TYPE_OPEN 10000
|
||||
#define ASC_SOCKET_EVENT_TYPE_ON_CLOSE 10010
|
||||
#define ASC_SOCKET_EVENT_TYPE_MESSAGE 10020
|
||||
@ -782,6 +774,5 @@
|
||||
|
||||
#define ASC_MENU_EVENT_TYPE_ADVANCED_OPTIONS 22000
|
||||
#define ASC_MENU_EVENT_TYPE_SET_PASSWORD 22001
|
||||
#define ASC_MENU_EVENT_TYPE_SET_TRANSLATIONS 22002
|
||||
|
||||
#endif //_BUILD_EDITOR_DEFINES_CROSSPLATFORM_H_
|
||||
|
||||
@ -10,10 +10,6 @@
|
||||
* Copyright 1997-2007 by Dave Coffin, dcoffin a cybercom o net
|
||||
*/
|
||||
|
||||
#ifdef __ANDROID__
|
||||
#include <swab.h>
|
||||
#endif
|
||||
|
||||
#include "ximaraw.h"
|
||||
#include "../../common/File.h"
|
||||
|
||||
|
||||
@ -1,60 +0,0 @@
|
||||
/*
|
||||
* (c) Copyright Ascensio System SIA 2010-2018
|
||||
*
|
||||
* This program is a free software product. You can redistribute it and/or
|
||||
* modify it under the terms of the GNU Affero General Public License (AGPL)
|
||||
* version 3 as published by the Free Software Foundation. In accordance with
|
||||
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
|
||||
* that Ascensio System SIA expressly excludes the warranty of non-infringement
|
||||
* of any third-party rights.
|
||||
*
|
||||
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
|
||||
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
|
||||
*
|
||||
* You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia,
|
||||
* EU, LV-1021.
|
||||
*
|
||||
* The interactive user interfaces in modified source and object code versions
|
||||
* of the Program must display Appropriate Legal Notices, as required under
|
||||
* Section 5 of the GNU AGPL version 3.
|
||||
*
|
||||
* Pursuant to Section 7(b) of the License you must retain the original Product
|
||||
* logo when distributing the program. Pursuant to Section 7(e) we decline to
|
||||
* grant you any rights under trademark law for use of our trademarks.
|
||||
*
|
||||
* All the Product's GUI elements, including illustrations and icon sets, as
|
||||
* well as technical writing content are licensed under the terms of the
|
||||
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
#include "doctrenderer.h"
|
||||
#include "docbuilder.h"
|
||||
|
||||
#ifdef BOOL
|
||||
#undef BOOL
|
||||
#endif
|
||||
|
||||
#include <iostream>
|
||||
|
||||
namespace NSDoctRenderer
|
||||
{
|
||||
|
||||
CDoctrenderer::CDoctrenderer(const std::wstring& sAllFontsPath) {}
|
||||
|
||||
CDoctrenderer::~CDoctrenderer() {}
|
||||
|
||||
bool CDoctrenderer::Execute(const std::wstring& strXml, std::wstring& strError)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
std::vector<std::wstring> CDoctrenderer::GetImagesInChanges()
|
||||
{
|
||||
std::vector<std::wstring> stub;
|
||||
return stub;
|
||||
}
|
||||
|
||||
void CDocBuilder::Dispose() {}
|
||||
}
|
||||
@ -35,10 +35,6 @@
|
||||
#include "../common/Types.h"
|
||||
#include "../common/File.h"
|
||||
|
||||
#ifdef GetCharWidth
|
||||
#undef GetCharWidth
|
||||
#endif
|
||||
|
||||
#ifndef max
|
||||
#define max(a,b) (((a) > (b)) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
@ -29,11 +29,6 @@
|
||||
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||
*
|
||||
*/
|
||||
|
||||
#ifdef __ANDROID__
|
||||
#include <pthread_setcanceltype.h>
|
||||
#endif
|
||||
|
||||
#include "./BaseThread.h"
|
||||
|
||||
#if defined(_WIN32) || defined(_WIN64) ||defined(_WIN32_WCE)
|
||||
|
||||
@ -84,7 +84,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
virtual Aggplus::CImage* GetImage()
|
||||
Aggplus::CImage* GetImage()
|
||||
{
|
||||
return &m_oImage;
|
||||
}
|
||||
|
||||
@ -35,7 +35,6 @@
|
||||
#include "../../common/Types.h"
|
||||
#include "./Fonts.h"
|
||||
#include "./../IRenderer.h"
|
||||
#include "./../Image.h"
|
||||
|
||||
namespace NSImages
|
||||
{
|
||||
@ -44,8 +43,6 @@ namespace NSImages
|
||||
public:
|
||||
ICacheImage() : NSBase::CBaseRefCounter() {}
|
||||
virtual ~ICacheImage() {}
|
||||
|
||||
virtual Aggplus::CImage* GetImage() { return NULL; }
|
||||
};
|
||||
|
||||
namespace NSCacheImage
|
||||
|
||||
@ -51,7 +51,6 @@
|
||||
8ABC65A3208A1EFA00E96FFE /* pro_Image.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8ABC65A2208A1EFA00E96FFE /* pro_Image.cpp */; };
|
||||
8ABC65A5208A1F1B00E96FFE /* pro_Fonts.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8ABC65A4208A1F1B00E96FFE /* pro_Fonts.cpp */; };
|
||||
8ABC65A7208A1F3A00E96FFE /* MetafileToRenderer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8ABC65A6208A1F3A00E96FFE /* MetafileToRenderer.cpp */; };
|
||||
8ADE001421302B3600BFAD8C /* SystemUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8ADE001321302B3600BFAD8C /* SystemUtils.cpp */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXCopyFilesBuildPhase section */
|
||||
@ -130,8 +129,6 @@
|
||||
8ABC65A2208A1EFA00E96FFE /* pro_Image.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = pro_Image.cpp; path = ../../graphics/pro/pro_Image.cpp; sourceTree = "<group>"; };
|
||||
8ABC65A4208A1F1B00E96FFE /* pro_Fonts.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = pro_Fonts.cpp; path = ../../graphics/pro/pro_Fonts.cpp; sourceTree = "<group>"; };
|
||||
8ABC65A6208A1F3A00E96FFE /* MetafileToRenderer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MetafileToRenderer.cpp; path = ../../graphics/MetafileToRenderer.cpp; sourceTree = "<group>"; };
|
||||
8ADE001221302B3600BFAD8C /* SystemUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SystemUtils.h; path = ../../common/SystemUtils.h; sourceTree = "<group>"; };
|
||||
8ADE001321302B3600BFAD8C /* SystemUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SystemUtils.cpp; path = ../../common/SystemUtils.cpp; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@ -148,13 +145,11 @@
|
||||
1791A2181BAC19C600FC9C28 /* PdfWriter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
698AF5041C0766200080D889 /* unicode_util.h */,
|
||||
698AF5031C0766200080D889 /* unicode_util.cpp */,
|
||||
698AF5041C0766200080D889 /* unicode_util.h */,
|
||||
7C560FF01AA71C5C000E5860 /* AscEditorPDFPrinter.h */,
|
||||
7C560FFB1AA73B7D000E5860 /* AscEditorPDFPrinter.mm */,
|
||||
8A7E89E020E6211000E06CBE /* ICCProfile.h */,
|
||||
8ADE001221302B3600BFAD8C /* SystemUtils.h */,
|
||||
8ADE001321302B3600BFAD8C /* SystemUtils.cpp */,
|
||||
17FFC2C11BAB15CE00D91F59 /* PdfRenderer.h */,
|
||||
17FFC2C01BAB15CE00D91F59 /* PdfRenderer.cpp */,
|
||||
17FFC2C41BAB163500D91F59 /* OnlineOfficeBinToPdf.h */,
|
||||
@ -327,7 +322,6 @@
|
||||
176285F11BAAFC3B00AEDA07 /* Font.cpp in Sources */,
|
||||
176285F21BAAFC3B00AEDA07 /* Font14.cpp in Sources */,
|
||||
176E57401BB0057700276C19 /* ImageFileFormatChecker.cpp in Sources */,
|
||||
8ADE001421302B3600BFAD8C /* SystemUtils.cpp in Sources */,
|
||||
176285FD1BAAFC3B00AEDA07 /* Streams.cpp in Sources */,
|
||||
176285FA1BAAFC3B00AEDA07 /* Pages.cpp in Sources */,
|
||||
17FFC2C21BAB15CE00D91F59 /* PdfRenderer.cpp in Sources */,
|
||||
@ -473,6 +467,9 @@
|
||||
UNICODE,
|
||||
_LINUX_QT,
|
||||
LINUX,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
BUILD_CONFIG_FULL_VERSION,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
LIBXML_READER_ENABLED,
|
||||
@ -485,7 +482,6 @@
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
"../../agg-2.4/include",
|
||||
"../../freetype-2.5.2/include",
|
||||
../../cximage/zlib,
|
||||
@ -513,6 +509,9 @@
|
||||
UNICODE,
|
||||
_LINUX_QT,
|
||||
LINUX,
|
||||
_USE_LIBXML2_READER_,
|
||||
_USE_XMLLITE_READER_,
|
||||
USE_LITE_READER,
|
||||
BUILD_CONFIG_FULL_VERSION,
|
||||
DONT_WRITE_EMBEDDED_FONTS,
|
||||
LIBXML_READER_ENABLED,
|
||||
@ -525,7 +524,6 @@
|
||||
HEADER_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include,
|
||||
/usr/include/libxml2,
|
||||
"../../agg-2.4/include",
|
||||
"../../freetype-2.5.2/include",
|
||||
../../cximage/zlib,
|
||||
|
||||
@ -155,7 +155,7 @@ namespace MetaFile
|
||||
if (lLogicalFontHeight < 0.01)
|
||||
lLogicalFontHeight = 18;
|
||||
|
||||
double dFontHeight = fabs(lLogicalFontHeight * m_dScaleY / 25.4 * 72);
|
||||
double dFontHeight = fabs(lLogicalFontHeight * m_dScaleY * m_pFile->GetPixelHeight() / 25.4 * 72);
|
||||
|
||||
std::wstring wsFaceName = pFont->GetFaceName();
|
||||
m_pRenderer->put_FontName(wsFaceName);
|
||||
@ -682,9 +682,10 @@ namespace MetaFile
|
||||
return false;
|
||||
|
||||
int nColor = pPen->GetColor();
|
||||
double dPixelWidth = m_pFile->GetPixelWidth();
|
||||
|
||||
// TODO: dWidth зависит еще от флага PS_GEOMETRIC в стиле карандаша
|
||||
double dWidth = pPen->GetWidth() * m_dScaleX;
|
||||
double dWidth = pPen->GetWidth() * m_dScaleX * dPixelWidth;
|
||||
if (dWidth <= 0.01)
|
||||
dWidth = 0;
|
||||
|
||||
@ -710,7 +711,7 @@ namespace MetaFile
|
||||
else if (PS_JOIN_MITER == ulPenJoin)
|
||||
nJoinStyle = Aggplus::LineJoinMiter;
|
||||
|
||||
double dMiterLimit = m_pFile->GetMiterLimit() * m_dScaleX;
|
||||
double dMiterLimit = m_pFile->GetMiterLimit() * m_dScaleX * dPixelWidth;
|
||||
|
||||
// TODO: Реализовать PS_USERSTYLE
|
||||
BYTE nDashStyle = Aggplus::DashStyleSolid;;
|
||||
@ -718,12 +719,7 @@ namespace MetaFile
|
||||
// В WinGDI все карандаши толщиной больше 1px рисуются в стиле PS_SOLID
|
||||
if (1 >= pPen->GetWidth() && PS_SOLID != ulPenStyle)
|
||||
{
|
||||
// TODO: Ранее здесь специально ставилась толщина 0, что любой рендерер должен
|
||||
// воспринимать как толщину в 1px. Но сейчас это не работает в графическом ренедерере,
|
||||
// поэтому временно это убрано.
|
||||
// Толщиной в 1px - именно так рисуется в винде любая пунктирная линия в метафайле.
|
||||
|
||||
//dWidth = 0; // Специальное значение для 1pх карандаша
|
||||
dWidth = 0; // Специальное значение для 1pх карандаша
|
||||
|
||||
double dDpiX;
|
||||
m_pRenderer->get_DpiX(&dDpiX);
|
||||
|
||||
@ -177,47 +177,49 @@ namespace MetaFile
|
||||
{
|
||||
return m_lType;
|
||||
}
|
||||
void CMetaFile::GetBounds(double* pdX, double* pdY, double* pdW, double* pdH)
|
||||
{
|
||||
if (c_lMetaWmf == m_lType)
|
||||
{
|
||||
const TRectD& oRect = m_oWmfFile.GetBounds();
|
||||
*pdX = oRect.dLeft;
|
||||
*pdY = oRect.dTop;
|
||||
*pdW = oRect.dRight - oRect.dLeft;
|
||||
*pdH = oRect.dBottom - oRect.dTop;
|
||||
}
|
||||
else if (c_lMetaEmf == m_lType)
|
||||
{
|
||||
TEmfRectL* pRect = m_oEmfFile.GetBounds();
|
||||
*pdX = pRect->lLeft;
|
||||
*pdY = pRect->lTop;
|
||||
*pdW = pRect->lRight - pRect->lLeft;
|
||||
*pdH = pRect->lBottom - pRect->lTop;
|
||||
}
|
||||
else if (c_lMetaSvm == m_lType)
|
||||
{
|
||||
TRect* pRect = m_oSvmFile.GetBounds();
|
||||
*pdX = pRect->nLeft;
|
||||
*pdY = pRect->nTop;
|
||||
*pdW = pRect->nRight - pRect->nLeft;
|
||||
*pdH = pRect->nBottom - pRect->nTop;
|
||||
void CMetaFile::GetBounds(double* pdX, double* pdY, double* pdW, double* pdH)
|
||||
{
|
||||
if (c_lMetaWmf == m_lType)
|
||||
{
|
||||
const TRectD& oRect = m_oWmfFile.GetBounds();
|
||||
*pdX = oRect.dLeft;
|
||||
*pdY = oRect.dTop;
|
||||
*pdW = oRect.dRight - oRect.dLeft;
|
||||
*pdH = oRect.dBottom - oRect.dTop;
|
||||
}
|
||||
else if (c_lMetaEmf == m_lType)
|
||||
{
|
||||
TEmfRectL* pRect = m_oEmfFile.GetBounds();
|
||||
*pdX = pRect->lLeft;
|
||||
*pdY = pRect->lTop;
|
||||
*pdW = pRect->lRight - pRect->lLeft;
|
||||
*pdH = pRect->lBottom - pRect->lTop;
|
||||
}
|
||||
else if (c_lMetaSvm == m_lType)
|
||||
{
|
||||
TRect* pRect = m_oSvmFile.GetBounds();
|
||||
*pdX = pRect->nLeft;
|
||||
*pdY = pRect->nTop;
|
||||
*pdW = pRect->nRight - pRect->nLeft;
|
||||
*pdH = pRect->nBottom - pRect->nTop;
|
||||
|
||||
if (*pdW > 10000 || *pdH > 10000)
|
||||
{
|
||||
*pdW /= 10;
|
||||
*pdH /= 10;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
*pdX = 0;
|
||||
*pdY = 0;
|
||||
*pdW = 0;
|
||||
*pdH = 0;
|
||||
}
|
||||
};
|
||||
void CMetaFile::ConvertToRaster(const wchar_t* wsOutFilePath, unsigned int unFileType, int nWidth, int nHeight)
|
||||
if (*pdW > 10000 || *pdH > 10000)
|
||||
{
|
||||
*pdW /= 10;
|
||||
*pdH /= 10;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
*pdX = 0;
|
||||
*pdY = 0;
|
||||
*pdW = 0;
|
||||
*pdH = 0;
|
||||
}
|
||||
if (*pdW < 0) *pdW = -*pdW;
|
||||
if (*pdH < 0) *pdH = -*pdH;
|
||||
};
|
||||
void CMetaFile::ConvertToRaster(const wchar_t* wsOutFilePath, unsigned int unFileType, int nWidth, int nHeight)
|
||||
{
|
||||
CFontManager *pFontManager = (CFontManager*)m_pAppFonts->GenerateFontManager();
|
||||
CFontsCache* pFontCache = new CFontsCache();
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user