From 19c952599350803debfb52e063ebe2e15660cd3a Mon Sep 17 00:00:00 2001 From: "Sergey.Konovalov" Date: Fri, 26 Sep 2014 07:26:13 +0000 Subject: [PATCH] =?UTF-8?q?(2.0.0.183):=20ASCOfficeDocxFile2=20Bug=2026620?= =?UTF-8?q?=20-=20=D0=9E=D1=88=D0=B8=D0=B1=D0=BA=D0=B0=20=D0=B2=20=D0=BA?= =?UTF-8?q?=D0=BE=D0=BD=D1=81=D0=BE=D0=BB=D0=B8=20=D0=BF=D1=80=D0=B8=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BF=D1=8B=D1=82=D0=BA=D0=B5=20=D0=BF=D0=B5=D1=80?= =?UTF-8?q?=D0=B5=D1=81=D0=BE=D1=85=D1=80=D0=B0=D0=BD=D0=B5=D0=BD=D0=B8?= =?UTF-8?q?=D1=8F=20XLSX=20=D0=BA=D0=BD=D0=B8=D0=B3=D0=B8=20=D0=B8=D0=BB?= =?UTF-8?q?=D0=B8=20=D0=BF=D0=BE=D0=B2=D1=80=D0=B5=D0=B6=D0=B4=D0=B5=D0=BD?= =?UTF-8?q?=D0=BD=D0=B0=D1=8F=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8F=20?= =?UTF-8?q?=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=20=D1=80=D0=B5=D0=B4=D0=B0=D0=BA?= =?UTF-8?q?=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D1=8F.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@58501 954022d7-b5bf-4e40-9824-e11837661b57 --- ASCOfficeDocxFile2/version.h | 6 +++--- ASCOfficePPTXFile/PPTXFormat/Logic/CustGeom.h | 5 ++++- .../PPTXFormat/Logic/DefaultShapeDefinition.h | 2 ++ ASCOfficePPTXFile/PPTXFormat/Logic/SpPr.h | 14 ++++++++++++-- 4 files changed, 21 insertions(+), 6 deletions(-) diff --git a/ASCOfficeDocxFile2/version.h b/ASCOfficeDocxFile2/version.h index 9374d708aa..655d2ad6df 100644 --- a/ASCOfficeDocxFile2/version.h +++ b/ASCOfficeDocxFile2/version.h @@ -2,6 +2,6 @@ //2 //0 //0 -//182 -#define INTVER 2,0,0,182 -#define STRVER "2,0,0,182\0" +//183 +#define INTVER 2,0,0,183 +#define STRVER "2,0,0,183\0" diff --git a/ASCOfficePPTXFile/PPTXFormat/Logic/CustGeom.h b/ASCOfficePPTXFile/PPTXFormat/Logic/CustGeom.h index aab4c578dd..adef10d6ba 100644 --- a/ASCOfficePPTXFile/PPTXFormat/Logic/CustGeom.h +++ b/ASCOfficePPTXFile/PPTXFormat/Logic/CustGeom.h @@ -102,7 +102,10 @@ namespace PPTX pWriter->Write(rect); else pWriter->WriteString(_T("")); - pWriter->WriteArray(_T("a:pathLst"), pathLst); + if (pathLst.size() == 0) + pWriter->WriteString(_T("")); + else + pWriter->WriteArray(_T("a:pathLst"), pathLst); pWriter->EndNode(_T("a:custGeom")); } diff --git a/ASCOfficePPTXFile/PPTXFormat/Logic/DefaultShapeDefinition.h b/ASCOfficePPTXFile/PPTXFormat/Logic/DefaultShapeDefinition.h index cbf5fcb64f..986b424b32 100644 --- a/ASCOfficePPTXFile/PPTXFormat/Logic/DefaultShapeDefinition.h +++ b/ASCOfficePPTXFile/PPTXFormat/Logic/DefaultShapeDefinition.h @@ -126,7 +126,9 @@ namespace PPTX pWriter->StartNode(_T("a:") + m_name); pWriter->EndAttributes(); + pWriter->m_lFlag = 0x04; spPr.toXmlWriter(pWriter); + pWriter->m_lFlag = 0; bodyPr.toXmlWriter(pWriter); lstStyle.toXmlWriter(pWriter); pWriter->Write(style); diff --git a/ASCOfficePPTXFile/PPTXFormat/Logic/SpPr.h b/ASCOfficePPTXFile/PPTXFormat/Logic/SpPr.h index 297a7d5c3b..bb14544ea1 100644 --- a/ASCOfficePPTXFile/PPTXFormat/Logic/SpPr.h +++ b/ASCOfficePPTXFile/PPTXFormat/Logic/SpPr.h @@ -42,7 +42,12 @@ namespace PPTX else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_CHART) pWriter->StartNode(_T("c:spPr")); else - pWriter->StartNode(_T("p:spPr")); + { + if (0 != (pWriter->m_lFlag & 0x04))//theme + pWriter->StartNode(_T("a:spPr")); + else + pWriter->StartNode(_T("p:spPr")); + } pWriter->StartAttributes(); pWriter->WriteAttribute(_T("bwMode"), bwMode); @@ -74,7 +79,12 @@ namespace PPTX else if (pWriter->m_lDocType == XMLWRITER_DOC_TYPE_CHART) pWriter->EndNode(_T("c:spPr")); else - pWriter->EndNode(_T("p:spPr")); + { + 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