Compare commits

...

16 Commits

Author SHA1 Message Date
10964d32e6 ... 2017-02-01 17:10:19 +03:00
da2493ed3b OdfFormatReader - fix math matrix 2017-02-01 16:15:32 +03:00
0a183f3505 fix bug #33886 2017-02-01 15:59:28 +03:00
ac6cc1ec24 pptx file with wrong rels 2017-02-01 15:05:08 +03:00
a1846da0da Merge tag 'v4.2.7' into develop
v4.2.7 v4.2.7
2017-02-01 12:49:34 +03:00
0bd10c28ac Merge branch 'hotfix/v4.2.7' 2017-02-01 12:49:29 +03:00
2367cee329 PptxFormat - fix user file with wrong rels 2017-01-31 19:59:20 +03:00
288d89301a fix bug 33801 2017-01-31 17:16:28 +03:00
4d519e8f26 x2t - version up, .. 2017-01-31 15:02:34 +03:00
1bd2c0b852 Merge branch 'hotfix/v4.2.7' into develop
fix bug 33867
2017-01-31 13:57:55 +03:00
82b0f4bce8 DiagramDrawing losing images 2017-01-31 13:50:16 +03:00
5635239274 fix crash on windows 2017-01-31 13:12:43 +03:00
1f979fc4cc . 2017-01-31 12:05:32 +03:00
80c4a65147 PptxFormat- fix convert oox drawing to vml drawing
RtfFormatWriter - convert oox drawing, convert smart art objects
2017-01-31 11:58:09 +03:00
4fda6101eb OdfFormatWriter - convert smart art 2017-01-28 18:38:46 +03:00
765ca861fb fix bug 33842 (corrupted xlsx->csv convertion) 2017-01-27 15:22:14 +03:00
122 changed files with 3750 additions and 3736 deletions

View File

@ -307,13 +307,11 @@ namespace DocFileFormat
if (!FormatUtils::IsControlSymbol(xchBullet))
{
ret.push_back(lvl.xst[0]);
ret.push_back(L'\0');
}
}
else
{
ret.push_back(L'\xF0B7');
ret.push_back(L'\0');
}
}
else

View File

@ -23,9 +23,9 @@ DEFINES += UNICODE \
_UNICODE \
_USE_XMLLITE_READER_ \
USE_LITE_READER \
USE_ATL_CSTRING \
_USE_LIBXML2_READER_ \
LIBXML_READER_ENABLED
LIBXML_READER_ENABLED \
DONT_WRITE_EMBEDDED_FONTS \
INCLUDEPATH += \
../../../DesktopEditor/freetype-2.5.2/include \

View File

@ -44,7 +44,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=""
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;USE_ATL_CSTRINGS;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;DONT_WRITE_EMBEDDED_FONTS"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"

File diff suppressed because it is too large Load Diff

View File

@ -33,7 +33,7 @@
//
#include "../DocFormatLib/DocFormatLib.h"
#include "../win32/ASCOfficeCriticalSection.h"
#include "../../OfficeUtils/src/ASCOfficeCriticalSection.h"
#include "../../OfficeUtils/src/OfficeUtils.h"
@ -41,6 +41,7 @@
#include <string>
#include <windows.h>
#include <tchar.h>
#if defined(_WIN64)
#pragma comment(lib, "../../build/bin/icu/win_64/icuuc.lib")
@ -58,7 +59,6 @@ int _tmain(int argc, _TCHAR* argv[])
std::wstring outputDir = NSDirectory::GetFolderPath(sDstDocx);
std::wstring dstTempPath = NSDirectory::CreateDirectoryWithUniqueName(outputDir);
// doc->docx
COfficeDocFile docFile;
docFile.m_sTempFolder = outputDir;
@ -71,7 +71,7 @@ int _tmain(int argc, _TCHAR* argv[])
hRes = oCOfficeUtils.CompressFileOrDirectory(dstTempPath.c_str(), sDstDocx, -1);
}
FileSystem::Directory::DeleteDirectory(dstTempPath);
NSDirectory::DeleteDirectory(dstTempPath);
return hRes;
}

View File

@ -338,6 +338,58 @@
<References>
</References>
<Files>
<Filter
Name="Common"
>
<File
RelativePath="..\..\ASCOfficeDocxFile2\BinWriter\BinWriters.cpp"
>
</File>
<File
RelativePath="..\..\XlsxSerializerCom\Reader\ChartFromToBinary.cpp"
>
</File>
<File
RelativePath="..\..\ASCOfficeDocxFile2\DocWrapper\ChartWriter.cpp"
>
</File>
<File
RelativePath="..\..\XlsxSerializerCom\Common\Common.cpp"
>
</File>
<File
RelativePath="..\..\XlsxSerializerCom\Reader\CommonWriter.cpp"
>
</File>
<File
RelativePath="..\..\XlsxSerializerCom\Reader\CSVReader.cpp"
>
</File>
<File
RelativePath="..\..\XlsxSerializerCom\Writer\CSVWriter.cpp"
>
</File>
<File
RelativePath="..\..\ASCOfficeDocxFile2\DocWrapper\DocxSerializer.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
AdditionalOptions="/bigobj&#x0D;&#x0A;"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\ASCOfficeDocxFile2\DocWrapper\FontProcessor.cpp"
>
</File>
<File
RelativePath="..\..\ASCOfficeDocxFile2\DocWrapper\XlsxSerializer.cpp"
>
</File>
</Filter>
<File
RelativePath=".\DocFormatTest.cpp"
>
@ -386,6 +438,14 @@
RelativePath="..\..\UnicodeConverter\UnicodeConverter.cpp"
>
</File>
<File
RelativePath="..\..\DesktopEditor\xml\src\xmldom.cpp"
>
</File>
<File
RelativePath="..\..\DesktopEditor\xml\src\xmllight.cpp"
>
</File>
</Files>
<Globals>
</Globals>

View File

@ -16,15 +16,15 @@ include($$PWD/../../Common/3dParty/boost/boost.pri)
DEFINES += UNICODE \
_UNICODE \
NODOCX \
_USE_XMLLITE_READER_ \
USE_LITE_READER \
USE_ATL_CSTRING \
USE_AVSOFFICESTUDIO_XMLUTILS \
SOLUTION_ASCOFFICEDOCXFILE2 \
#DISABLE_FILE_DOWNLOADER \
_USE_LIBXML2_READER_ \
LIBXML_READER_ENABLED
LIBXML_READER_ENABLED \
DONT_WRITE_EMBEDDED_FONTS
INCLUDEPATH += \
../../DesktopEditor/freetype-2.5.2/include \

View File

@ -2,6 +2,9 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml_wrapper", "..\win32\cpxml.vcproj", "{41BED424-4EAF-4053-8A5F-1E2A387D53D1}"
ProjectSection(ProjectDependencies) = postProject
{21663823-DE45-479B-91D0-B4FEF4916EF0} = {21663823-DE45-479B-91D0-B4FEF4916EF0}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OdfFormatReaderLib", "..\win32\cpodf.vcproj", "{50E20601-4A8D-4AFB-8870-63828D328429}"
ProjectSection(ProjectDependencies) = postProject
@ -21,7 +24,9 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OdfFormulasConvert", "..\wi
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OdfFileReaderTest", "OdfFileTest.vcproj", "{C2882DDD-07E6-4314-AD4B-48F43F38D722}"
ProjectSection(ProjectDependencies) = postProject
{41BED424-4EAF-4053-8A5F-1E2A387D53D1} = {41BED424-4EAF-4053-8A5F-1E2A387D53D1}
{50E20601-4A8D-4AFB-8870-63828D328429} = {50E20601-4A8D-4AFB-8870-63828D328429}
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2} = {37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}
{94954A67-A853-43B1-A727-6EF2774C5A6A} = {94954A67-A853-43B1-A727-6EF2774C5A6A}
{F8274B05-168E-4D6E-B843-AA7510725363} = {F8274B05-168E-4D6E-B843-AA7510725363}
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540} = {9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}
@ -30,7 +35,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OdfFileReaderTest", "OdfFil
{C739151F-5384-41DF-A1A6-F089E2C1AD56} = {C739151F-5384-41DF-A1A6-F089E2C1AD56}
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B} = {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}
{BC52A07C-A797-423D-8C4F-8678805BBB36} = {BC52A07C-A797-423D-8C4F-8678805BBB36}
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2} = {37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "graphics", "..\..\DesktopEditor\graphics\graphics_vs2005.vcproj", "{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}"

View File

@ -31,18 +31,23 @@
*/
// OdfFileTest.cpp
#include "../../../OfficeUtils/src/OfficeUtils.h"
#include <stdio.h>
#include <tchar.h>
#include "../../../Common/DocxFormat/Source/SystemUtility/FileSystem/Directory.h"
#include "../../src/ConvertOO2OOX.h"
#include "../../OfficeUtils/src/OfficeUtils.h"
#include "../../DesktopEditor/common/Directory.h"
#include "../src/ConvertOO2OOX.h"
#if defined(_WIN64)
#pragma comment(lib, "../../../build/bin/icu/win_64/icuuc.lib")
#pragma comment(lib, "../../build/bin/icu/win_64/icuuc.lib")
#elif defined (_WIN32)
#pragma comment(lib, "../../../build/bin/icu/win_32/icuuc.lib")
#pragma comment(lib, "../../build/bin/icu/win_32/icuuc.lib")
#endif
int _tmain(int argc, _TCHAR* argv[])
{
if (argc < 2) return 1;
@ -50,12 +55,12 @@ int _tmain(int argc, _TCHAR* argv[])
HRESULT hr = S_OK;
//////////////////////////////////////////////////////////////////////////
std::wstring srcFileName = argv[1];
std::wstring dstPath = argc > 2 ? argv[2] : sSrcDoc + L"-my.docx"; //xlsx pptx
std::wstring dstPath = argc > 2 ? argv[2] : srcFileName + L"-my.pptx"; //xlsx pptx
std::wstring outputDir = FileSystem::Directory::GetFolderPath(dstPath);
std::wstring outputDir = NSDirectory::GetFolderPath(dstPath);
std::wstring srcTempPath = FileSystem::Directory::CreateDirectoryWithUniqueName(outputDir);
std::wstring dstTempPath = FileSystem::Directory::CreateDirectoryWithUniqueName(outputDir);
std::wstring srcTempPath = NSDirectory::CreateDirectoryWithUniqueName(outputDir);
std::wstring dstTempPath = NSDirectory::CreateDirectoryWithUniqueName(outputDir);
// распаковываем исходник во временную директорию
COfficeUtils oCOfficeUtils(NULL);
@ -64,14 +69,14 @@ int _tmain(int argc, _TCHAR* argv[])
hr = ConvertOO2OOX(srcTempPath, dstTempPath, L"C:\\Windows\\Fonts", false, NULL);
FileSystem::Directory::DeleteDirectory(srcTempPath);
NSDirectory::DeleteDirectory(srcTempPath);
if (hr != S_OK) return hr;
if (S_OK != oCOfficeUtils.CompressFileOrDirectory(dstTempPath.c_str(), dstPath.c_str(), -1))
return hr;
FileSystem::Directory::DeleteDirectory(dstTempPath);
NSDirectory::DeleteDirectory(dstTempPath);
////////////////////////////////////////////////////////////////////////
return 0;

View File

@ -43,11 +43,11 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;_UNICODE;UNICODE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="2"
UsePrecompiledHeader="0"
WarningLevel="3"
Detect64BitPortabilityProblems="false"
DebugInformationFormat="4"
@ -63,7 +63,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="gdi32.lib"
AdditionalDependencies="gdi32.lib Rpcrt4.lib"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
@ -369,6 +369,30 @@
/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\DesktopEditor\xml\src\xmldom.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="0"
/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\DesktopEditor\xml\src\xmllight.cpp"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCLCompilerTool"
UsePrecompiledHeader="0"
/>
</FileConfiguration>
</File>
</Filter>
</Files>
<Globals>

View File

@ -58,7 +58,7 @@ bool is_internal(const std::wstring & uri, const std::wstring & packetRoot)
std::wstring resultPath = packetRoot + FILE_SEPARATOR_STR + mediaPath;
return NSDirectory::Exists(resultPath) || NSDirectory::Exists(mediaPath);
return NSFile::CFileBinary::Exists(resultPath) || NSDirectory::Exists(mediaPath);
}
mediaitems::item::item( std::wstring const & _href,

View File

@ -433,8 +433,6 @@ void pptx_slide_context::end_shape()
void pptx_slide_context::end_table()
{
impl_->objects_.push_back(impl_->object_description_);
default_set();
}
bool pptx_slide_context::empty() const

View File

@ -376,7 +376,7 @@ void oox_serialize_tcPr(std::wostream & strm, std::vector<const odf_reader::styl
if (fill.bitmap)
{
bool isMediaInternal = false;
bool isMediaInternal = true;
std::wstring ref;
fill.bitmap->rId = Context.get_slide_context().get_mediaitems().add_or_find(fill.bitmap->xlink_href_, oox::typeImage, isMediaInternal, ref);
Context.get_slide_context().add_rels(isMediaInternal, fill.bitmap->rId, ref, oox::typeImage);

View File

@ -465,7 +465,7 @@ public:
void serialize(CP_ATTR_NODE);
_CP_OPT(horizontal_pos) style_horizontal_pos_;
_CP_OPT(length) svg_x_;
_CP_OPT(length) svg_x_;
};
@ -477,10 +477,10 @@ public:
void apply_from(const common_draw_style_name_attlist & Other);
void serialize(CP_ATTR_NODE);
_CP_OPT(style_ref) draw_style_name_;
_CP_OPT(std::wstring) draw_class_names_;
_CP_OPT(style_ref) presentation_style_name_;
_CP_OPT(std::wstring) presentation_class_names_;
_CP_OPT(style_ref) draw_style_name_;
_CP_OPT(std::wstring) draw_class_names_;
_CP_OPT(style_ref) presentation_style_name_;
_CP_OPT(std::wstring) presentation_class_names_;
};
@ -606,8 +606,8 @@ public:
void apply_from(const common_draw_shape_with_text_and_styles_attlist & Other);
void serialize(CP_ATTR_NODE);
common_draw_shape_with_styles_attlist common_draw_shape_with_styles_attlist_;
common_draw_text_style_name_attlist common_draw_text_style_name_attlist_;
common_draw_shape_with_styles_attlist common_draw_shape_with_styles_attlist_;
common_draw_text_style_name_attlist common_draw_text_style_name_attlist_;
};
/// presentation-shape-attlist
@ -618,9 +618,9 @@ public:
void apply_from(const presentation_shape_attlist & Other);
void serialize(CP_ATTR_NODE);
_CP_OPT(std::wstring) presentation_class_;
_CP_OPT(Bool) presentation_placeholder_;
_CP_OPT(Bool) presentation_user_transformed_;
_CP_OPT(std::wstring) presentation_class_;
_CP_OPT(Bool) presentation_placeholder_;
_CP_OPT(Bool) presentation_user_transformed_;
};

View File

@ -71,14 +71,9 @@ namespace odf_reader {
void draw_g::pptx_convert(oox::pptx_conversion_context & Context)
{
int i=0;
int size = content_.size();
while(true)
{
if (i>=size)break;
office_element_ptr const & elm = content_[i];
elm->pptx_convert(Context);
i++;
for (size_t i = 0; i < content_.size(); i++)
{
content_[i]->pptx_convert(Context);
}
}
void draw_frame::pptx_convert_placeHolder(oox::pptx_conversion_context & Context)

View File

@ -94,10 +94,10 @@ void math_mtr::oox_convert(oox::math_context & Context)
strm << L"<m:mr>";
for (int i = 0; i < content_.size(); i++)
{
strm << L"<m:e>";
//strm << L"<m:e>"; // EqArray записался в числитель вместо знаменателя.docx - дублирование
office_math_element* math_element = dynamic_cast<office_math_element*>(content_[i].get());
math_element->oox_convert(Context);
strm << L"</m:e>";
//strm << L"</m:e>";
}
strm << L"</m:mr>";
}

View File

@ -24,7 +24,8 @@ DEFINES += UNICODE \
_USE_LIBXML2_READER_ \
_USE_XMLLITE_READER_ \
USE_LITE_READER \
LIBXML_READER_ENABLED
LIBXML_READER_ENABLED \
DONT_WRITE_EMBEDDED_FONTS
INCLUDEPATH += ../../DesktopEditor/freetype-2.5.2/include
INCLUDEPATH += ../../ASCOfficeOdfFile/include

View File

@ -80,7 +80,7 @@ static const _sh_typ Shape_Types_Mapping[] = // index === OOX::Drawing::EShapeTy
{ L"" , 7}, // shapetypeChartX,
{ L"chevron" , 7}, // shapetypeChevron,
{ L"" , 7}, // shapetypeChord,
{ L"circular-arrow" , 7}, // shapetypeCircularArrow,
{ L"" , 7}, // shapetypeCircularArrow,
{ L"cloud" , 7}, // shapetypeCloud,
{ L"cloud-callout" , 7}, // shapetypeCloudCallout,
{ L"" , 7}, // shapetypeCorner,

View File

@ -29,6 +29,7 @@
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "../oox_shape_defines.h"
// shapetypeAccentBorderCallout1,
// shapetypeAccentBorderCallout2,
// shapetypeAccentBorderCallout3,

View File

@ -29,6 +29,333 @@
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
// shapetypeLeftCircularArrow,
#include "../oox_shape_defines.h"
// +shapetypeLeftCircularArrow,
// shapetypeLeftRightCircularArrow,
// shapetypeSwooshArrow,
// shapetypeSwooshArrow,
// +shapetypeCircularArrow
namespace cpdoccore
{
class oox_shape_LeftCircularArrow : public oox_shape
{
public:
oox_shape_LeftCircularArrow()
{
odf_type_name =L"ooxml-leftCircularArrow";
enhanced_path = L"M 529769 128373 L 570534 225808 A ?f91 ?f92 ?f93 ?f94 570534 225808 ?f88 ?f90 W ?f95 ?f96 ?f97 ?f98 570534 225808 ?f88 ?f90 L 246425 854941 139301 967187 5691 907641 74093 892667 A ?f138 ?f139 ?f140 ?f141 74093 892667 ?f135 ?f137 W ?f142 ?f143 ?f144 ?f145 74093 892667 ?f135 ?f137 Z N";
text_areas = L"?f48 ?f50 ?f49 ?f51";
glue_points = L"?f40 ?f41 ?f42 ?f43 ?f44 ?f45 ?f46 ?f47";
view_box = L"0 0 1637004 1637004";
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 / 1637004");
add(L"f11", L"?f6 / 1637004");
add(L"f12", L"139301 - 818502");
add(L"f13", L"967187 - 818502");
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"529769 - 818502");
add(L"f20", L"128373 - 818502");
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"74093 - 818502");
add(L"f27", L"892667 - 818502");
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"246425 - 818502");
add(L"f34", L"854941 - 818502");
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"550151 / ?f10");
add(L"f41", L"177091 / ?f11");
add(L"f42", L"5691 / ?f10");
add(L"f43", L"907641 / ?f11");
add(L"f44", L"139301 / ?f10");
add(L"f45", L"967187 / ?f11");
add(L"f46", L"246425 / ?f10");
add(L"f47", L"854941 / ?f11");
add(L"f48", L"289519 / ?f10");
add(L"f49", L"1347485 / ?f10");
add(L"f50", L"289519 / ?f11");
add(L"f51", L"1347485 / ?f11");
add(L"f52", L"21550000 - -4313128");
add(L"f53", L"if(?f52, -4313128, 21550000)");
add(L"f54", L"-21550000 - ?f53");
add(L"f55", L"if(?f54, -21550000, ?f53)");
add(L"f56", L"14837806 + ?f55");
add(L"f57", L"14837806 + ?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 * 642475");
add(L"f63", L"sin(?f59)");
add(L"f64", L"0 - ?f63");
add(L"f65", L"?f64 * 642475");
add(L"f66", L"sqrt(?f62 * ?f62 + ?f65 * ?f65 + 0 * 0)");
add(L"f67", L"642475 * 642475 / ?f66");
add(L"f68", L"?f64 * ?f67");
add(L"f69", L"570534 - ?f68");
add(L"f70", L"?f61 * ?f67");
add(L"f71", L"225808 - ?f70");
add(L"f72", L"?f69 - 642475");
add(L"f73", L"?f71 - 642475");
add(L"f74", L"?f69 + 642475");
add(L"f75", L"?f71 + 642475");
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 * 642475");
add(L"f82", L"sin(?f78)");
add(L"f83", L"0 - ?f82");
add(L"f84", L"?f83 * 642475");
add(L"f85", L"sqrt(?f81 * ?f81 + ?f84 * ?f84 + 0 * 0)");
add(L"f86", L"642475 * 642475 / ?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, 570534, ?f72)");
add(L"f92", L"if(?f55, 225808, ?f73)");
add(L"f93", L"if(?f55, 570534, ?f74)");
add(L"f94", L"if(?f55, 225808, ?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 - 4379179");
add(L"f100", L"if(?f99, 4379179, 21550000)");
add(L"f101", L"-21550000 - ?f100");
add(L"f102", L"if(?f101, -21550000, ?f100)");
add(L"f103", L"10458627 + ?f102");
add(L"f104", L"10458627 + ?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 * 748094");
add(L"f110", L"sin(?f106)");
add(L"f111", L"0 - ?f110");
add(L"f112", L"?f111 * 748094");
add(L"f113", L"sqrt(?f109 * ?f109 + ?f112 * ?f112 + 0 * 0)");
add(L"f114", L"748094 * 748094 / ?f113");
add(L"f115", L"?f111 * ?f114");
add(L"f116", L"74093 - ?f115");
add(L"f117", L"?f108 * ?f114");
add(L"f118", L"892667 - ?f117");
add(L"f119", L"?f116 - 748094");
add(L"f120", L"?f118 - 748094");
add(L"f121", L"?f116 + 748094");
add(L"f122", L"?f118 + 748094");
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 * 748094");
add(L"f129", L"sin(?f125)");
add(L"f130", L"0 - ?f129");
add(L"f131", L"?f130 * 748094");
add(L"f132", L"sqrt(?f128 * ?f128 + ?f131 * ?f131 + 0 * 0)");
add(L"f133", L"748094 * 748094 / ?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, 74093, ?f119)");
add(L"f139", L"if(?f102, 892667, ?f120)");
add(L"f140", L"if(?f102, 74093, ?f121)");
add(L"f141", L"if(?f102, 892667, ?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_CircularArrow : public oox_shape
{
public:
oox_shape_CircularArrow()
{
odf_type_name =L"ooxml-circularArrow";
enhanced_path = L"M 832838 101692 A ?f91 ?f92 ?f93 ?f94 832838 101692 ?f88 ?f90 W ?f95 ?f96 ?f97 ?f98 832838 101692 ?f88 ?f90 L 1755675 1929758 1616897 1879250 1618409 1725100 1657499 1783381 A ?f138 ?f139 ?f140 ?f141 1657499 1783381 ?f135 ?f137 W ?f142 ?f143 ?f144 ?f145 1657499 1783381 ?f135 ?f137 Z N";
text_areas = L"?f48 ?f50 ?f49 ?f51";
glue_points = L"?f40 ?f41 ?f42 ?f43 ?f44 ?f45 ?f46 ?f47";
view_box = L"0 0 2165070 2165070";
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 / 2165070");
add(L"f11", L"?f6 / 2165070");
add(L"f12", L"1616897 - 1082535");
add(L"f13", L"1879250 - 1082535");
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"832838 - 1082535");
add(L"f20", L"101692 - 1082535");
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"1716572 - 1082535");
add(L"f27", L"1871457 - 1082535");
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"1618409 - 1082535");
add(L"f34", L"1725100 - 1082535");
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"845866 / ?f10");
add(L"f41", L"152866 / ?f11");
add(L"f42", L"1755675 / ?f10");
add(L"f43", L"1929758 / ?f11");
add(L"f44", L"1616897 / ?f10");
add(L"f45", L"1879250 / ?f11");
add(L"f46", L"1618409 / ?f10");
add(L"f47", L"1725100 / ?f11");
add(L"f48", L"366853 / ?f10");
add(L"f49", L"1798217 / ?f10");
add(L"f50", L"366853 / ?f11");
add(L"f51", L"1798217 / ?f11");
add(L"f52", L"21550000 - 9329679");
add(L"f53", L"if(?f52, 9329679, 21550000)");
add(L"f54", L"-21550000 - ?f53");
add(L"f55", L"if(?f54, -21550000, ?f53)");
add(L"f56", L"15343043 + ?f55");
add(L"f57", L"15343043 + ?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 * 1012127");
add(L"f63", L"sin(?f59)");
add(L"f64", L"0 - ?f63");
add(L"f65", L"?f64 * 1012127");
add(L"f66", L"sqrt(?f62 * ?f62 + ?f65 * ?f65 + 0 * 0)");
add(L"f67", L"1012127 * 1012127 / ?f66");
add(L"f68", L"?f64 * ?f67");
add(L"f69", L"832838 - ?f68");
add(L"f70", L"?f61 * ?f67");
add(L"f71", L"101692 - ?f70");
add(L"f72", L"?f69 - 1012127");
add(L"f73", L"?f71 - 1012127");
add(L"f74", L"?f69 + 1012127");
add(L"f75", L"?f71 + 1012127");
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 * 1012127");
add(L"f82", L"sin(?f78)");
add(L"f83", L"0 - ?f82");
add(L"f84", L"?f83 * 1012127");
add(L"f85", L"sqrt(?f81 * ?f81 + ?f84 * ?f84 + 0 * 0)");
add(L"f86", L"1012127 * 1012127 / ?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, 832838, ?f72)");
add(L"f92", L"if(?f55, 101692, ?f73)");
add(L"f93", L"if(?f55, 832838, ?f74)");
add(L"f94", L"if(?f55, 101692, ?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 - -9295060");
add(L"f100", L"if(?f99, -9295060, 21550000)");
add(L"f101", L"-21550000 - ?f100");
add(L"f102", L"if(?f101, -21550000, ?f100)");
add(L"f103", L"3038103 + ?f102");
add(L"f104", L"3038103 + ?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 * 906515");
add(L"f110", L"sin(?f106)");
add(L"f111", L"0 - ?f110");
add(L"f112", L"?f111 * 906515");
add(L"f113", L"sqrt(?f109 * ?f109 + ?f112 * ?f112 + 0 * 0)");
add(L"f114", L"906515 * 906515 / ?f113");
add(L"f115", L"?f111 * ?f114");
add(L"f116", L"1657499 - ?f115");
add(L"f117", L"?f108 * ?f114");
add(L"f118", L"1783381 - ?f117");
add(L"f119", L"?f116 - 906515");
add(L"f120", L"?f118 - 906515");
add(L"f121", L"?f116 + 906515");
add(L"f122", L"?f118 + 906515");
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 * 906515");
add(L"f129", L"sin(?f125)");
add(L"f130", L"0 - ?f129");
add(L"f131", L"?f130 * 906515");
add(L"f132", L"sqrt(?f128 * ?f128 + ?f131 * ?f131 + 0 * 0)");
add(L"f133", L"906515 * 906515 / ?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, 1657499, ?f119)");
add(L"f139", L"if(?f102, 1783381, ?f120)");
add(L"f140", L"if(?f102, 1657499, ?f121)");
add(L"f141", L"if(?f102, 1783381, ?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)");
/////////////////////////////////////////////////////////
}
};
}

View File

@ -37,9 +37,9 @@
// shapetypeDiagStripe,
// shapetypeDodecagon,
//+ shapetypeDoubleWave,
// shapetypeFunnel,
// shapetypeGear6,
// shapetypeGear9,
//+ shapetypeFunnel,
//+ shapetypeGear6,
//+ shapetypeGear9,
// shapetypeHalfFrame,
// shapetypeHeptagon,
// shapetypeNonIsoscelesTrapezoid,
@ -323,4 +323,439 @@ public:
/////////////////////////////////////////////////////////
}
};
class oox_shape_Gear6 : public oox_shape
{
public:
oox_shape_Gear6()
{
odf_type_name =L"ooxml-gear6";
enhanced_path = L"M 541172 212681 L 631103 156982 683808 209688 628111 299619 C 649564 336513 660802 378456 660671 421135 L 753871 471167 734580 543164 628849 539893 C 607623 576919 576919 607624 539893 628849 L 543164 734581 471167 753872 421134 660670 C 378456 660802 336513 649563 299618 628110 L 209688 683809 156983 631103 212680 541172 C 191227 504278 179989 462335 180120 419656 L 86920 369624 106211 297627 211942 300898 C 233168 263872 263872 233167 300898 211942 L 297627 106210 369624 86919 419657 180121 C 462335 179989 504278 191228 541173 212681 L 541172 212681 Z N";
text_areas = L"?f68 ?f70 ?f69 ?f71";
glue_points = L"?f38 ?f39 ?f40 ?f41 ?f42 ?f43 ?f44 ?f45 ?f44 ?f46 ?f42 ?f47 ?f40 ?f48 ?f38 ?f49 ?f50 ?f51 ?f52 ?f53 ?f54 ?f53 ?f55 ?f51 ?f56 ?f49 ?f57 ?f48 ?f58 ?f47 ?f59 ?f60 ?f59 ?f61 ?f58 ?f43 ?f57 ?f41 ?f62 ?f39 ?f63 ?f64 ?f54 ?f65 ?f52 ?f65 ?f66 ?f64 ?f67 ?f39 ?f38 ?f39";
view_box = L"0 0 840791 840791";
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 / 840791");
add(L"f7", L"?f4 / 840791");
add(L"f8", L"629119 * ?f5 / 840791");
add(L"f9", L"212951 * ?f4 / 840791");
add(L"f10", L"753164 * ?f5 / 840791");
add(L"f11", L"175566 * ?f4 / 840791");
add(L"f12", L"798808 * ?f5 / 840791");
add(L"f13", L"254624 * ?f4 / 840791");
add(L"f14", L"704410 * ?f5 / 840791");
add(L"f15", L"343358 * ?f4 / 840791");
add(L"f16", L"497434 * ?f4 / 840791");
add(L"f17", L"586167 * ?f4 / 840791");
add(L"f18", L"665225 * ?f4 / 840791");
add(L"f19", L"627840 * ?f4 / 840791");
add(L"f20", L"495685 * ?f5 / 840791");
add(L"f21", L"704878 * ?f4 / 840791");
add(L"f22", L"466040 * ?f5 / 840791");
add(L"f23", L"830997 * ?f4 / 840791");
add(L"f24", L"374751 * ?f5 / 840791");
add(L"f25", L"345105 * ?f5 / 840791");
add(L"f26", L"211671 * ?f5 / 840791");
add(L"f27", L"87627 * ?f5 / 840791");
add(L"f28", L"41983 * ?f5 / 840791");
add(L"f29", L"136381 * ?f5 / 840791");
add(L"f30", L"497433 * ?f4 / 840791");
add(L"f31", L"343357 * ?f4 / 840791");
add(L"f32", L"211672 * ?f5 / 840791");
add(L"f33", L"345106 * ?f5 / 840791");
add(L"f34", L"135913 * ?f4 / 840791");
add(L"f35", L"9794 * ?f4 / 840791");
add(L"f36", L"495686 * ?f5 / 840791");
add(L"f37", L"629120 * ?f5 / 840791");
add(L"f38", L"?f8 / ?f6");
add(L"f39", L"?f9 / ?f7");
add(L"f40", L"?f10 / ?f6");
add(L"f41", L"?f11 / ?f7");
add(L"f42", L"?f12 / ?f6");
add(L"f43", L"?f13 / ?f7");
add(L"f44", L"?f14 / ?f6");
add(L"f45", L"?f15 / ?f7");
add(L"f46", L"?f16 / ?f7");
add(L"f47", L"?f17 / ?f7");
add(L"f48", L"?f18 / ?f7");
add(L"f49", L"?f19 / ?f7");
add(L"f50", L"?f20 / ?f6");
add(L"f51", L"?f21 / ?f7");
add(L"f52", L"?f22 / ?f6");
add(L"f53", L"?f23 / ?f7");
add(L"f54", L"?f24 / ?f6");
add(L"f55", L"?f25 / ?f6");
add(L"f56", L"?f26 / ?f6");
add(L"f57", L"?f27 / ?f6");
add(L"f58", L"?f28 / ?f6");
add(L"f59", L"?f29 / ?f6");
add(L"f60", L"?f30 / ?f7");
add(L"f61", L"?f31 / ?f7");
add(L"f62", L"?f32 / ?f6");
add(L"f63", L"?f33 / ?f6");
add(L"f64", L"?f34 / ?f7");
add(L"f65", L"?f35 / ?f7");
add(L"f66", L"?f36 / ?f6");
add(L"f67", L"?f37 / ?f6");
add(L"f68", L"?f0 / ?f6");
add(L"f69", L"?f1 / ?f6");
add(L"f70", L"?f2 / ?f7");
add(L"f71", L"?f3 / ?f7");
/////////////////////////////////////////////////////////
}
};
class oox_shape_Gear9 : public oox_shape
{
public:
oox_shape_Gear9()
{
odf_type_name =L"ooxml-gear9";
enhanced_path = L"M 837517 188126 L 929297 111109 1002618 172633 942709 276392 C 985308 324313 1017696 380410 1037897 441262 L 1157709 441259 1174330 535519 1061742 576495 C 1063572 640586 1052324 704378 1028684 763978 L 1120467 840989 1072610 923880 960025 882899 C 920230 933172 870608 974809 814189 1005270 L 834997 1123262 745055 1155998 685151 1052236 C 622351 1065167 557575 1065167 494775 1052236 L 434872 1155998 344930 1123262 365739 1005270 C 309319 974809 259698 933172 219903 882899 L 107317 923880 59460 840989 151243 763978 C 127603 704378 116355 640586 118185 576495 L 5597 535519 22218 441259 142030 441262 C 162231 380410 194619 324312 237218 276392 L 177309 172633 250630 111109 342410 188126 C 397000 154496 457869 132341 521305 123014 L 542106 5021 637821 5021 658623 123013 C 722058 132340 782928 154495 837518 188125 L 837517 188126 Z N";
text_areas = L"?f122 ?f124 ?f123 ?f125";
glue_points = L"?f65 ?f66 ?f67 ?f68 ?f69 ?f70 ?f71 ?f72 ?f73 ?f74 ?f75 ?f76 ?f77 ?f78 ?f79 ?f80 ?f81 ?f82 ?f83 ?f84 ?f85 ?f86 ?f87 ?f88 ?f89 ?f90 ?f91 ?f92 ?f93 ?f94 ?f95 ?f96 ?f97 ?f96 ?f98 ?f94 ?f99 ?f92 ?f100 ?f90 ?f101 ?f88 ?f102 ?f86 ?f103 ?f84 ?f104 ?f82 ?f105 ?f80 ?f106 ?f78 ?f107 ?f76 ?f108 ?f74 ?f109 ?f72 ?f110 ?f70 ?f111 ?f68 ?f112 ?f66 ?f113 ?f114 ?f115 ?f116 ?f117 ?f116 ?f118 ?f119 ?f120 ?f121 ?f65 ?f66";
view_box = L"0 0 1179927 1179927";
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 / 1179927");
add(L"f7", L"?f4 / 1179927");
add(L"f8", L"837517 * ?f5 / 1179927");
add(L"f9", L"188126 * ?f4 / 1179927");
add(L"f10", L"929297 * ?f5 / 1179927");
add(L"f11", L"111109 * ?f4 / 1179927");
add(L"f12", L"1002618 * ?f5 / 1179927");
add(L"f13", L"172633 * ?f4 / 1179927");
add(L"f14", L"942709 * ?f5 / 1179927");
add(L"f15", L"276392 * ?f4 / 1179927");
add(L"f16", L"1037897 * ?f5 / 1179927");
add(L"f17", L"441262 * ?f4 / 1179927");
add(L"f18", L"1157709 * ?f5 / 1179927");
add(L"f19", L"441259 * ?f4 / 1179927");
add(L"f20", L"1174330 * ?f5 / 1179927");
add(L"f21", L"535519 * ?f4 / 1179927");
add(L"f22", L"1061742 * ?f5 / 1179927");
add(L"f23", L"576495 * ?f4 / 1179927");
add(L"f24", L"1028684 * ?f5 / 1179927");
add(L"f25", L"763978 * ?f4 / 1179927");
add(L"f26", L"1120467 * ?f5 / 1179927");
add(L"f27", L"840989 * ?f4 / 1179927");
add(L"f28", L"1072610 * ?f5 / 1179927");
add(L"f29", L"923880 * ?f4 / 1179927");
add(L"f30", L"960025 * ?f5 / 1179927");
add(L"f31", L"882899 * ?f4 / 1179927");
add(L"f32", L"814189 * ?f5 / 1179927");
add(L"f33", L"1005270 * ?f4 / 1179927");
add(L"f34", L"834997 * ?f5 / 1179927");
add(L"f35", L"1123262 * ?f4 / 1179927");
add(L"f36", L"745055 * ?f5 / 1179927");
add(L"f37", L"1155998 * ?f4 / 1179927");
add(L"f38", L"685151 * ?f5 / 1179927");
add(L"f39", L"1052236 * ?f4 / 1179927");
add(L"f40", L"494775 * ?f5 / 1179927");
add(L"f41", L"434872 * ?f5 / 1179927");
add(L"f42", L"344930 * ?f5 / 1179927");
add(L"f43", L"365739 * ?f5 / 1179927");
add(L"f44", L"219903 * ?f5 / 1179927");
add(L"f45", L"107317 * ?f5 / 1179927");
add(L"f46", L"59460 * ?f5 / 1179927");
add(L"f47", L"151243 * ?f5 / 1179927");
add(L"f48", L"118185 * ?f5 / 1179927");
add(L"f49", L"5597 * ?f5 / 1179927");
add(L"f50", L"22218 * ?f5 / 1179927");
add(L"f51", L"142030 * ?f5 / 1179927");
add(L"f52", L"237218 * ?f5 / 1179927");
add(L"f53", L"177309 * ?f5 / 1179927");
add(L"f54", L"250630 * ?f5 / 1179927");
add(L"f55", L"342410 * ?f5 / 1179927");
add(L"f56", L"521305 * ?f5 / 1179927");
add(L"f57", L"123014 * ?f4 / 1179927");
add(L"f58", L"542106 * ?f5 / 1179927");
add(L"f59", L"5021 * ?f4 / 1179927");
add(L"f60", L"637821 * ?f5 / 1179927");
add(L"f61", L"658623 * ?f5 / 1179927");
add(L"f62", L"123013 * ?f4 / 1179927");
add(L"f63", L"837518 * ?f5 / 1179927");
add(L"f64", L"188125 * ?f4 / 1179927");
add(L"f65", L"?f8 / ?f6");
add(L"f66", L"?f9 / ?f7");
add(L"f67", L"?f10 / ?f6");
add(L"f68", L"?f11 / ?f7");
add(L"f69", L"?f12 / ?f6");
add(L"f70", L"?f13 / ?f7");
add(L"f71", L"?f14 / ?f6");
add(L"f72", L"?f15 / ?f7");
add(L"f73", L"?f16 / ?f6");
add(L"f74", L"?f17 / ?f7");
add(L"f75", L"?f18 / ?f6");
add(L"f76", L"?f19 / ?f7");
add(L"f77", L"?f20 / ?f6");
add(L"f78", L"?f21 / ?f7");
add(L"f79", L"?f22 / ?f6");
add(L"f80", L"?f23 / ?f7");
add(L"f81", L"?f24 / ?f6");
add(L"f82", L"?f25 / ?f7");
add(L"f83", L"?f26 / ?f6");
add(L"f84", L"?f27 / ?f7");
add(L"f85", L"?f28 / ?f6");
add(L"f86", L"?f29 / ?f7");
add(L"f87", L"?f30 / ?f6");
add(L"f88", L"?f31 / ?f7");
add(L"f89", L"?f32 / ?f6");
add(L"f90", L"?f33 / ?f7");
add(L"f91", L"?f34 / ?f6");
add(L"f92", L"?f35 / ?f7");
add(L"f93", L"?f36 / ?f6");
add(L"f94", L"?f37 / ?f7");
add(L"f95", L"?f38 / ?f6");
add(L"f96", L"?f39 / ?f7");
add(L"f97", L"?f40 / ?f6");
add(L"f98", L"?f41 / ?f6");
add(L"f99", L"?f42 / ?f6");
add(L"f100", L"?f43 / ?f6");
add(L"f101", L"?f44 / ?f6");
add(L"f102", L"?f45 / ?f6");
add(L"f103", L"?f46 / ?f6");
add(L"f104", L"?f47 / ?f6");
add(L"f105", L"?f48 / ?f6");
add(L"f106", L"?f49 / ?f6");
add(L"f107", L"?f50 / ?f6");
add(L"f108", L"?f51 / ?f6");
add(L"f109", L"?f52 / ?f6");
add(L"f110", L"?f53 / ?f6");
add(L"f111", L"?f54 / ?f6");
add(L"f112", L"?f55 / ?f6");
add(L"f113", L"?f56 / ?f6");
add(L"f114", L"?f57 / ?f7");
add(L"f115", L"?f58 / ?f6");
add(L"f116", L"?f59 / ?f7");
add(L"f117", L"?f60 / ?f6");
add(L"f118", L"?f61 / ?f6");
add(L"f119", L"?f62 / ?f7");
add(L"f120", L"?f63 / ?f6");
add(L"f121", L"?f64 / ?f7");
add(L"f122", L"?f0 / ?f6");
add(L"f123", L"?f1 / ?f6");
add(L"f124", L"?f2 / ?f7");
add(L"f125", L"?f3 / ?f7");
/////////////////////////////////////////////////////////
}
};
class oox_shape_Funnel : public oox_shape
{
public:
oox_shape_Funnel()
{
odf_type_name =L"ooxml-funnel";
enhanced_path = L"M ?f50 ?f51 A ?f99 ?f100 ?f101 ?f102 ?f50 ?f51 ?f96 ?f98 W ?f103 ?f104 ?f105 ?f106 ?f50 ?f51 ?f96 ?f98 L ?f65 ?f67 A ?f137 ?f138 ?f139 ?f140 ?f65 ?f67 ?f134 ?f136 W ?f141 ?f142 ?f143 ?f144 ?f65 ?f67 ?f134 ?f136 Z M ?f68 ?f7 A ?f184 ?f185 ?f186 ?f187 ?f68 ?f7 ?f181 ?f183 W ?f188 ?f189 ?f190 ?f191 ?f68 ?f7 ?f181 ?f183 Z N";
text_areas = L"?f2 ?f4 ?f3 ?f5";
view_box = L"0 0 21600 21600";
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 / 4");
add(L"f8", L"?f3 - ?f2");
add(L"f9", L"?f8 / 2");
add(L"f10", L"?f2 + ?f9");
add(L"f11", L"min(?f8, ?f6)");
add(L"f12", L"5419351 / 1725033");
add(L"f13", L"?f11 / 20");
add(L"f14", L"?f9 - ?f13");
add(L"f15", L"?f7 - ?f13");
add(L"f16", L"480000 + ?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 * ?f9");
add(L"f22", L"cos(?f18)");
add(L"f23", L"0 - ?f22");
add(L"f24", L"?f23 * ?f7");
add(L"f25", L"0 - ?f21");
add(L"f26", L"0 - ?f24");
add(L"f27", L"atan2(?f25, ?f26)");
add(L"f28", L"0 - ?f27");
add(L"f29", L"?f28 * ?f0 / ?f12");
add(L"f30", L"?f29 - ?f1");
add(L"f31", L"?f30 * 2");
add(L"f32", L"?f0 - ?f30");
add(L"f33", L"?f0 + ?f31");
add(L"f34", L"?f0 - ?f31");
add(L"f35", L"?f9 / 4");
add(L"f36", L"?f7 / 4");
add(L"f37", L"?f32 + ?f1");
add(L"f38", L"?f37 * ?f12 / ?f0");
add(L"f39", L"0 - ?f38");
add(L"f40", L"sin(?f39)");
add(L"f41", L"0 - ?f40");
add(L"f42", L"?f41 * ?f7");
add(L"f43", L"cos(?f39)");
add(L"f44", L"0 - ?f43");
add(L"f45", L"?f44 * ?f9");
add(L"f46", L"sqrt(?f42 * ?f42 + ?f45 * ?f45 + 0 * 0)");
add(L"f47", L"?f9 * ?f7 / ?f46");
add(L"f48", L"?f41 * ?f47");
add(L"f49", L"?f44 * ?f47");
add(L"f50", L"?f10 + ?f48");
add(L"f51", L"?f7 + ?f49");
add(L"f52", L"?f30 + ?f1");
add(L"f53", L"?f52 * ?f12 / ?f0");
add(L"f54", L"0 - ?f53");
add(L"f55", L"sin(?f54)");
add(L"f56", L"0 - ?f55");
add(L"f57", L"?f56 * ?f36");
add(L"f58", L"cos(?f54)");
add(L"f59", L"0 - ?f58");
add(L"f60", L"?f59 * ?f35");
add(L"f61", L"sqrt(?f57 * ?f57 + ?f60 * ?f60 + 0 * 0)");
add(L"f62", L"?f35 * ?f36 / ?f61");
add(L"f63", L"?f56 * ?f62");
add(L"f64", L"?f59 * ?f62");
add(L"f65", L"?f10 + ?f63");
add(L"f66", L"?f5 - ?f36");
add(L"f67", L"?f66 + ?f64");
add(L"f68", L"?f9 - ?f14");
add(L"f69", L"21550000 - ?f33");
add(L"f70", L"if(?f69, ?f33, 21550000)");
add(L"f71", L"-21550000 - ?f70");
add(L"f72", L"if(?f71, -21550000, ?f70)");
add(L"f73", L"?f32 + ?f72");
add(L"f74", L"sqrt(?f45 * ?f45 + ?f42 * ?f42 + 0 * 0)");
add(L"f75", L"?f9 * ?f7 / ?f74");
add(L"f76", L"?f41 * ?f75");
add(L"f77", L"?f50 - ?f76");
add(L"f78", L"?f44 * ?f75");
add(L"f79", L"?f51 - ?f78");
add(L"f80", L"?f77 - ?f9");
add(L"f81", L"?f79 - ?f7");
add(L"f82", L"?f77 + ?f9");
add(L"f83", L"?f79 + ?f7");
add(L"f84", L"?f73 + ?f1");
add(L"f85", L"?f84 * ?f12 / ?f0");
add(L"f86", L"0 - ?f85");
add(L"f87", L"cos(?f86)");
add(L"f88", L"0 - ?f87");
add(L"f89", L"?f88 * ?f9");
add(L"f90", L"sin(?f86)");
add(L"f91", L"0 - ?f90");
add(L"f92", L"?f91 * ?f7");
add(L"f93", L"sqrt(?f89 * ?f89 + ?f92 * ?f92 + 0 * 0)");
add(L"f94", L"?f9 * ?f7 / ?f93");
add(L"f95", L"?f91 * ?f94");
add(L"f96", L"?f77 + ?f95");
add(L"f97", L"?f88 * ?f94");
add(L"f98", L"?f79 + ?f97");
add(L"f99", L"if(?f72, ?f50, ?f80)");
add(L"f100", L"if(?f72, ?f51, ?f81)");
add(L"f101", L"if(?f72, ?f50, ?f82)");
add(L"f102", L"if(?f72, ?f51, ?f83)");
add(L"f103", L"if(?f72, ?f80, ?f96)");
add(L"f104", L"if(?f72, ?f81, ?f98)");
add(L"f105", L"if(?f72, ?f82, ?f96)");
add(L"f106", L"if(?f72, ?f83, ?f98)");
add(L"f107", L"21550000 - ?f34");
add(L"f108", L"if(?f107, ?f34, 21550000)");
add(L"f109", L"-21550000 - ?f108");
add(L"f110", L"if(?f109, -21550000, ?f108)");
add(L"f111", L"?f30 + ?f110");
add(L"f112", L"sqrt(?f60 * ?f60 + ?f57 * ?f57 + 0 * 0)");
add(L"f113", L"?f35 * ?f36 / ?f112");
add(L"f114", L"?f56 * ?f113");
add(L"f115", L"?f65 - ?f114");
add(L"f116", L"?f59 * ?f113");
add(L"f117", L"?f67 - ?f116");
add(L"f118", L"?f115 - ?f35");
add(L"f119", L"?f117 - ?f36");
add(L"f120", L"?f115 + ?f35");
add(L"f121", L"?f117 + ?f36");
add(L"f122", L"?f111 + ?f1");
add(L"f123", L"?f122 * ?f12 / ?f0");
add(L"f124", L"0 - ?f123");
add(L"f125", L"cos(?f124)");
add(L"f126", L"0 - ?f125");
add(L"f127", L"?f126 * ?f35");
add(L"f128", L"sin(?f124)");
add(L"f129", L"0 - ?f128");
add(L"f130", L"?f129 * ?f36");
add(L"f131", L"sqrt(?f127 * ?f127 + ?f130 * ?f130 + 0 * 0)");
add(L"f132", L"?f35 * ?f36 / ?f131");
add(L"f133", L"?f129 * ?f132");
add(L"f134", L"?f115 + ?f133");
add(L"f135", L"?f126 * ?f132");
add(L"f136", L"?f117 + ?f135");
add(L"f137", L"if(?f110, ?f65, ?f118)");
add(L"f138", L"if(?f110, ?f67, ?f119)");
add(L"f139", L"if(?f110, ?f65, ?f120)");
add(L"f140", L"if(?f110, ?f67, ?f121)");
add(L"f141", L"if(?f110, ?f118, ?f134)");
add(L"f142", L"if(?f110, ?f119, ?f136)");
add(L"f143", L"if(?f110, ?f120, ?f134)");
add(L"f144", L"if(?f110, ?f121, ?f136)");
add(L"f145", L"21550000 - -21600000");
add(L"f146", L"if(?f145, -21600000, 21550000)");
add(L"f147", L"-21550000 - ?f146");
add(L"f148", L"if(?f147, -21550000, ?f146)");
add(L"f149", L"?f0 + ?f148");
add(L"f150", L"?f0 + ?f1");
add(L"f151", L"?f150 * ?f12 / ?f0");
add(L"f152", L"0 - ?f151");
add(L"f153", L"cos(?f152)");
add(L"f154", L"0 - ?f153");
add(L"f155", L"?f154 * ?f14");
add(L"f156", L"sin(?f152)");
add(L"f157", L"0 - ?f156");
add(L"f158", L"?f157 * ?f15");
add(L"f159", L"sqrt(?f155 * ?f155 + ?f158 * ?f158 + 0 * 0)");
add(L"f160", L"?f14 * ?f15 / ?f159");
add(L"f161", L"?f157 * ?f160");
add(L"f162", L"?f68 - ?f161");
add(L"f163", L"?f154 * ?f160");
add(L"f164", L"?f7 - ?f163");
add(L"f165", L"?f162 - ?f14");
add(L"f166", L"?f164 - ?f15");
add(L"f167", L"?f162 + ?f14");
add(L"f168", L"?f164 + ?f15");
add(L"f169", L"?f149 + ?f1");
add(L"f170", L"?f169 * ?f12 / ?f0");
add(L"f171", L"0 - ?f170");
add(L"f172", L"cos(?f171)");
add(L"f173", L"0 - ?f172");
add(L"f174", L"?f173 * ?f14");
add(L"f175", L"sin(?f171)");
add(L"f176", L"0 - ?f175");
add(L"f177", L"?f176 * ?f15");
add(L"f178", L"sqrt(?f174 * ?f174 + ?f177 * ?f177 + 0 * 0)");
add(L"f179", L"?f14 * ?f15 / ?f178");
add(L"f180", L"?f176 * ?f179");
add(L"f181", L"?f162 + ?f180");
add(L"f182", L"?f173 * ?f179");
add(L"f183", L"?f164 + ?f182");
add(L"f184", L"if(?f148, ?f68, ?f165)");
add(L"f185", L"if(?f148, ?f7, ?f166)");
add(L"f186", L"if(?f148, ?f68, ?f167)");
add(L"f187", L"if(?f148, ?f7, ?f168)");
add(L"f188", L"if(?f148, ?f165, ?f181)");
add(L"f189", L"if(?f148, ?f166, ?f183)");
add(L"f190", L"if(?f148, ?f167, ?f181)");
add(L"f191", L"if(?f148, ?f168, ?f183)");
/////////////////////////////////////////////////////////
}
};
}

View File

@ -344,7 +344,7 @@ void odf_chart_context::start_chart(office_element_ptr & root)
std::wstring style_name;
odf_element_state state={chart_elm, style_name, style_elm, level};
odf_chart_level_state level_state = {NULL,NULL,NULL,NULL,chart_elm};
odf_chart_level_state level_state = {NULL, NULL, NULL, NULL, chart_elm};
style* style_ = dynamic_cast<style*>(style_elm.get());
if (style_)
@ -366,18 +366,18 @@ void odf_chart_context::start_chart(office_element_ptr & root)
impl_->current_chart_state_.elements_.push_back(state);
}
void odf_chart_context::set_chart_size(double width_pt, double height_pt)
void odf_chart_context::set_chart_size(_CP_OPT(double) width_pt, _CP_OPT(double) height_pt)
{
if (width_pt <0.01 || height_pt < 0.01)return;
if (!width_pt && !height_pt) return;
impl_->current_chart_state_.chart_height_pt = height_pt;
impl_->current_chart_state_.chart_width_pt = width_pt;
impl_->current_chart_state_.chart_height_pt = *height_pt;
impl_->current_chart_state_.chart_width_pt = *width_pt;
chart_chart *chart = impl_->get_current_chart();
if (!chart)return;
chart->chart_chart_attlist_.common_draw_size_attlist_.svg_width_ = length(length(width_pt,length::pt).get_value_unit(length::cm),length::cm);
chart->chart_chart_attlist_.common_draw_size_attlist_.svg_height_ = length(length(height_pt,length::pt).get_value_unit(length::cm),length::cm);
chart->chart_chart_attlist_.common_draw_size_attlist_.svg_width_ = length(length(*width_pt,length::pt).get_value_unit(length::cm), length::cm);
chart->chart_chart_attlist_.common_draw_size_attlist_.svg_height_ = length(length(*height_pt,length::pt).get_value_unit(length::cm), length::cm);
}
void odf_chart_context::set_chart_type(std::wstring type)
{

View File

@ -58,19 +58,19 @@ public:
odf_drawing_context *drawing_context();
odf_text_context *text_context();
void start_chart(office_element_ptr & root);
void set_chart_type(std::wstring type);
void set_chart_3D(bool Val);
void set_chart_size(double width_pt, double height_pt);
void set_chart_colored(bool val);
void set_chart_grouping(int type);
void set_chart_scatter_type(int type);
void set_chart_bar_grouping(int type);
void start_chart (office_element_ptr & root);
void set_chart_type (std::wstring type);
void set_chart_3D (bool Val);
void set_chart_size (_CP_OPT(double) width_pt, _CP_OPT(double) height_pt);
void set_chart_colored (bool val);
void set_chart_grouping (int type);
void set_chart_scatter_type (int type);
void set_chart_bar_grouping (int type);
void set_chart_bar_direction(int type);
void set_chart_bar_type(int type);
void set_chart_bar_type (int type);
void set_chart_bar_gap_width(std::wstring val);
void set_chart_bar_overlap(std::wstring val);
void set_chart_radar_type(int type);
void set_chart_bar_overlap (std::wstring val);
void set_chart_radar_type (int type);
void set_chart_stock_candle_stick(bool val);
void set_marker_size(int size);
@ -81,26 +81,26 @@ public:
void start_group_series();
void add_axis_group_series(unsigned int id);
void start_series(std::wstring type);
void set_series_value_formula(std::wstring oox_formula);
void set_series_label_formula(std::wstring oox_formula);
void set_category_axis_formula(std::wstring oox_formula,int type);
void start_data_point_series(int count);
void start_series (std::wstring type);
void set_series_value_formula (std::wstring oox_formula);
void set_series_label_formula (std::wstring oox_formula);
void set_category_axis_formula (std::wstring oox_formula,int type);
void start_data_point_series (int count);
long get_count_data_points_series();
void set_series_pie_explosion(int val);
void end_series();
void end_group_series();
void set_label_name(std::wstring name);
void set_label_delete(bool val);
void set_label_show_bubble_size(bool val);
void set_label_show_cat_name(bool val);
void set_label_show_leader_line(bool val);
void set_label_show_legend_key(bool val);
void set_label_show_percent(bool val);
void set_label_show_ser_name(bool val);
void set_label_show_values(bool val);
void set_label_name (std::wstring name);
void set_label_delete (bool val);
void set_label_show_bubble_size (bool val);
void set_label_show_cat_name (bool val);
void set_label_show_leader_line (bool val);
void set_label_show_legend_key (bool val);
void set_label_show_percent (bool val);
void set_label_show_ser_name( bool val);
void set_label_show_values (bool val);
void start_axis();
void set_axis_id(unsigned int id);

View File

@ -177,6 +177,8 @@ struct odf_drawing_state
svg_width_ = boost::none;
name_ = L"";
description_ = L"";
hidden_ = false;
z_order_ = -1;
rotateAngle = boost::none;
@ -201,9 +203,10 @@ struct odf_drawing_state
_CP_OPT(length) svg_height_;
_CP_OPT(length) svg_width_;
std::wstring name_;
int z_order_;
std::wstring name_;
std::wstring description_;
int z_order_;
bool hidden_;
_CP_OPT(double) rotateAngle;
@ -342,10 +345,12 @@ void odf_drawing_context::start_group()
if (group== NULL)return;
//если группа топовая - то данные если не записать - сотруться
if (impl_->current_drawing_state_.name_.length() > 0)
if (!impl_->current_drawing_state_.name_.empty())
group->common_draw_attlists_.shape_with_text_and_styles_.common_draw_shape_with_styles_attlist_.common_draw_name_attlist_.draw_name_ = impl_->current_drawing_state_.name_;
if (impl_->current_drawing_state_.z_order_ >= 0)
group->common_draw_attlists_.shape_with_text_and_styles_.common_draw_shape_with_styles_attlist_.common_draw_z_index_attlist_.draw_z_index_ = impl_->current_drawing_state_.z_order_;
if (!impl_->current_drawing_state_.name_.empty())
group->common_draw_attlists_.shape_with_text_and_styles_.common_draw_shape_with_styles_attlist_.common_draw_name_attlist_.draw_name_ = impl_->current_drawing_state_.name_;
impl_->current_drawing_state_.name_ = L"";
impl_->current_drawing_state_.z_order_ = -1;
@ -956,9 +961,9 @@ void odf_drawing_context::end_frame()
/////////////////////
void odf_drawing_context::start_element(office_element_ptr & elm, office_element_ptr style_elm)
{
int level = impl_->current_level_.size();
int level = (int)impl_->current_level_.size();
if (impl_->current_level_.size()>0)
if (impl_->current_level_.size() > 0)
impl_->current_level_.back()->add_child_element(elm);
std::wstring style_name;
@ -968,13 +973,13 @@ void odf_drawing_context::start_element(office_element_ptr & elm, office_element
style_name = style_->style_name_;
impl_->current_graphic_properties = style_->style_content_.get_style_graphic_properties();
if (impl_->current_drawing_state_.name_.length() < 1)
if (impl_->current_drawing_state_.name_.empty())
{
impl_->current_drawing_state_.name_ = std::wstring(L"Object_") + style_name;
}
}
odf_element_state state={elm, style_name, style_elm, level};
odf_element_state state = {elm, style_name, style_elm, level};
impl_->current_drawing_state_.elements_.push_back(state);
impl_->current_level_.push_back(elm);
@ -1009,10 +1014,18 @@ void odf_drawing_context::end_line_properties()
// impl_->current_drawing_part_ = Unknown;
//}
////////////////////////////////////////////////////////////////////
void odf_drawing_context::set_name(std::wstring name)
void odf_drawing_context::set_name(const std::wstring & name)
{
impl_->current_drawing_state_.name_ = name;
}
void odf_drawing_context::set_description (const std::wstring & description)
{
impl_->current_drawing_state_.description_ = description;
}
void odf_drawing_context::set_hidden (bool bVal)
{
impl_->current_drawing_state_.hidden_ = bVal;
}
void odf_drawing_context::set_opacity(double percent_)
{
if (!impl_->current_graphic_properties)return;
@ -1125,7 +1138,7 @@ void odf_drawing_context::set_path(std::wstring path_string)
//boost::replace_all(path_string, L",", L"0"); // нужен разбор
//impl_->current_drawing_state_.path_ = path_string;
}
void odf_drawing_context::add_path_element(std::wstring command, std::wstring & strE)
void odf_drawing_context::add_path_element(std::wstring command, const std::wstring & strE)
{
if (command != impl_->current_drawing_state_.path_last_command_)
{
@ -1500,7 +1513,19 @@ void odf_drawing_context::set_position_line(_CP_OPT(double) & x_pt, _CP_OPT(doub
if (y2_pt && !line->draw_line_attlist_.svg_y2_) line->draw_line_attlist_.svg_y2_ = length(length(*y2_pt,length::pt).get_value_unit(length::cm),length::cm);
}
void odf_drawing_context::get_position(_CP_OPT(double) & x_pt, _CP_OPT(double) & y_pt)
{
if (impl_->current_drawing_state_.svg_x_ && impl_->current_drawing_state_.svg_y_)
{
x_pt = impl_->current_drawing_state_.svg_x_->get_value_unit(length::pt);
y_pt = impl_->current_drawing_state_.svg_y_->get_value_unit(length::pt);
}
else if (impl_->anchor_settings_.svg_x_ && impl_->anchor_settings_.svg_y_)
{
x_pt = impl_->anchor_settings_.svg_x_->get_value_unit(length::pt);
y_pt = impl_->anchor_settings_.svg_y_->get_value_unit(length::pt);
}
}
void odf_drawing_context::set_position(_CP_OPT(double) & x_pt, _CP_OPT(double) & y_pt)
{
if (x_pt)
@ -1516,7 +1541,7 @@ void odf_drawing_context::set_position(_CP_OPT(double) & x_pt, _CP_OPT(double) &
}
if (!impl_->current_drawing_state_.svg_x_ || impl_->current_drawing_state_.in_group)
{
impl_->current_drawing_state_.svg_x_ = length(length(x , length::pt).get_value_unit(length::cm),length::cm);
impl_->current_drawing_state_.svg_x_ = length(length(x , length::pt).get_value_unit(length::cm), length::cm);
}
}
@ -1538,7 +1563,7 @@ void odf_drawing_context::set_position(_CP_OPT(double) & x_pt, _CP_OPT(double) &
}
}
}
void odf_drawing_context::get_size( double & width_pt, double & height_pt)
void odf_drawing_context::get_size( _CP_OPT(double) & width_pt, _CP_OPT(double) & height_pt)
{
if (impl_->current_drawing_state_.svg_width_ && impl_->current_drawing_state_.svg_height_)
{
@ -1550,7 +1575,6 @@ void odf_drawing_context::get_size( double & width_pt, double & height_pt)
width_pt = impl_->anchor_settings_.svg_width_->get_value_unit(length::pt);
height_pt = impl_->anchor_settings_.svg_height_->get_value_unit(length::pt);
}
}
void odf_drawing_context::set_size( _CP_OPT(double) & width_pt, _CP_OPT(double) & height_pt)
{
@ -1840,14 +1864,14 @@ void odf_drawing_context::set_textarea_writing_mode(int mode)
}
void odf_drawing_context::set_textarea_padding(double left,double top, double right,double bottom)//in cm
void odf_drawing_context::set_textarea_padding(_CP_OPT(double) & left, _CP_OPT(double) & top, _CP_OPT(double) & right, _CP_OPT(double) & bottom)//in cm
{
if (!impl_->current_graphic_properties)return;
impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_left_ = length(left, length::cm);
impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_top_ = length(top, length::cm);
impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_right_ = length(right, length::cm);
impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_bottom_ = length(bottom,length::cm);
if (left) impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_left_ = length(*left, length::cm);
if (top) impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_top_ = length(*top, length::cm);
if (right) impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_right_ = length(*right,length::cm);
if (bottom) impl_->current_graphic_properties->content().common_padding_attlist_.fo_padding_bottom_ = length(*bottom,length::cm);
}

View File

@ -142,7 +142,7 @@ public:
bool is_exist_content();
//////////////////////////////////////////////////////////////////////////////////////
void set_path (std::wstring path_string);
void add_path_element (std::wstring command, std::wstring & elm);
void add_path_element (std::wstring command, const std::wstring & elm);
void add_modifier (std::wstring modifier);
void set_viewBox (double W, double H);
@ -151,14 +151,17 @@ public:
///////////////////////////////////////////////////////////////////////////////////////
void set_size ( _CP_OPT(double) & width_pt, _CP_OPT(double) & height_pt);
void get_position (_CP_OPT(double) & x_pt, _CP_OPT(double) & y_pt);
void set_position (_CP_OPT(double) & x_pt, _CP_OPT(double) & y_pt);
void set_position_line (_CP_OPT(double) & x_pt, _CP_OPT(double) & y_pt, _CP_OPT(double) & x1_pt, _CP_OPT(double) & y1_pt);
void get_size ( double & width_pt, double & height_pt);
void get_size ( _CP_OPT(double) & width_pt, _CP_OPT(double) & height_pt);
void set_size ( _CP_OPT(double) & width_pt, _CP_OPT(double) & height_pt);
void set_name (std::wstring name);
void set_name (const std::wstring & name);
void set_description (const std::wstring & descr);
void set_hidden (bool bVal);
void set_z_order (int id);
void set_flip_H (bool bVal);
@ -191,7 +194,7 @@ public:
void set_text (odf_text_context* text_context);
void set_textarea_vertical_align(int align);
void set_textarea_padding (double left,double top,double right,double bottom);//in cm
void set_textarea_padding (_CP_OPT(double) & left, _CP_OPT(double) & top, _CP_OPT(double) & right, _CP_OPT(double) & bottom);//in cm
void set_textarea_writing_mode (int mode);
void set_textarea_wrap (bool val);
void set_textarea_fontcolor (std::wstring hexColor);

View File

@ -54,26 +54,31 @@ oox_shape_ptr oox_shape::create(int ooxPrstGeomType)
{
switch (ooxPrstGeomType)
{
case SimpleTypes::shapetypeMathMultiply: return boost::make_shared<oox_shape_mathMultiply>();
case SimpleTypes::shapetypeSun: return boost::make_shared<oox_shape_sun>();
case SimpleTypes::shapetypeRound1Rect: return boost::make_shared<oox_shape_round1Rect>();
case SimpleTypes::shapetypeRound2DiagRect: return boost::make_shared<oox_shape_round2DiagRect>();
case SimpleTypes::shapetypeRound2SameRect: return boost::make_shared<oox_shape_round2SameRect>();
case SimpleTypes::shapetypeSnip1Rect: return boost::make_shared<oox_shape_snip1Rect>();
case SimpleTypes::shapetypeSnip2DiagRect: return boost::make_shared<oox_shape_snip2DiagRect>();
case SimpleTypes::shapetypeSnip2SameRect: return boost::make_shared<oox_shape_snip2SameRect>();
case SimpleTypes::shapetypeSnipRoundRect: return boost::make_shared<oox_shape_snipRoundRect>();
case SimpleTypes::shapetypeStar6: return boost::make_shared<oox_shape_star6>();
case SimpleTypes::shapetypeStar7: return boost::make_shared<oox_shape_star7>();
case SimpleTypes::shapetypeStar10: return boost::make_shared<oox_shape_star10>();
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::shapetypeCurvedLeftArrow: return boost::make_shared<oox_shape_curvedLeftArrow>();
case SimpleTypes::shapetypeCurvedDownArrow: return boost::make_shared<oox_shape_curvedDownArrow>();
case SimpleTypes::shapetypeMathMultiply: return boost::make_shared<oox_shape_mathMultiply>();
case SimpleTypes::shapetypeSun: return boost::make_shared<oox_shape_sun>();
case SimpleTypes::shapetypeRound1Rect: return boost::make_shared<oox_shape_round1Rect>();
case SimpleTypes::shapetypeRound2DiagRect: return boost::make_shared<oox_shape_round2DiagRect>();
case SimpleTypes::shapetypeRound2SameRect: return boost::make_shared<oox_shape_round2SameRect>();
case SimpleTypes::shapetypeSnip1Rect: return boost::make_shared<oox_shape_snip1Rect>();
case SimpleTypes::shapetypeSnip2DiagRect: return boost::make_shared<oox_shape_snip2DiagRect>();
case SimpleTypes::shapetypeSnip2SameRect: return boost::make_shared<oox_shape_snip2SameRect>();
case SimpleTypes::shapetypeSnipRoundRect: return boost::make_shared<oox_shape_snipRoundRect>();
case SimpleTypes::shapetypeStar6: return boost::make_shared<oox_shape_star6>();
case SimpleTypes::shapetypeStar7: return boost::make_shared<oox_shape_star7>();
case SimpleTypes::shapetypeStar10: return boost::make_shared<oox_shape_star10>();
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::shapetypeFunnel: return boost::make_shared<oox_shape_Funnel>();
case SimpleTypes::shapetypeGear6: return boost::make_shared<oox_shape_Gear6>();
case SimpleTypes::shapetypeGear9: return boost::make_shared<oox_shape_Gear9>();
case SimpleTypes::shapetypeCircularArrow: return boost::make_shared<oox_shape_CircularArrow>();
case SimpleTypes::shapetypeCurvedLeftArrow: return boost::make_shared<oox_shape_curvedLeftArrow>();
case SimpleTypes::shapetypeCurvedDownArrow: return boost::make_shared<oox_shape_curvedDownArrow>();
case SimpleTypes::shapetypeLeftCircularArrow: return boost::make_shared<oox_shape_LeftCircularArrow>();
case SimpleTypes::shapetypePlaque: return boost::make_shared<oox_shape_Plaque>();
case SimpleTypes::shapetypeDoubleWave: return boost::make_shared<oox_shape_DoubleWave>();
case SimpleTypes::shapetypePlaque: return boost::make_shared<oox_shape_Plaque>();
case SimpleTypes::shapetypeDoubleWave: return boost::make_shared<oox_shape_DoubleWave>();
//case (2001 + SimpleTypes::textshapetypeTextArchDown):

View File

@ -36,10 +36,19 @@
#include "../../../Common/DocxFormat/Source/Common/SimpleTypes_Drawing.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Shape.h"
#include "../OdfFormat/odf_conversion_context.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Colors/SrgbClr.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Colors/PrstClr.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Colors/SchemeClr.h"
#include "../../../Common/DocxFormat/Source/Common/SimpleTypes_Word.h"
#include "../OdfFormat/odf_conversion_context.h"
#include "../OdfFormat/odf_text_context.h"
#include "../OdfFormat/odf_drawing_context.h"
#include "../OdfFormat/style_text_properties.h"
#include "../OdfFormat/style_paragraph_properties.h"
#define ARGB(a, r, g, b) ((unsigned int)( ( (unsigned char)(a) )| ( ( (unsigned char)(r) ) << 8 ) | ( ( (unsigned char)(g) ) << 16 ) | ( (unsigned char)(b) << 24 ) ) )
using namespace cpdoccore;
@ -53,16 +62,10 @@ void OoxConverter::convert(PPTX::Logic::SpTree *oox_shape_tree)
{
if (oox_shape_tree == NULL) return;
odf_context()->drawing_context()->start_group();
cpdoccore::_CP_OPT(double) x, y , ch_x , ch_y ;
odf_context()->drawing_context()->set_group_position(x, y, ch_x, ch_y);
for (long i=0 ;i < oox_shape_tree->SpTreeElems.size(); i++)
for (size_t i = 0; i < oox_shape_tree->SpTreeElems.size(); i++)
{
convert(oox_shape_tree->SpTreeElems[i].GetElem().operator->());
}
odf_context()->drawing_context()->end_group();
}
void OoxConverter::convert(PPTX::Logic::Shape *oox_shape)
@ -103,7 +106,7 @@ void OoxConverter::convert(PPTX::Logic::Shape *oox_shape)
{
odf_context()->start_text_context();
for (long i=0 ; i < oox_shape->txBody->Paragrs.size();i++)
for (size_t i = 0; i < oox_shape->txBody->Paragrs.size();i++)
{
convert(&oox_shape->txBody->Paragrs[i]);
}
@ -129,7 +132,6 @@ void OoxConverter::convert(PPTX::Logic::SpPr *oox_spPr, PPTX::Logic::ShapeStyle*
{
if (oox_spPr == NULL) return;
bool use_fill_from_style = false;
bool use_line_from_style = false;
if (oox_spPr->xfrm.IsInit()) //CTransform2D
@ -162,23 +164,7 @@ void OoxConverter::convert(PPTX::Logic::SpPr *oox_spPr, PPTX::Logic::ShapeStyle*
odf_context()->drawing_context()->start_area_properties();
{
PPTX::Logic::NoFill* noFill = &oox_spPr->Fill.as<PPTX::Logic::NoFill>();
PPTX::Logic::BlipFill* blipFill = &oox_spPr->Fill.as<PPTX::Logic::BlipFill>();
PPTX::Logic::GradFill* gradFill = &oox_spPr->Fill.as<PPTX::Logic::GradFill>();
PPTX::Logic::SolidFill* solidFill = &oox_spPr->Fill.as<PPTX::Logic::SolidFill>();
PPTX::Logic::PattFill* pattFill = &oox_spPr->Fill.as<PPTX::Logic::PattFill>();
if (solidFill) convert(solidFill);
else if (blipFill) convert(blipFill);
else if (gradFill) convert(gradFill);
else if (pattFill) convert(pattFill);
else if (noFill) odf_context()->drawing_context()->set_no_fill();
else use_fill_from_style = true;
if ( use_fill_from_style && oox_sp_style )
{
convert(&oox_sp_style->fillRef);
}
convert(&oox_spPr->Fill, oox_sp_style);
}
odf_context()->drawing_context()->end_area_properties();
@ -207,6 +193,32 @@ void OoxConverter::convert(PPTX::Logic::SpPr *oox_spPr, PPTX::Logic::ShapeStyle*
//nullable<OOX::Drawing::CShape3D> Sp3D;
//-----------------------------------------------------------------------------------------------------------------------------
}
void OoxConverter::convert(PPTX::Logic::UniFill *oox_fill, PPTX::Logic::ShapeStyle* oox_sp_style)
{
if (oox_fill == NULL) return;
bool use_fill_from_style = false;
PPTX::Logic::NoFill* noFill = &oox_fill->as<PPTX::Logic::NoFill>();
PPTX::Logic::BlipFill* blipFill = &oox_fill->as<PPTX::Logic::BlipFill>();
PPTX::Logic::GradFill* gradFill = &oox_fill->as<PPTX::Logic::GradFill>();
PPTX::Logic::SolidFill* solidFill = &oox_fill->as<PPTX::Logic::SolidFill>();
PPTX::Logic::PattFill* pattFill = &oox_fill->as<PPTX::Logic::PattFill>();
if (solidFill) convert(solidFill);
else if (blipFill) convert(blipFill);
else if (gradFill) convert(gradFill);
else if (pattFill) convert(pattFill);
else if (noFill) odf_context()->drawing_context()->set_no_fill();
else use_fill_from_style = true;
if ( use_fill_from_style && oox_sp_style )
{
convert(&oox_sp_style->fillRef);
}
}
int OoxConverter::convert(PPTX::Logic::PrstTxWarp *oox_text_preset)
{
if (oox_text_preset == NULL) return -1;
@ -214,4 +226,619 @@ int OoxConverter::convert(PPTX::Logic::PrstTxWarp *oox_text_preset)
return 2001 + oox_text_preset->prst.GetBYTECode();
}
void OoxConverter::convert(PPTX::Logic::PrstGeom *oox_geom)
{
if (!oox_geom) return;
for (size_t i = 0; i < oox_geom->avLst.size(); i++)
{
if (oox_geom->avLst[i].fmla.IsInit())
odf_context()->drawing_context()->add_modifier(oox_geom->avLst[i].fmla.get());
}
}
void OoxConverter::convert(PPTX::Logic::CustGeom *oox_cust_geom)
{
if (!oox_cust_geom) return;
for (size_t i = 0; i < oox_cust_geom->pathLst.size(); i++)
{
convert(&oox_cust_geom->pathLst[i]);
}
}
void OoxConverter::convert(PPTX::Logic::Path2D *oox_geom_path)
{
if (!oox_geom_path) return;
odf_context()->drawing_context()->set_viewBox(oox_geom_path->w.get_value_or(0), oox_geom_path->h.get_value_or(0));
for (size_t i = 0 ; i < oox_geom_path->Paths.size(); i++)
{
PPTX::Logic::PathBase* pathBase = &oox_geom_path->Paths[i].Path2D.as<PPTX::Logic::PathBase>();
convert(pathBase);
}
odf_context()->drawing_context()->add_path_element(std::wstring(L"N"), L"");
}
void OoxConverter::convert(PPTX::Logic::PathBase *oox_path)
{
if (!oox_path) return;
PPTX::Logic::MoveTo* moveTo = static_cast<PPTX::Logic::MoveTo*> (oox_path);
PPTX::Logic::LineTo* lineTo = static_cast<PPTX::Logic::LineTo*> (oox_path);
PPTX::Logic::CubicBezTo* cubicBezTo = static_cast<PPTX::Logic::CubicBezTo*> (oox_path);
PPTX::Logic::Close* close = static_cast<PPTX::Logic::Close*> (oox_path);
PPTX::Logic::ArcTo* arcTo = static_cast<PPTX::Logic::ArcTo*> (oox_path);
PPTX::Logic::QuadBezTo* quadBezTo = static_cast<PPTX::Logic::QuadBezTo*> (oox_path);
if (moveTo)
{
std::wstring path_elm = moveTo->x + L" " + moveTo->y;
odf_context()->drawing_context()->add_path_element(std::wstring(L"M"), path_elm);
}
if (lineTo)
{
std::wstring path_elm = lineTo->x + L" " + lineTo->y;
odf_context()->drawing_context()->add_path_element(std::wstring(L"L"), path_elm);
}
if (cubicBezTo)
{
std::wstring path_elm = cubicBezTo->x1 + L" " + cubicBezTo->y1 + L" " +
cubicBezTo->x2 + L" " + cubicBezTo->y2 + L" " +
cubicBezTo->x3 + L" " + cubicBezTo->y3;
odf_context()->drawing_context()->add_path_element(std::wstring(L"C"), path_elm);
}
if (quadBezTo)
{
std::wstring path_elm = quadBezTo->x1 + L" " + quadBezTo->y1 + L" " +
quadBezTo->x2 + L" " + quadBezTo->y2;
odf_context()->drawing_context()->add_path_element(std::wstring(L"S"), path_elm);
}
if (arcTo)
{
}
if (close)
{
std::wstring path_elm ;
odf_context()->drawing_context()->add_path_element(std::wstring(L"Z"), path_elm);
}
}
void OoxConverter::convert(PPTX::Logic::BlipFill *oox_fill)
{
if (!oox_fill) return;
}
void OoxConverter::convert(PPTX::Logic::GradFill *oox_grad_fill)
{
if (!oox_grad_fill) return;
odf_context()->drawing_context()->start_gradient_style();
{
odf_types::gradient_style::type grad_style = odf_types::gradient_style::linear;
if ( (oox_grad_fill->lin.IsInit()) && (oox_grad_fill->lin->ang.IsInit()))
{
odf_context()->drawing_context()->set_gradient_angle(oox_grad_fill->lin->ang.get()/60000.);
}
if ( (oox_grad_fill->path.IsInit()) && (oox_grad_fill->path->path.IsInit()))
{
grad_style = odf_types::gradient_style::linear;
switch(oox_grad_fill->path->path->GetBYTECode())
{
case SimpleTypes::pathshadetypeCircle: grad_style = odf_types::gradient_style::radial; break;
case SimpleTypes::pathshadetypeRect: grad_style = odf_types::gradient_style::rectangular; break;
case SimpleTypes::pathshadetypeShape: grad_style = odf_types::gradient_style::square; break;
}
if (oox_grad_fill->path->rect.IsInit())
{
odf_context()->drawing_context()->set_gradient_rect( XmlUtils::GetInteger(oox_grad_fill->path->rect->l.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->t.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->r.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->b.get_value_or(L"")));
}
}
odf_context()->drawing_context()->set_gradient_type(grad_style);
if (oox_grad_fill->GsLst.size() > 1)
{
std::wstring hexColorStart, hexColorEnd;
_CP_OPT(double) opacityStart, opacityEnd;
convert(&oox_grad_fill->GsLst[0].color,hexColorEnd, opacityEnd);
convert(&oox_grad_fill->GsLst[oox_grad_fill->GsLst.size()-1].color,hexColorStart, opacityStart);
odf_context()->drawing_context()->set_gradient_start(hexColorStart, opacityStart);
odf_context()->drawing_context()->set_gradient_end (hexColorEnd, opacityEnd);
if (opacityStart || opacityEnd)
{
if (!opacityStart) opacityStart = 100;
if (!opacityEnd) opacityEnd = 100;
if (*opacityStart == *opacityEnd)
{
odf_context()->drawing_context()->set_opacity(*opacityStart);
}
else
{
odf_context()->drawing_context()->start_opacity_style();
odf_context()->drawing_context()->set_opacity_type (grad_style);
odf_context()->drawing_context()->set_opacity_start (*opacityStart);
odf_context()->drawing_context()->set_opacity_end (*opacityEnd);
if (grad_style == odf_types::gradient_style::linear)
{
odf_context()->drawing_context()->set_opacity_angle(oox_grad_fill->lin->ang.get()/60000.);
}
else
{
odf_context()->drawing_context()->set_opacity_rect ( XmlUtils::GetInteger(oox_grad_fill->path->rect->l.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->t.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->r.get_value_or(L"")),
XmlUtils::GetInteger(oox_grad_fill->path->rect->b.get_value_or(L"")));
}
odf_context()->drawing_context()->end_opacity_style();
}
}
}
}
odf_context()->drawing_context()->end_gradient_style();
}
void OoxConverter::convert(PPTX::Logic::UniColor * color, std::wstring & hexString, _CP_OPT(double) & opacity)
{
if (!color) return;
PPTX::Logic::SrgbClr *rgb = &color->as<PPTX::Logic::SrgbClr>();
PPTX::Logic::SchemeClr *scheme = &color->as<PPTX::Logic::SchemeClr>();
if (scheme)
{
int theme_ind = scheme->val.GetBYTECode();
BYTE ucA = 0, ucG = 0, ucB = 0, ucR = 0;
bool result = convert(theme_ind, ucA, ucG, ucB, ucR);
if (result == true)
{
scheme->SetRGB(ucR, ucG, ucB);
DWORD dwColor = scheme->ApplyModifiers(PPTX::Logic::ColorBase::ctARGB);
hexString = XmlUtils::IntToString(dwColor & 0x00FFFFFF, L"#%06X");
if ((dwColor >> 24) != 0xff)
{
opacity = ((dwColor >> 24) /255.) * 100.;
}
}
}
if (rgb)
{
}
}
void OoxConverter::convert(PPTX::Logic::SolidFill *oox_fill)
{
if (!oox_fill) return;
std::wstring hexString;
_CP_OPT(double) opacity;
convert(&oox_fill->Color, hexString, opacity);
odf_context()->drawing_context()->set_solid_fill(hexString);
if (opacity)
{
odf_context()->drawing_context()->set_opacity(*opacity);
}
}
void OoxConverter::convert(PPTX::Logic::PattFill *oox_fill)
{
if (!oox_fill) return;
}
void OoxConverter::convert(PPTX::Logic::EffectLst *oox_effect_lst)
{
if (!oox_effect_lst) return;
}
void OoxConverter::convert(PPTX::Logic::Ln *oox_line_prop)
{
if (!oox_line_prop) return;
convert (&oox_line_prop->Fill);
if (oox_line_prop->w.IsInit())
{
odf_context()->drawing_context()->set_line_width(oox_line_prop->w.get() / 12700.); //pt
}
if (oox_line_prop->headEnd.IsInit())
{
if (oox_line_prop->headEnd->len.IsInit() || oox_line_prop->headEnd->type.IsInit() || oox_line_prop->headEnd->w.IsInit())
{
int type = 0, w=1, len =1;//medium arrow
if (oox_line_prop->headEnd->len.IsInit()) len = oox_line_prop->headEnd->len->GetBYTECode();
if (oox_line_prop->headEnd->type.IsInit()) type = oox_line_prop->headEnd->type->GetBYTECode();
if (oox_line_prop->headEnd->w.IsInit()) w = oox_line_prop->headEnd->w->GetBYTECode();
odf_context()->drawing_context()->set_line_head(type, len, w);
}
}
if (oox_line_prop->tailEnd.IsInit())
{
if (oox_line_prop->tailEnd->len.IsInit() || oox_line_prop->tailEnd->type.IsInit() || oox_line_prop->tailEnd->w.IsInit())
{
int type =0, w=1, len =1;//medium arrow
if (oox_line_prop->tailEnd->len.IsInit()) len = oox_line_prop->tailEnd->len->GetBYTECode();
if (oox_line_prop->tailEnd->type.IsInit()) type = oox_line_prop->tailEnd->type->GetBYTECode();
if (oox_line_prop->tailEnd->w.IsInit()) w = oox_line_prop->tailEnd->w->GetBYTECode();
odf_context()->drawing_context()->set_line_tail(type, len, w);
}
}
//if (oox_line_prop->custDash.IsInit())
//{
// //через задание стиля и описание геометрии
//}
if (oox_line_prop->prstDash.IsInit() && oox_line_prop->prstDash->val.IsInit())
{
odf_context()->drawing_context()->set_line_dash_preset(oox_line_prop->prstDash->val->GetBYTECode());
}
//nullable<SimpleTypes::CPenAlignment<>> m_oAlgn;
//nullable<SimpleTypes::CLineCap<>> m_oCap;
//nullable<SimpleTypes::CCompoundLine<>> m_oCmpd;
//ELineJoinType m_eJoinType; // Тип соединения линий
//nullable<OOX::Drawing::CLineJoinBevel> m_oBevel;
//nullable<OOX::Drawing::CLineJoinMiterProperties> m_oMiter;
//nullable<OOX::Drawing::CLineJoinRound> m_oRound;
}
void OoxConverter::convert(PPTX::Logic::BodyPr *oox_bodyPr)
{
if (!oox_bodyPr) return;
if (oox_bodyPr->vert.IsInit())
{
odf_context()->drawing_context()->set_textarea_writing_mode (oox_bodyPr->vert->GetBYTECode());
}
if (oox_bodyPr->anchor.IsInit())
{
odf_context()->drawing_context()->set_textarea_vertical_align (oox_bodyPr->anchor->GetBYTECode());
}
_CP_OPT(double) lIns, tIns, rIns, bIns;
if (oox_bodyPr->lIns.IsInit()) lIns = oox_bodyPr->lIns.get() / 12700. / 28.34467120181406; //cm
if (oox_bodyPr->tIns.IsInit()) tIns = oox_bodyPr->tIns.get() / 12700. / 28.34467120181406;
if (oox_bodyPr->rIns.IsInit()) rIns = oox_bodyPr->rIns.get() / 12700. / 28.34467120181406;
if (oox_bodyPr->bIns.IsInit()) bIns = oox_bodyPr->bIns.get() / 12700. / 28.34467120181406;
odf_context()->drawing_context()->set_textarea_padding (lIns, tIns, rIns, bIns);
if (oox_bodyPr->wrap.IsInit())
odf_context()->drawing_context()->set_textarea_wrap(oox_bodyPr->wrap->GetBYTECode());
if ((oox_bodyPr->numCol.IsInit()) && (oox_bodyPr->numCol.get() > 1))
{
//+ style section
//+element text:section в котором параграфы
}
//if (oox_bodyPr->spAutoFit.IsInit())
//{
// //изменяемы размеры
// odf_context()->drawing_context()->set_text_box_min_size(true);//уже выставленые в min
//}
if (oox_bodyPr->fromWordArt.IsInit() && oox_bodyPr->prstTxWarp.IsInit())
{
for (size_t i = 0; i < oox_bodyPr->prstTxWarp->avLst.size(); i++)
{
if (oox_bodyPr->prstTxWarp->avLst[i].fmla.IsInit())
{
odf_context()->drawing_context()->add_modifier(oox_bodyPr->prstTxWarp->avLst[i].fmla.get());
}
}
}
}
void OoxConverter::convert(PPTX::Logic::NvSpPr *oox_nvSpPr)
{
if (!oox_nvSpPr) return;
convert (&oox_nvSpPr->cNvPr);
convert (&oox_nvSpPr->cNvSpPr);
convert (&oox_nvSpPr->nvPr);
}
void OoxConverter::convert(PPTX::Logic::CNvPr *oox_cnvPr)
{
if (!oox_cnvPr) return;
odf_context()->drawing_context()->set_name(oox_cnvPr->name);
if (oox_cnvPr->descr.IsInit())
{
odf_context()->drawing_context()->set_description(oox_cnvPr->descr.get());
}
if (oox_cnvPr->hidden.IsInit())
{
odf_context()->drawing_context()->set_hidden(oox_cnvPr->hidden.get());
}
if (oox_cnvPr->hlinkClick.IsInit())
{
}
//nullable_string title;
//nullable<Hyperlink> hlinkHover;
}
void OoxConverter::convert(PPTX::Logic::CNvSpPr *oox_cnvSpPr)
{
if (!oox_cnvSpPr) return;
}
void OoxConverter::convert(PPTX::Logic::NvPr *oox_nvPr)
{
if (!oox_nvPr) return;
}
void OoxConverter::convert(PPTX::Logic::Paragraph *oox_paragraph)
{
if (!oox_paragraph)return;
bool styled = false;
if (oox_paragraph->pPr.IsInit())
{
odf_writer::style_paragraph_properties * paragraph_properties = odf_context()->text_context()->get_paragraph_properties();
//свойства могут быть приписаны не только к параграфу, но и к самому объекту
if (!paragraph_properties)
{
odf_context()->styles_context()->create_style(L"",odf_types::style_family::Paragraph, true, false, -1);
paragraph_properties = odf_context()->styles_context()->last_state()->get_paragraph_properties();
styled = true;
}
convert(oox_paragraph->pPr.GetPointer(), paragraph_properties);
}
odf_context()->text_context()->start_paragraph(styled);
for (size_t i=0; i< oox_paragraph->RunElems.size();i++)
{
convert(&oox_paragraph->RunElems[i].as<OOX::WritingElement>());
}
odf_context()->text_context()->end_paragraph();
}
void OoxConverter::convert(PPTX::Logic::TextParagraphPr *oox_paragraph_pr, odf_writer::style_paragraph_properties * paragraph_properties)
{
if (!oox_paragraph_pr) return;
if (!paragraph_properties) return;
if (oox_paragraph_pr->lnSpc.IsInit())
{
odf_types::length_or_percent length;
convert(oox_paragraph_pr->lnSpc.GetPointer(), length);
paragraph_properties->content().fo_line_height_ = odf_types::line_width(length);
}
if (oox_paragraph_pr->spcAft.IsInit())
{
odf_types::length_or_percent length;
convert(oox_paragraph_pr->spcAft.GetPointer(), length);
paragraph_properties->content().fo_margin_bottom_ = length;
}
if (oox_paragraph_pr->spcBef.IsInit())
{
odf_types::length_or_percent length;
convert(oox_paragraph_pr->spcBef.GetPointer(), length);
paragraph_properties->content().fo_margin_top_ = length;
}
if (oox_paragraph_pr->algn.IsInit())
{
switch(oox_paragraph_pr->algn->GetBYTECode())
{
case 0 : paragraph_properties->content().fo_text_align_ = odf_types::text_align(odf_types::text_align::Center); break;
case 1 :
case 2 :
case 3 : paragraph_properties->content().fo_text_align_ = odf_types::text_align(odf_types::text_align::Justify); break;
case 5 : paragraph_properties->content().fo_text_align_ = odf_types::text_align(odf_types::text_align::Right); break;
case 4 :
default:
paragraph_properties->content().fo_text_align_ = odf_types::text_align(odf_types::text_align::Left); break;
}
}
if (oox_paragraph_pr->marL.IsInit())
{
paragraph_properties->content().fo_margin_left_ = odf_types::length_or_percent(odf_types::length(oox_paragraph_pr->marL.get() / 12700., odf_types::length::pt));
}
if (oox_paragraph_pr->marR.IsInit())
{
paragraph_properties->content().fo_margin_right_ = odf_types::length_or_percent(odf_types::length(oox_paragraph_pr->marR.get() / 12700., odf_types::length::pt));
}
if (oox_paragraph_pr->indent.IsInit())
{
paragraph_properties->content().fo_text_indent_ = odf_types::length_or_percent(odf_types::length(oox_paragraph_pr->indent.get() / 12700., odf_types::length::pt));
}
if (oox_paragraph_pr->rtl.IsInit())
{
}
//nullable<SimpleTypes::CDecimalNumber<> > m_oLvl;
//nullable<SimpleTypes::CCoordinate32<> > m_oDefTabSz;
//nullable<SimpleTypes::CTextFontAlignType<>> m_oFontAlgn;
if (oox_paragraph_pr->defRPr.IsInit())//может быть пустым !!!
{
odf_writer::style_text_properties * text_properties = odf_context()->text_context()->get_text_properties();
if (text_properties)
convert(oox_paragraph_pr->defRPr.GetPointer(), text_properties);
//надо подумать как брать последний по family !!!
//convert(oox_paragraph_pr->m_oDefRunProperty.GetPointer());
//odf_context()->text_context()->set_parent_span_style(odf_context()->styles_context()->last_state().get_name());
}
}
void OoxConverter::convert(PPTX::Logic::TextSpacing *oox_spacing, cpdoccore::odf_types::length_or_percent & length_or_percent)
{
if (!oox_spacing) return;
if ( oox_spacing->spcPct.IsInit() )
{
odf_types::percent percent = odf_types::percent(oox_spacing->GetVal());
length_or_percent = odf_types::length_or_percent(percent);
}
if ( oox_spacing->spcPts.IsInit() )
{
odf_types::length length = odf_types::length(oox_spacing->GetVal() / 12700., odf_types::length::pt);
length_or_percent = odf_types::length_or_percent(length);
}}
void OoxConverter::convert(PPTX::Logic::RunProperties *oox_run_pr, odf_writer::style_text_properties * text_properties)
{
if (!oox_run_pr) return;
if (!text_properties) return;
if (oox_run_pr->b.IsInit())
{
if (oox_run_pr->b.get() == true)
text_properties->content().fo_font_weight_ = odf_types::font_weight(odf_types::font_weight::WBold);
else
text_properties->content().fo_font_weight_ = odf_types::font_weight(odf_types::font_weight::WNormal);
}
PPTX::Logic::SolidFill* solidFill = &oox_run_pr->Fill.as<PPTX::Logic::SolidFill>();
if (solidFill)
{
std::wstring hexColor;
_CP_OPT(double) opacity;
convert(&solidFill->Color, hexColor, opacity);
text_properties->content().fo_color_ = odf_types::color(std::wstring(L"#") + hexColor);
}
if (oox_run_pr->i.IsInit())
{
if (oox_run_pr->i.get() ==true)
text_properties->content().fo_font_style_ = odf_types::font_style(odf_types::font_style::Italic);
else
text_properties->content().fo_font_style_ = odf_types::font_style(odf_types::font_style::Normal);
}
if (oox_run_pr->sz.IsInit())
{
convert(oox_run_pr->sz.get()/100., text_properties->content().fo_font_size_);
convert(oox_run_pr->sz.get()/100., text_properties->content().style_font_size_asian_);
convert(oox_run_pr->sz.get()/100., text_properties->content().style_font_size_complex_);
}
if (oox_run_pr->latin.IsInit())
{
if (!oox_run_pr->latin->typeface.empty())
text_properties->content().fo_font_family_ = oox_run_pr->latin->typeface;
else
{
text_properties->content().fo_font_family_ = L"Calibri";//default_font; ????
}
}
if (oox_run_pr->ea.IsInit())
{
if (!oox_run_pr->ea->typeface.empty())
text_properties->content().style_font_family_asian_ = oox_run_pr->ea->typeface;
else
{
}
}
if (oox_run_pr->cs.IsInit())
{
if (!oox_run_pr->cs->typeface.empty())
text_properties->content().style_font_family_complex_ = oox_run_pr->cs->typeface;
else
{
}
}
if (oox_run_pr->lang.IsInit())
{
std::wstring oox_language = oox_run_pr->lang.get(), oox_country;
int res = oox_language.find(L"-");
if (res >= 0)
{
oox_country = oox_language.substr(res);
oox_language = oox_language.substr(0, res);
}
text_properties->content().fo_language_ = oox_language;
if (oox_country.length() > 0)
text_properties->content().fo_country_ = oox_country;
}
if (oox_run_pr->spc.IsInit())
{
text_properties->content().fo_letter_spacing_ = odf_types::letter_spacing(odf_types::length(oox_run_pr->spc.get()/100., odf_types::length::pt));
}
if (oox_run_pr->u.IsInit())
{
text_properties->content().style_text_underline_style_ = odf_types::line_style (odf_types::line_style::Solid);
text_properties->content().style_text_underline_type_ = odf_types::line_type (odf_types::line_type::Single);
switch(oox_run_pr->u->GetBYTECode())
{
case SimpleTypes::underlineNone :
text_properties->content().style_text_underline_type_= odf_types::line_type(odf_types::line_type::None);break;
case SimpleTypes::underlineDash :
case SimpleTypes::underlineDashedHeavy:
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::Dash);break;
case SimpleTypes::underlineDotDash :
case SimpleTypes::underlineDashDotHeavy:
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::DotDash);break;
case SimpleTypes::underlineDashLong:
case SimpleTypes::underlineDashLongHeavy:
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::LongDash);break;
case SimpleTypes::underlineDotDotDash:
case SimpleTypes::underlineDashDotDotHeavy :
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::DotDotDash);break;
case SimpleTypes::underlineDotted:
case SimpleTypes::underlineDottedHeavy:
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::Dotted);break;
case SimpleTypes::underlineWave :
case SimpleTypes::underlineWavyHeavy :
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::Wave);break;
case SimpleTypes::underlineDouble :
case SimpleTypes::underlineThick :
text_properties->content().style_text_underline_type_= odf_types::line_type(odf_types::line_type::Double);break;
case SimpleTypes::underlineWavyDouble :
text_properties->content().style_text_underline_type_= odf_types::line_type(odf_types::line_type::Double);
text_properties->content().style_text_underline_style_ = odf_types::line_style(odf_types::line_style::Wave);break;
}
}
}
void OoxConverter::convert(PPTX::Logic::Run *oox_run)
{
if (!oox_run) return;
bool styled = false;
if (oox_run->rPr.IsInit())
{
odf_writer::style_text_properties * text_properties = odf_context()->text_context()->get_text_properties();
if (!text_properties)
{
odf_context()->styles_context()->create_style(L"", odf_types::style_family::Text, true, false, -1);
text_properties = odf_context()->styles_context()->last_state()->get_text_properties();
styled = true;
}
convert(oox_run->rPr.GetPointer(), text_properties);
}
odf_context()->text_context()->start_span(styled);
odf_context()->text_context()->add_text_content( oox_run->GetText());
odf_context()->text_context()->end_span();
}
void OoxConverter::convert(PPTX::Logic::Fld *oox_fld)
{
if (!oox_fld) return;
}
void OoxConverter::convert(PPTX::Logic::Br *oox_br)
{
if (!oox_br) return;
}
void OoxConverter::convert(PPTX::Logic::MathParaWrapper *oox_math)
{
if (!oox_math) return;
}
}

View File

@ -643,10 +643,14 @@ void OoxConverter::convert(OOX::Vml::CTextbox *vml_textbox)
if (vml_textbox->m_oInsetMode.GetValue() == SimpleTypes::insetmodeCustom)
{
odf_context()->drawing_context()->set_textarea_padding(odf_types::length(vml_textbox->m_oInset.GetLeft(0), odf_types::length::pt).get_value_unit(odf_types::length::cm),
odf_types::length(vml_textbox->m_oInset.GetTop(0), odf_types::length::pt).get_value_unit(odf_types::length::cm),
odf_types::length(vml_textbox->m_oInset.GetRight(0), odf_types::length::pt).get_value_unit(odf_types::length::cm),
odf_types::length(vml_textbox->m_oInset.GetBottom(0), odf_types::length::pt).get_value_unit(odf_types::length::cm));
_CP_OPT(double) lIns, tIns, rIns, bIns;
lIns = odf_types::length(vml_textbox->m_oInset.GetLeft(0),odf_types::length::pt).get_value_unit(odf_types::length::cm);
tIns = odf_types::length(vml_textbox->m_oInset.GetTop(0), odf_types::length::pt).get_value_unit(odf_types::length::cm);
rIns = odf_types::length(vml_textbox->m_oInset.GetRight(0), odf_types::length::pt).get_value_unit(odf_types::length::cm);
bIns = odf_types::length(vml_textbox->m_oInset.GetBottom(0), odf_types::length::pt).get_value_unit(odf_types::length::cm);
odf_context()->drawing_context()->set_textarea_padding (lIns, tIns, rIns, bIns);
}
odf_context()->drawing_context()->set_textarea_wrap(true);

View File

@ -262,13 +262,6 @@ void OoxConverter::convert(OOX::WritingElement *oox_unknown)
{
//бяка
}break;
//et_p_spPr, // <p:spPr>
//et_p_style, // <p:style>
//et_p_groupSpPr, // <p:grpSpPr>
//et_p_NvGrpSpPr,
//et_p_cNvPr,
//et_p_xfrm,
case OOX::et_p_ShapeTree:
{
PPTX::Logic::SpTree *spTree = static_cast<PPTX::Logic::SpTree *>(oox_unknown);
@ -280,7 +273,26 @@ void OoxConverter::convert(OOX::WritingElement *oox_unknown)
PPTX::Logic::Shape *shape = static_cast<PPTX::Logic::Shape *>(oox_unknown);
convert(shape);
}break;
case OOX::et_p_r:
{
PPTX::Logic::Run* pRun= static_cast<PPTX::Logic::Run*>(oox_unknown);
convert(pRun);
}break;
case OOX::et_p_fld:
{
PPTX::Logic::Fld* pFld= static_cast<PPTX::Logic::Fld*>(oox_unknown);
convert(pFld);
}break;
case OOX::et_p_br:
{
PPTX::Logic::Br* pBr= static_cast<PPTX::Logic::Br*>(oox_unknown);
convert(pBr);
}break;
case OOX::et_p_MathPara:
{
PPTX::Logic::MathParaWrapper* pMathPara= static_cast<PPTX::Logic::MathParaWrapper*>(oox_unknown);
convert(pMathPara);
}break;
default:
{
_CP_LOG << L"[warning] : no convert element(" << oox_unknown->getType() << L")\n";
@ -339,7 +351,7 @@ void OoxConverter::convert(OOX::Drawing::CShape *oox_shape)
odf_context()->start_text_context();
convert(oox_shape->m_oTxSp->m_oTxBody->m_oBodyPr.GetPointer());
for (unsigned int i=0 ; i < oox_shape->m_oTxSp->m_oTxBody->m_arrItems.size();i++)
for (size_t i=0 ; i < oox_shape->m_oTxSp->m_oTxBody->m_arrItems.size();i++)
{
convert(oox_shape->m_oTxSp->m_oTxBody->m_arrItems[i]);
}
@ -367,7 +379,7 @@ void OoxConverter::convert(OOX::Drawing::CDiagrammParts *oox_diagramm)
if ((pDiagData) && (pDiagData->m_oExtLst.IsInit()))
{
for (int i = 0 ; i < pDiagData->m_oExtLst->m_arrExt.size(); i++)
for (size_t i = 0 ; i < pDiagData->m_oExtLst->m_arrExt.size(); i++)
{
if ( pDiagData->m_oExtLst->m_arrExt[i]->m_oDataModelExt.IsInit())
{
@ -383,12 +395,23 @@ void OoxConverter::convert(OOX::Drawing::CDiagrammParts *oox_diagramm)
if (oFile.is_init() && OOX::FileTypes::DiagDrawing == oFile->type())
{
OOX::CDiagramDrawing * diag_drawing = dynamic_cast<OOX::CDiagramDrawing*>(oFile.operator->());
_CP_OPT(double) x, y, width, height, cx = 0, cy = 0;
odf_context()->drawing_context()->get_size (width, height);
odf_context()->drawing_context()->get_position (x, y);
OOX::CDiagramDrawing * diag_drawing = dynamic_cast<OOX::CDiagramDrawing*>(oFile.operator->());
oox_current_child_document = diag_drawing;
odf_context()->drawing_context()->start_group();
odf_context()->drawing_context()->set_group_size (width, height, width, height);
odf_context()->drawing_context()->set_group_position (x, y, cx, cy);
convert(diag_drawing->m_oShapeTree.GetPointer());
odf_context()->drawing_context()->end_group();
oox_current_child_document = NULL;
}
}
@ -408,7 +431,7 @@ void OoxConverter::convert(OOX::Drawing::CLockedCanvas *oox_canvas)
convert(oox_canvas->m_oGroupSpPr.GetPointer());
convert(oox_canvas->m_oSpPr.GetPointer());
for (unsigned int i=0; i < oox_canvas->m_arrItems.size(); i++)
for (size_t i = 0; i < oox_canvas->m_arrItems.size(); i++)
{
convert(oox_canvas->m_arrItems[i]);
}
@ -455,7 +478,6 @@ void OoxConverter::convert(OOX::Drawing::CGroupShapeProperties * oox_group_spP
if (oox_group_spPr->m_oXfrm->m_oRot.GetValue() > 0)
odf_context()->drawing_context()->set_group_rotate(oox_group_spPr->m_oXfrm->m_oRot.GetValue());
}
}
void OoxConverter::convert(OOX::Drawing::CFontReference *style_font_ref)
{
@ -604,13 +626,13 @@ void OoxConverter::convert(OOX::Drawing::CShapeProperties * oox_spPr, OOX::Dra
}
switch(oox_spPr->m_eGeomType)
{
case OOX::Drawing::geomtypeCustom :
case OOX::Drawing::geomtypeCustom :
if(oox_spPr->m_oCustGeom.IsInit())convert(oox_spPr->m_oCustGeom.GetPointer());break;
case OOX::Drawing::geomtypePreset:
case OOX::Drawing::geomtypePreset:
if(oox_spPr->m_oPrstGeom.IsInit())convert(oox_spPr->m_oPrstGeom.GetPointer());break;
case OOX::Drawing::geomtypeUnknown:
default:
break;
case OOX::Drawing::geomtypeUnknown:
default:
break;
}
odf_context()->drawing_context()->start_area_properties();
{
@ -668,16 +690,16 @@ void OoxConverter::convert(OOX::Drawing::CNonVisualDrawingProps * oox_cnvPr)
odf_context()->drawing_context()->set_name(name);
}
//nullable<std::wstring> m_sDescr;
//nullable<SimpleTypes::COnOff<>> m_oHidden;
//nullable<std::wstring> m_sTitle;
//nullable<std::wstring> m_sDescr;
//nullable<SimpleTypes::COnOff<>> m_oHidden;
//nullable<std::wstring> m_sTitle;
}
void OoxConverter::convert(OOX::Drawing::CCustomGeometry2D *oox_cust_geom)
{
if (!oox_cust_geom)return;
for (unsigned int i=0; i< oox_cust_geom->m_oPthLst.m_arrPath.size();i++)
for (size_t i = 0; i < oox_cust_geom->m_oPthLst.m_arrPath.size(); i++)
{
convert(oox_cust_geom->m_oPthLst.m_arrPath[i]);
}
@ -704,9 +726,9 @@ void OoxConverter::convert(OOX::Drawing::CLineProperties *oox_line_prop, std::ws
if (oox_line_prop->m_oHeadEnd->m_oLen.IsInit() || oox_line_prop->m_oHeadEnd->m_oType.IsInit() || oox_line_prop->m_oHeadEnd->m_oW.IsInit())
{
int type = 0, w=1, len =1;//medium arrow
if (oox_line_prop->m_oHeadEnd->m_oLen.IsInit()) len = oox_line_prop->m_oHeadEnd->m_oLen->GetValue();
if (oox_line_prop->m_oHeadEnd->m_oType.IsInit()) type = oox_line_prop->m_oHeadEnd->m_oType->GetValue();
if (oox_line_prop->m_oHeadEnd->m_oW.IsInit()) w=oox_line_prop->m_oHeadEnd->m_oW->GetValue();
if (oox_line_prop->m_oHeadEnd->m_oLen.IsInit()) len = oox_line_prop->m_oHeadEnd->m_oLen->GetValue();
if (oox_line_prop->m_oHeadEnd->m_oType.IsInit()) type = oox_line_prop->m_oHeadEnd->m_oType->GetValue();
if (oox_line_prop->m_oHeadEnd->m_oW.IsInit()) w = oox_line_prop->m_oHeadEnd->m_oW->GetValue();
odf_context()->drawing_context()->set_line_head(type, len, w);
}
@ -716,9 +738,9 @@ void OoxConverter::convert(OOX::Drawing::CLineProperties *oox_line_prop, std::ws
if (oox_line_prop->m_oTailEnd->m_oLen.IsInit() || oox_line_prop->m_oTailEnd->m_oType.IsInit() || oox_line_prop->m_oTailEnd->m_oW.IsInit())
{
int type =0, w=1, len =1;//medium arrow
if (oox_line_prop->m_oTailEnd->m_oLen.IsInit()) len = oox_line_prop->m_oTailEnd->m_oLen->GetValue();
if (oox_line_prop->m_oTailEnd->m_oType.IsInit()) type = oox_line_prop->m_oTailEnd->m_oType->GetValue();
if (oox_line_prop->m_oTailEnd->m_oW.IsInit()) w = oox_line_prop->m_oTailEnd->m_oW->GetValue();
if (oox_line_prop->m_oTailEnd->m_oLen.IsInit()) len = oox_line_prop->m_oTailEnd->m_oLen->GetValue();
if (oox_line_prop->m_oTailEnd->m_oType.IsInit()) type = oox_line_prop->m_oTailEnd->m_oType->GetValue();
if (oox_line_prop->m_oTailEnd->m_oW.IsInit()) w = oox_line_prop->m_oTailEnd->m_oW->GetValue();
odf_context()->drawing_context()->set_line_tail(type, len, w);
}
@ -750,7 +772,7 @@ void OoxConverter::convert(OOX::Drawing::CPresetGeometry2D *oox_prst_geom)
if (oox_prst_geom->m_oAvLst.IsInit())
{
for (unsigned int i=0; i<oox_prst_geom->m_oAvLst->m_arrGd.size(); i++)
for (size_t i = 0; i < oox_prst_geom->m_oAvLst->m_arrGd.size(); i++)
{
if (oox_prst_geom->m_oAvLst->m_arrGd[i] == NULL) continue;
odf_context()->drawing_context()->add_modifier(oox_prst_geom->m_oAvLst->m_arrGd[i]->m_oFmla.GetValue());
@ -763,13 +785,12 @@ void OoxConverter::convert(OOX::Drawing::CPath2D *oox_geom_path)
odf_context()->drawing_context()->set_viewBox(oox_geom_path->m_oW.GetValue(), oox_geom_path->m_oH.GetValue());
for (size_t i =0 ; i< oox_geom_path->m_arrItems.size(); i++)
for (size_t i = 0 ; i < oox_geom_path->m_arrItems.size(); i++)
{
convert(oox_geom_path->m_arrItems[i]);
}
std::wstring path_elm ;
odf_context()->drawing_context()->add_path_element(std::wstring(L"N"), path_elm);
odf_context()->drawing_context()->add_path_element(std::wstring(L"N"), L"");
}
//-----------------------------------------------------------------------------------------------------------------
@ -777,7 +798,7 @@ void OoxConverter::convert(OOX::Drawing::CEffectList *oox_effect_list, std::wstr
{
if (oox_effect_list == NULL) return;
for (unsigned int i=0;i< oox_effect_list->m_arrEffects.size(); i++)
for (size_t i = 0; i < oox_effect_list->m_arrEffects.size(); i++)
{
switch(oox_effect_list->m_arrEffects[i]->getType())
{
@ -875,7 +896,7 @@ void OoxConverter::convert(OOX::Drawing::CBlipFillProperties *oox_bitmap_fill, s
sID = oox_bitmap_fill->m_oBlip->m_oLink.GetValue();
//...
}
for (unsigned int i=0 ; i < oox_bitmap_fill->m_oBlip->m_arrEffects.size(); i++)
for (size_t i = 0 ; i < oox_bitmap_fill->m_oBlip->m_arrEffects.size(); i++)
convert(oox_bitmap_fill->m_oBlip->m_arrEffects[i]);
}
if (oox_bitmap_fill->m_oSrcRect.IsInit() && Width >0 && Height >0)//часть изображения
@ -1037,7 +1058,7 @@ void OoxConverter::convert(OOX::Drawing::CPatternFillProperties *oox_pattern_fil
odf_context()->drawing_context()->end_hatch_style();
}
void OoxConverter::convert(OOX::Drawing::CSolidColorFillProperties *oox_solid_fill,std::wstring & hexColor , _CP_OPT(double) &opacity)
void OoxConverter::convert(OOX::Drawing::CSolidColorFillProperties *oox_solid_fill, std::wstring & hexColor , _CP_OPT(double) &opacity)
{
switch( oox_solid_fill->m_eType )
{
@ -1049,7 +1070,7 @@ void OoxConverter::convert(OOX::Drawing::CSolidColorFillProperties *oox_solid_fi
case OOX::Drawing::colorSys: convert(&oox_solid_fill->m_oSysClr, hexColor, opacity); break;
}
}
void OoxConverter::convert(OOX::Drawing::CColor *oox_color,std::wstring & hexColor , _CP_OPT(double) &opacity)
void OoxConverter::convert(OOX::Drawing::CColor *oox_color, std::wstring & hexColor , _CP_OPT(double) &opacity)
{
switch( oox_color->m_eType )
{
@ -1081,7 +1102,7 @@ void OoxConverter::convert(OOX::Drawing::CSolidColorFillProperties *oox_solid_fi
}
}
void OoxConverter::convert(OOX::Drawing::Colors::CColorTransform *oox_Clr, std::wstring & hexString, _CP_OPT(double) &opacity)
void OoxConverter::convert(OOX::Drawing::Colors::CColorTransform *oox_Clr, std::wstring & hexString, _CP_OPT(double) &opacity)
{
if (!oox_Clr)return;
BYTE ucA=0, ucG=0, ucB=0, ucR =0;
@ -1095,18 +1116,15 @@ void OoxConverter::convert(OOX::Drawing::Colors::CColorTransform *oox_Clr, s
}
if (ucA !=255)opacity = (ucA/255.)* 100.;
}
void OoxConverter::convert(OOX::Drawing::CSchemeColor *oox_ShemeClr, std::wstring & hexString, _CP_OPT(double) &opacity)
bool OoxConverter::convert(int indexSchemeColor, BYTE& ucA, BYTE& ucG, BYTE& ucB, BYTE& ucR)
{
OOX::CTheme * theme= oox_theme();
if (!oox_ShemeClr || !theme)return;
int theme_ind = oox_ShemeClr->m_oVal.GetValue();
BYTE ucA=0, ucG=0, ucB=0, ucR =0;
if (!theme)return false;
bool result = false;
switch(theme_ind)
switch(indexSchemeColor)
{
case SimpleTypes::shemecolorvalLt1:
case SimpleTypes::shemecolorvalBg1:
@ -1137,6 +1155,17 @@ void OoxConverter::convert(OOX::Drawing::CSchemeColor *oox_ShemeClr, std::ws
case SimpleTypes::shemecolorvalHlink:
result = theme->m_oThemeElements.m_oClrScheme.m_oHlink.tryGetRgb(ucR, ucG, ucB, ucA); break;
}
return result;
}
void OoxConverter::convert(OOX::Drawing::CSchemeColor *oox_ShemeClr, std::wstring & hexString, _CP_OPT(double) &opacity)
{
if (!oox_ShemeClr)return;
int theme_ind = oox_ShemeClr->m_oVal.GetValue();
BYTE ucA = 0, ucG = 0, ucB = 0, ucR = 0;
bool result = convert(theme_ind, ucA, ucG, ucB, ucR);
if (result == true)
{
oox_ShemeClr->SetRGBA(ucR,ucG,ucB,ucA);
@ -1148,7 +1177,7 @@ void OoxConverter::convert(OOX::Drawing::CSchemeColor *oox_ShemeClr, std::ws
hexString = oRgbColor->ToString().substr(2);//.Right(6);
delete oRgbColor;
}
if (ucA !=255)opacity = (ucA/255.)* 100.;
if ( ucA != 0xff )opacity = (ucA / 255.) * 100.;
}
}
void OoxConverter::convert(OOX::Drawing::CPath2DLineTo *oox_geom_path)
@ -1173,8 +1202,8 @@ void OoxConverter::convert(OOX::Drawing::CPath2DArcTo *oox_geom_path)
{
if (!oox_geom_path) return;
//std::wstring path_elm = std::to_wstring ((int)pt2emu(oox_geom_path->m_oPt.m_oX.GetValue())) +
// std::wstring(L" ")+ std::to_wstring ((int)pt2emu(oox_geom_path->m_oPt.m_oY.GetValue()));
//std::wstring path_elm = std::to_wstring ((int)pt2emu(oox_geom_path->m_oPt.m_oX.GetValue())) +
// std::wstring(L" ")+ std::to_wstring ((int)pt2emu(oox_geom_path->m_oPt.m_oY.GetValue()));
//
//odf_context()->drawing_context()->add_path_element(std::wstring(L"A"), path_elm);
}
@ -1217,10 +1246,15 @@ void OoxConverter::convert(OOX::Drawing::CTextBodyProperties *oox_bodyPr)
odf_context()->drawing_context()->set_textarea_writing_mode (oox_bodyPr->m_oVert.GetValue());
odf_context()->drawing_context()->set_textarea_vertical_align (oox_bodyPr->m_oAnchor.GetValue());
odf_context()->drawing_context()->set_textarea_padding (oox_bodyPr->m_oLIns.ToCm(),
oox_bodyPr->m_oTIns.ToCm(),
oox_bodyPr->m_oRIns.ToCm(),
oox_bodyPr->m_oBIns.ToCm());
_CP_OPT(double) lIns, tIns, rIns, bIns;
lIns = oox_bodyPr->m_oLIns.ToCm();
tIns = oox_bodyPr->m_oTIns.ToCm();
rIns = oox_bodyPr->m_oRIns.ToCm();
bIns = oox_bodyPr->m_oBIns.ToCm();
odf_context()->drawing_context()->set_textarea_padding (lIns, tIns, rIns, bIns);
odf_context()->drawing_context()->set_textarea_wrap(oox_bodyPr->m_oWrap.GetValue());
if (oox_bodyPr->m_oNumCol.GetValue() > 1)
@ -1236,7 +1270,7 @@ void OoxConverter::convert(OOX::Drawing::CTextBodyProperties *oox_bodyPr)
}
if (oox_bodyPr->m_oFromWordArt.ToBool() && oox_bodyPr->m_oPrstTxWrap.IsInit())
{
for (unsigned int i=0; i< oox_bodyPr->m_oPrstTxWrap->m_oAvLst->m_arrGd.size(); i++)
for (size_t i = 0; i < oox_bodyPr->m_oPrstTxWrap->m_oAvLst->m_arrGd.size(); i++)
{
if (oox_bodyPr->m_oPrstTxWrap->m_oAvLst->m_arrGd[i] == NULL) continue;
odf_context()->drawing_context()->add_modifier(oox_bodyPr->m_oPrstTxWrap->m_oAvLst->m_arrGd[i]->m_oFmla.GetValue());
@ -1367,7 +1401,7 @@ void OoxConverter::convert(OOX::Drawing::CRunProperty * oox_run_pr, odf_writer::
}
}
}
void OoxConverter::convert(OOX::Drawing::CRun *oox_run)
void OoxConverter::convert(OOX::Drawing::CRun *oox_run)
{
if (!oox_run)return;
@ -1497,7 +1531,7 @@ void OoxConverter::convert(OOX::Drawing::CParagraph *oox_paragraph)
odf_context()->text_context()->start_paragraph(styled);
for (unsigned int i=0; i< oox_paragraph->m_arrItems.size();i++)
for (size_t i=0; i< oox_paragraph->m_arrItems.size();i++)
{
convert(oox_paragraph->m_arrItems[i]);
}

View File

@ -273,11 +273,6 @@ namespace OOX
class CRichText;
class CTextProperties;
}
//namespace Diagram
//{
// class CShape;
// class CShapeTree;
//}
namespace Vml
{
class CShapeType;
@ -322,6 +317,32 @@ namespace PPTX
class SpPr;
class ShapeStyle;
class PrstTxWarp;
class PrstGeom;
class CustGeom;
class BlipFill;
class GradFill;
class SolidFill;
class PattFill;
class EffectLst;
class Ln;
class Path2D;
class PathBase;
class TxBody;
class BodyPr;
class UniFill;
class UniColor;
class NvSpPr;
class CNvPr;
class CNvSpPr;
class NvPr;
class Paragraph;
class TextParagraphPr;
class TextSpacing;
class RunProperties;
class Run;
class Fld;
class Br;
class MathParaWrapper;
}
}
@ -358,16 +379,17 @@ public:
OOX::Spreadsheet::IFileContainer *oox_current_child_document_spreadsheet;
OOX::IFileContainer *oox_current_child_document;
void convert (double oox_font_size, cpdoccore::_CP_OPT(cpdoccore::odf_types::font_size) & odf_font_size);
bool convert (int indexSchemeColor, BYTE& ucA, BYTE& ucG, BYTE& ucB, BYTE& ucR);
//.......................................................................................................................
void convert(OOX::WritingElement *oox_unknown);
void convert(double oox_font_size, cpdoccore::_CP_OPT(cpdoccore::odf_types::font_size) & odf_font_size);
//.drawing......................................................................................................................
void convert(OOX::Drawing::CDiagrammParts *oox_diagramm);
void convert(OOX::Drawing::CLockedCanvas *oox_canvas);
void convert(OOX::Drawing::CShape *oox_shape);
void convert(OOX::Drawing::CNonVisualDrawingProps *oox_cnvPr);
void convert(OOX::Drawing::CShapeProperties *oox_spPr, OOX::Drawing::CShapeStyle* oox_sp_style = NULL);
void convert(OOX::Drawing::CShapeProperties *oox_spPr, OOX::Drawing::CShapeStyle* oox_sp_style = NULL);
void convert(OOX::Drawing::CGroupShapeProperties *oox_groupSpPr);
void convert(OOX::Drawing::CTextBodyProperties *oox_bodyPr);
@ -406,11 +428,36 @@ public:
void convert(OOX::Drawing::CRun *oox_run);
void convert(OOX::Drawing::CRunProperty *oox_run_pr, cpdoccore::odf_writer::style_text_properties * text_properties);
void convert(OOX::Drawing::CLineSpacing *oox_spacing, cpdoccore::odf_types::length_or_percent & length_or_percent);
//.diagram(pptx)................................................................................................................................
//.diagram & pptx................................................................................................................................
void convert(PPTX::Logic::TextSpacing *oox_spacing, cpdoccore::odf_types::length_or_percent & length_or_percent);
void convert(PPTX::Logic::SpTree *oox_shape_tree);
void convert(PPTX::Logic::Shape *oox_shape);
void convert(PPTX::Logic::SpPr *oox_spPr, PPTX::Logic::ShapeStyle* oox_sp_style = NULL);
int convert(PPTX::Logic::PrstTxWarp *oox_text_preset);
void convert(PPTX::Logic::PrstGeom *oox_geom);
void convert(PPTX::Logic::CustGeom *oox_geom);
void convert(PPTX::Logic::BlipFill *oox_fill);
void convert(PPTX::Logic::GradFill *oox_fill);
void convert(PPTX::Logic::SolidFill *oox_fill);
void convert(PPTX::Logic::PattFill *oox_fill);
void convert(PPTX::Logic::EffectLst *oox_effect_lst);
void convert(PPTX::Logic::Ln *oox_line);
void convert(PPTX::Logic::Path2D *oox_path2D);
void convert(PPTX::Logic::PathBase *oox_path);
void convert(PPTX::Logic::BodyPr *oox_bodyPr);
void convert(PPTX::Logic::UniFill *oox_fill, PPTX::Logic::ShapeStyle* oox_sp_style = NULL);
void convert(PPTX::Logic::UniColor *color, std::wstring & hexString, cpdoccore::_CP_OPT(double) & opacity);
void convert(PPTX::Logic::NvSpPr *oox_nvSpPr);
void convert(PPTX::Logic::CNvPr *oox_cnvPr);
void convert(PPTX::Logic::CNvSpPr *oox_cnvSpPr);
void convert(PPTX::Logic::NvPr *oox_nvPr);
void convert(PPTX::Logic::Paragraph *oox_para);
void convert(PPTX::Logic::TextParagraphPr *oox_para_props, cpdoccore::odf_writer::style_paragraph_properties * paragraph_properties);
void convert(PPTX::Logic::RunProperties *oox_run_props, cpdoccore::odf_writer::style_text_properties * text_properties);
void convert(PPTX::Logic::Run *oox_run);
void convert(PPTX::Logic::Fld *oox_fld);
void convert(PPTX::Logic::Br *oox_br);
void convert(PPTX::Logic::MathParaWrapper *oox_math);
//.chart............................................................................................................................
void convert(OOX::Spreadsheet::CT_ChartSpace *oox_chart);
void convert(OOX::Spreadsheet::CT_Title *ct_title);

View File

@ -80,7 +80,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CRichText* rich)
odf_context()->chart_context()->start_text();
OoxConverter::convert(rich->m_oBodyPr.GetPointer());
for (unsigned int i=0 ; i < rich->m_arrItems.size();i++)
for (size_t i = 0; i < rich->m_arrItems.size();i++)
{
OoxConverter::convert(rich->m_arrItems[i]);
}
@ -93,7 +93,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CTextProperties* txPr)
odf_context()->chart_context()->start_text();
OoxConverter::convert(txPr->m_oBodyPr.GetPointer());
for (unsigned int i=0 ; i < txPr->m_arrItems.size();i++)
for (size_t i = 0; i < txPr->m_arrItems.size();i++)
{
OoxConverter::convert(txPr->m_arrItems[i]);
}
@ -167,7 +167,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_PlotArea* ct_plotArea)
convert(ct_plotArea->m_layout);
///////////////////////
for (unsigned int i=0; i< ct_plotArea->m_Items1.size(); i++)
for (size_t i = 0; i < ct_plotArea->m_Items1.size(); i++)
{
if (!ct_plotArea->m_ItemsElementName1[i]) continue;
switch(*ct_plotArea->m_ItemsElementName1[i])
@ -178,7 +178,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_PlotArea* ct_plotArea)
case OOX::Spreadsheet::itemschoicetype6VALAX: convert((OOX::Spreadsheet::CT_ValAx*)ct_plotArea->m_Items1[i]);break;
}
}
for (unsigned int i=0; i< ct_plotArea->m_Items.size(); i++)//
for (size_t i=0; i< ct_plotArea->m_Items.size(); i++)//
{
if (!ct_plotArea->m_ItemsElementName0[i]) continue;
switch(*ct_plotArea->m_ItemsElementName0[i])
@ -406,7 +406,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Area3DChart *chart)
if (chart->m_grouping && chart->m_grouping->m_val)
odf_context()->chart_context()->set_chart_grouping(*chart->m_grouping->m_val);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
@ -425,11 +425,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_AreaChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i=0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i=0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -460,11 +460,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Bar3DChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -491,11 +491,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_BarChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -513,11 +513,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Line3DChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -539,11 +539,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_LineChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -558,11 +558,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Pie3DChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
//for (long i=0; i< chart->m_axId.size(); i++)
//for (size_t i = 0; i < chart->m_axId.size(); i++)
//{
// odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
//}
@ -576,11 +576,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_PieChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
//for (long i=0; i< chart->m_axId.size(); i++)
//for (size_t i = 0; i < chart->m_axId.size(); i++)
//{
// odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
//}
@ -594,11 +594,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Surface3DChart *chart)
odf_context()->chart_context()->set_chart_3D(true);
odf_context()->chart_context()->start_group_series();
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -611,11 +611,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_SurfaceChart *chart)
odf_context()->chart_context()->set_chart_type(L"surface");
odf_context()->chart_context()->start_group_series();
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -629,11 +629,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_BubbleChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -649,7 +649,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_DoughnutChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
@ -668,11 +668,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_ScatterChart *chart)
odf_context()->chart_context()->start_group_series();
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -689,11 +689,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_RadarChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
//for (long i=0; i< chart->m_axId.size(); i++)
//for (size_t i = 0; i < chart->m_axId.size(); i++)
//{
// odf_context()->chart_context()->add_axis_group_series(**chart->m_axId[i]->m_val->m_val);
//}
@ -707,11 +707,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_StockChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
for (unsigned int i=0; i< chart->m_axId.size(); i++)
for (size_t i = 0; i < chart->m_axId.size(); i++)
{
odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
}
@ -755,11 +755,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_OfPieChart *chart)
odf_context()->chart_context()->start_group_series();
convert(chart->m_dLbls);
for (unsigned int i=0; i< chart->m_ser.size(); i++)
for (size_t i = 0; i < chart->m_ser.size(); i++)
{
convert(chart->m_ser[i]);
}
//for (long i=0; i< chart->m_axId.size(); i++)
//for (size_t i = 0; i < chart->m_axId.size(); i++)
//{
// odf_context()->chart_context()->add_axis_group_series(*chart->m_axId[i]->m_val);
//}
@ -954,7 +954,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Marker* marker, std::vector<OOX:
long count_point = odf_context()->chart_context()->get_count_data_points_series();
long current_point = 0;
long set_point;
for (unsigned int i =0 ;i < dPt.size(); i++)
for (size_t i = 0; i < dPt.size(); i++)
{
if (dPt[i] == NULL)continue;
@ -996,7 +996,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_DLbls* ser_lbls)
{
if (ser_lbls == NULL)return;
for (unsigned int i=0; i< ser_lbls->m_Items.size(); i++)
for (size_t i = 0; i < ser_lbls->m_Items.size(); i++)
{
bool boolVal = false;
@ -1140,7 +1140,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_NumData *num_data, bool categori
//std::vector<double> data;
std::vector<std::wstring> data;
for (unsigned int i=0; i < num_data->m_pt.size(); i++)
for (size_t i = 0; i < num_data->m_pt.size(); i++)
{
if (num_data->m_pt[i] && num_data->m_pt[i]->m_v)
{
@ -1166,7 +1166,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_StrData *str_data, bool categori
if (str_data == NULL)return;
std::vector<std::wstring> data;
for (unsigned int i=0; i < str_data->m_pt.size(); i++)
for (size_t i = 0; i < str_data->m_pt.size(); i++)
{
if (str_data->m_pt[i] && str_data->m_pt[i]->m_v)
data.push_back(*str_data->m_pt[i]->m_v);

View File

@ -2859,7 +2859,7 @@ void DocxConverter::convert(OOX::Drawing::CChart * oox_chart)
odt_context->drawing_context()->start_drawing();
odt_context->drawing_context()->start_object(odf_context()->get_next_name_object());
double width =0, height =0;
_CP_OPT(double) width, height;
odt_context->drawing_context()->get_size(width, height);
OoxConverter::convert(pChart->m_oChartSpace.m_oSpPr.GetPointer());

View File

@ -1923,59 +1923,49 @@ void XlsxConverter::convert(OOX::Spreadsheet::CGraphicFrame* oox_graphic_frame)
////////////////////////////////////////////////////////////////////////////////
ods_context->drawing_context()->start_drawing();
if (oox_graphic_frame->m_oNvGraphicFramePr.IsInit())
{
OoxConverter::convert(oox_graphic_frame->m_oNvGraphicFramePr->m_oCNvPr.GetPointer());
}
if ( OOX::Drawing::graphictypeChart == oox_graphic_frame->m_oGraphic->m_oGraphicData->m_eGraphicType)
{
ods_context->drawing_context()->start_object(ods_context->get_next_name_object());
{
double width = 0, height = 0;
ods_context->drawing_context()->get_size(width, height);
if (oox_graphic_frame->m_oNvGraphicFramePr.IsInit())
{
OoxConverter::convert(oox_graphic_frame->m_oNvGraphicFramePr->m_oCNvPr.GetPointer());
}
convert(oox_graphic_frame->m_oGraphic->m_oGraphicData->m_oChart.GetPointer(), width, height);
}
ods_context->drawing_context()->end_object();
convert(oox_graphic_frame->m_oGraphic->m_oGraphicData->m_oChart.GetPointer());
}
else if ( OOX::Drawing::graphictypeDiagram == oox_graphic_frame->m_oGraphic->m_oGraphicData->m_eGraphicType)
{
double width = 0, height = 0;
ods_context->drawing_context()->get_size(width, height);
if (oox_graphic_frame->m_oNvGraphicFramePr.IsInit())
{
OoxConverter::convert(oox_graphic_frame->m_oNvGraphicFramePr->m_oCNvPr.GetPointer());
}
OoxConverter::convert(oox_graphic_frame->m_oGraphic->m_oGraphicData->m_oDiagrammParts.GetPointer());
}
ods_context->drawing_context()->end_drawing();
}
void XlsxConverter::convert(OOX::Spreadsheet::CGraphicChart *oox_chart, double width, double height)
void XlsxConverter::convert(OOX::Spreadsheet::CGraphicChart *oox_chart)
{
if (!oox_chart) return;
if( !oox_chart->m_oRId.IsInit()) return;
std::wstring sId = oox_chart->m_oRId->GetValue();
_CP_OPT(double) width, height;
odf_context()->drawing_context()->get_size (width, height);
smart_ptr<OOX::File> oFile = xlsx_current_drawing->Find(sId);
smart_ptr<OOX::File> oFile = xlsx_current_drawing->Find(oox_chart->m_oRId->GetValue());
if (oFile.IsInit() && OOX::Spreadsheet::FileTypes::Charts == oFile->type())
{
OOX::Spreadsheet::CChartSpace* pChart = (OOX::Spreadsheet::CChartSpace*)oFile.operator->();
if (pChart)
{
OoxConverter::convert(pChart->m_oChartSpace.m_oSpPr.GetPointer());
oox_current_child_document_spreadsheet = dynamic_cast<OOX::Spreadsheet::IFileContainer*>(pChart);
odf_context()->start_chart();
odf_context()->chart_context()->set_chart_size(width, height);
OoxConverter::convert(&pChart->m_oChartSpace);
odf_context()->end_chart();
oox_current_child_document_spreadsheet = dynamic_cast<OOX::Spreadsheet::IFileContainer*>(pChart);
odf_context()->drawing_context()->start_object(ods_context->get_next_name_object());
{
odf_context()->start_chart();
odf_context()->chart_context()->set_chart_size(width, height);
OoxConverter::convert(pChart->m_oChartSpace.m_oSpPr.GetPointer());
OoxConverter::convert(&pChart->m_oChartSpace);
odf_context()->end_chart();
}
odf_context()->drawing_context()->end_object();
oox_current_child_document_spreadsheet = NULL;
}
}

View File

@ -201,7 +201,7 @@ namespace Oox2Odf
void convert(OOX::Spreadsheet::CConnShape *oox_conn_shape);
void convert(OOX::Spreadsheet::CGraphicFrame *oox_graphic_frame);
void convert(OOX::Spreadsheet::CGroupShape *oox_group_shape);
void convert(OOX::Spreadsheet::CGraphicChart *oox_chart, double width, double height);
void convert(OOX::Spreadsheet::CGraphicChart *oox_chart);
void convert(OOX::Spreadsheet::CConditionalFormatting *oox_cond_fmt);
void convert(OOX::Spreadsheet::CConditionalFormattingRule *oox_cond_rule);

View File

@ -44,7 +44,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../../ASCOfficeOdfFile/include;../../../ASCOfficeOdfFile/src/odf/datatypes"
PreprocessorDefinitions="NDEBUG;_LIB;_USE_XMLLITE_READER_;USE_LITE_READER;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;BUILD_CONFIG_FULL_VERSION;DONT_WRITE_EMBEDDED_FONTS"
PreprocessorDefinitions="NDEBUG;_LIB;_USE_XMLLITE_READER_;USE_LITE_READER;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;DONT_WRITE_EMBEDDED_FONTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"

View File

@ -21,7 +21,6 @@ include($$PWD/../../../Common/3dParty/boost/boost.pri)
DEFINES += UNICODE \
_UNICODE \
USE_ATL_CSTRING \
PPTX_DEF \
PPT_DEF \
ENABLE_PPT_TO_PPTX_CONVERT \
@ -31,7 +30,6 @@ DEFINES += UNICODE \
_USE_XMLLITE_READER_ \
_PRESENTATION_WRITER_ \
_SVG_CONVERT_TO_IMAGE_ \
BUILD_CONFIG_FULL_VERSION \
DONT_WRITE_EMBEDDED_FONTS
#DISABLE_FILE_DOWNLOADER

View File

@ -56,7 +56,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="&quot;../../../DesktopEditor/freetype-2.5.2/include&quot;"
PreprocessorDefinitions="_DEBUG;_LIB;_USE_MATH_DEFINES;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;PPT_FORMAT;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;DONT_WRITE_EMBEDDED_FONTS"
PreprocessorDefinitions="_DEBUG;_LIB;_USE_MATH_DEFINES;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"

View File

@ -992,6 +992,343 @@ HRESULT CDrawingConverter::AddShapeType(const std::wstring& bsXml)
return S_OK;
}
std::wstring CDrawingConverter::ConvertObjectToVml (const std::wstring& sXml)
{
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 + sXml + sEnd;
XmlUtils::CXmlNode oMainNode;
if (!oMainNode.FromXmlString(strXml))
return L"";
XmlUtils::CXmlNodes oNodes;
if (!oMainNode.GetNodes(L"*", oNodes))
return L"";
PPTX::Logic::SpTreeElem oElem;
std::wstring *pMainProps = new std::wstring();
std::wstring **ppMainProps = &pMainProps;
for (LONG i = 0; i < oNodes.GetCount(); ++i)
{
XmlUtils::CXmlNode oParseNode;
oNodes.GetAt(i, oParseNode);
std::wstring strFullName = oParseNode.GetName();
std::wstring strNS = XmlUtils::GetNamespace(strFullName);
std::wstring strName = XmlUtils::GetNameNoNS(strFullName);
while (true)
{
if (strName == L"drawing")
{
XmlUtils::CXmlNode oNodeAnchorInline = oParseNode.ReadNodeNoNS(L"anchor");
if (!oNodeAnchorInline.IsValid())
{
oNodeAnchorInline = oParseNode.ReadNodeNoNS(L"inline");
}
if (oNodeAnchorInline.IsValid())
{
XmlUtils::CXmlNode oNodeExt;
m_pBinaryWriter->m_lXCurShape = 0;
m_pBinaryWriter->m_lYCurShape = 0;
if (oNodeAnchorInline.GetNode(L"wp:extent", oNodeExt))
{
m_pBinaryWriter->m_lCxCurShape = oNodeExt.ReadAttributeInt(L"cx");
m_pBinaryWriter->m_lCyCurShape = oNodeExt.ReadAttributeInt(L"cy");
}
XmlUtils::CXmlNode oNodeDocPr;
if (oNodeAnchorInline.GetNode(L"wp:docPr", oNodeDocPr))
{//vml shapes without id .. reset all id
oNodeDocPr.SetAttributeInt(L"id", m_lNextId++);
}
SendMainProps(oNodeAnchorInline.GetXml(), ppMainProps);
XmlUtils::CXmlNode oNodeGraphic = oNodeAnchorInline.ReadNodeNoNS(L"graphic");
XmlUtils::CXmlNode oNodeGraphicData = oNodeGraphic.ReadNodeNoNS(L"graphicData");
if (oNodeGraphicData.IsValid())
{
XmlUtils::CXmlNodes oChilds;
oNodeGraphicData.GetNodes(L"*", oChilds);
if (1 == oChilds.GetCount())
{
XmlUtils::CXmlNode oNodeContent;
oChilds.GetAt(0, oNodeContent);
std::wstring strCurrentRelsPath = m_strCurrentRelsPath;
if (L"dgm:relIds" == oNodeContent.GetName() && m_pBinaryWriter->m_pCommonRels->is_init())
{
doc_LoadDiagram(&oElem, oNodeContent, ppMainProps, true);
}
else if (L"wpc:wpc" == oNodeContent.GetName())
{
PPTX::Logic::SpTree* pTree = new PPTX::Logic::SpTree();
pTree->grpSpPr.xfrm = new PPTX::Logic::Xfrm();
pTree->grpSpPr.xfrm->offX = m_pBinaryWriter->m_lXCurShape;
pTree->grpSpPr.xfrm->offY = m_pBinaryWriter->m_lYCurShape;
pTree->grpSpPr.xfrm->extX = m_pBinaryWriter->m_lCxCurShape;
pTree->grpSpPr.xfrm->extY = m_pBinaryWriter->m_lCyCurShape;
pTree->fromXML(oNodeContent);
oElem.InitElem(pTree);
}
else
{
oElem = oNodeContent;
#ifdef AVS_OFFICE_DRAWING_DUMP_PPTX_TO_PPT_TEST
std::wstring strVMLShapeXml = GetVMLShapeXml(oElem);
#endif
}
if (strCurrentRelsPath != m_strCurrentRelsPath)
{
m_strCurrentRelsPath = strCurrentRelsPath;
SetCurrentRelsPath();
}
}
}
}
break;
}
else if (strName == L"background")
{
doc_LoadShape(&oElem, oParseNode, ppMainProps, false);
break;
}
else if (strName == L"pict" || strName == L"object")
{
XmlUtils::CXmlNodes oChilds;
if (oParseNode.GetNodes(L"*", oChilds))
{
LONG lChildsCount = oChilds.GetCount();
bool bIsFound = false;
PPTX::Logic::SpTreeElem* pElem = NULL;
PPTX::Logic::COLEObject* pOle = NULL;
for (LONG k = 0; k < lChildsCount; k++)
{
XmlUtils::CXmlNode oNodeP;
oChilds.GetAt(k, oNodeP);
std::wstring strNameP = XmlUtils::GetNameNoNS(oNodeP.GetName());
if (L"shape" == strNameP ||
L"rect" == strNameP ||
L"oval" == strNameP ||
L"line" == strNameP ||
L"background"== strNameP ||
L"roundrect" == strNameP ||
L"polyline" == strNameP)
{
if(NULL == pElem)
{
pElem = new PPTX::Logic::SpTreeElem;
doc_LoadShape(pElem, oNodeP, ppMainProps, true);
#ifdef AVS_OFFICE_DRAWING_DUMP_XML_TEST
NSBinPptxRW::CXmlWriter oXmlW;
pElem->toXmlWriter(&oXmlW);
oXmlW.m_lDocType = XMLWRITER_DOC_TYPE_DOCX;
std::wstring strXmlTemp = oXmlW.GetXmlString();
#endif
}
}
else if (L"OLEObject" == strNameP)
{
pOle = new PPTX::Logic::COLEObject();
pOle->fromXML(oNodeP);
}
else if (L"group" == strNameP)
{
if(NULL == pElem)
{
pElem = new PPTX::Logic::SpTreeElem;
doc_LoadGroup(pElem, oNodeP, ppMainProps, true);
#ifdef AVS_OFFICE_DRAWING_DUMP_XML_TEST
NSBinPptxRW::CXmlWriter oXmlW;
oXmlW.m_lDocType = XMLWRITER_DOC_TYPE_DOCX;
pElem->toXmlWriter(&oXmlW);
std::wstring strXmlTemp = oXmlW.GetXmlString();
#endif
}
}
else if (L"shapetype" == strNameP)
{
AddShapeType(oNodeP.GetXml());
}
else
{
continue;
}
if (bIsFound)
break;
}
if(NULL != pElem)
{
if(NULL != pOle && pOle->m_sProgId.IsInit() && (pOle->m_oId.IsInit() || pOle->m_sFilepathBin.IsInit()))
{
PPTX::Logic::Shape* pShape = dynamic_cast<PPTX::Logic::Shape*>(pElem->GetElem().operator ->());
if(NULL != pShape && pShape->spPr.Fill.Fill.IsInit())
{
bool bImageOle = false;
if (pShape->spPr.Fill.m_type == PPTX::Logic::UniFill::blipFill) bImageOle = true;
PPTX::Logic::BlipFill oBlipFillNew;
if (!bImageOle)
oBlipFillNew.blip = new PPTX::Logic::Blip();
const PPTX::Logic::BlipFill& oBlipFill = bImageOle ? pShape->spPr.Fill.Fill.as<PPTX::Logic::BlipFill>() :
oBlipFillNew;
if(oBlipFill.blip.IsInit())
{
if (pOle->m_sFilepathBin.IsInit())
{
oBlipFill.blip->oleFilepathBin = pOle->m_sFilepathBin.get();
}
else if (pOle->m_oId.IsInit())
{
oBlipFill.blip->oleRid = pOle->m_oId.get().ToString();
}
if(strName == L"object")
{
int nDxaOrig = oParseNode.ReadAttributeInt(L"w:dxaOrig");
int nDyaOrig = oParseNode.ReadAttributeInt(L"w:dyaOrig");
if (nDxaOrig > 0 && nDyaOrig > 0)
{
pOle->m_oDxaOrig = nDxaOrig;
pOle->m_oDyaOrig = nDyaOrig;
}
}
PPTX::Logic::Pic *newElem = new PPTX::Logic::Pic();
newElem->blipFill = oBlipFill;
newElem->spPr = pShape->spPr;
newElem->style = pShape->style;
newElem->oleObject.reset(pOle);
pOle = NULL;
pElem->InitElem(newElem);
}
}
}
m_pBinaryWriter->WriteRecord1(1, *pElem);
}
RELEASEOBJECT(pElem)
RELEASEOBJECT(pOle)
}
break;
}
else if (strName == L"oleObj")
{
nullable<PPTX::Logic::Pic> pic = oParseNode.ReadNode(_T("p:pic"));
if (pic.is_init())
{
pic->fromXMLOle(oParseNode);
m_pBinaryWriter->WriteRecord2(1, pic);
}
break;
}
else if (strName == L"AlternateContent")
{
XmlUtils::CXmlNode oNodeDr;
if (oParseNode.GetNode(L"w:drawing", oNodeDr))
{
strName = L"drawing";
oParseNode = oNodeDr;
continue;
}
if (oParseNode.GetNode(L"mc:Choice", oNodeDr))
{
oParseNode = oNodeDr;
continue;
}
if (oParseNode.GetNode(L"w:pict", oNodeDr))
{
strName = L"pict";
oParseNode = oNodeDr;
continue;
}
if (oParseNode.GetNode(L"w:object", oNodeDr))
{
strName = L"object";
oParseNode = oNodeDr;
continue;
}
if (oParseNode.GetNode(L"xdr:sp", oNodeDr))
{
strName = L"sp";
oParseNode = oNodeDr;
continue;
}
if (oParseNode.GetNode(L"mc:Fallback", oNodeDr))
{
oParseNode = oNodeDr;
continue;
}
break;
}
else
{
oElem = oParseNode;
break;
}
}
}
if (oElem.is_init() == false) return L"";
NSBinPptxRW::CXmlWriter oXmlWriter;
oXmlWriter.m_lDocType = XMLWRITER_DOC_TYPE_DOCX;
oXmlWriter.m_bIsUseOffice2007 = true;
oXmlWriter.m_bIsTop = (1 == m_nCurrentIndexObject) ? true : false;
if (NULL == m_pOOXToVMLRenderer)
m_pOOXToVMLRenderer = new COOXToVMLGeometry();
oXmlWriter.m_pOOXToVMLRenderer = m_pOOXToVMLRenderer;
oXmlWriter.WriteString(L"<w:pict>");
if (oElem.is<PPTX::Logic::SpTree>())
{
ConvertGroupVML(oElem, *pMainProps, oXmlWriter);
}
else if (oElem.is<PPTX::Logic::Shape>())
{
ConvertShapeVML(oElem, *pMainProps, oXmlWriter);
}
oXmlWriter.WriteString(L"</w:pict>");
delete pMainProps;
return oXmlWriter.GetXmlString();
}
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\">");
@ -1389,7 +1726,7 @@ void CDrawingConverter::doc_LoadDiagram(PPTX::Logic::SpTreeElem *result, XmlUtil
oFileDrawing = (*m_pBinaryWriter->m_pCommonRels)->Find(*id_drawing);
pDiagramDrawing = dynamic_cast<OOX::CDiagramDrawing*>(oFileDrawing.operator->());
}
if (!pDiagramDrawing)
if (!pDiagramDrawing && pDiagramData)
{
OOX::CPath pathDiagramData = pDiagramData->m_strFilename;
@ -1398,15 +1735,21 @@ void CDrawingConverter::doc_LoadDiagram(PPTX::Logic::SpTreeElem *result, XmlUtil
OOX::CPath pathDiagramDrawing = pathDiagramData.GetDirectory() + FILE_SEPARATOR_STR + L"drawing" + strId + L".xml";
oFileDrawing = smart_ptr<OOX::File>(dynamic_cast<OOX::File*>(new OOX::CDiagramDrawing(pathDiagramDrawing)));
if (oFileDrawing.IsInit())
pDiagramDrawing = dynamic_cast<OOX::CDiagramDrawing*>(oFileDrawing.operator->());
if (NSFile::CFileBinary::Exists(pathDiagramDrawing.GetPath()))
{
oFileDrawing = smart_ptr<OOX::File>(dynamic_cast<OOX::File*>(new OOX::CDiagramDrawing(pathDiagramDrawing)));
if (oFileDrawing.IsInit())
pDiagramDrawing = dynamic_cast<OOX::CDiagramDrawing*>(oFileDrawing.operator->());
}
}
}
if (pDiagramDrawing)
if ((pDiagramDrawing) && (pDiagramDrawing->m_oShapeTree.IsInit()))
{
result->InitElem(new PPTX::Logic::SpTree(*pDiagramDrawing->m_oShapeTree));
//to correct write blipFill rId to binary
m_strCurrentRelsPath = pDiagramDrawing->GetReadPath().GetPath();
SetCurrentRelsPath();
}
else
{//BG-FSC1.docx
@ -4244,11 +4587,10 @@ HRESULT CDrawingConverter::SaveObject(LONG lStart, LONG lLength, const std::wstr
oXmlWriter.m_bIsTop = (1 == m_nCurrentIndexObject) ? true : false;
#if defined(BUILD_CONFIG_FULL_VERSION) && defined(AVS_USE_CONVERT_PPTX_TOCUSTOM_VML)
if (NULL == m_pOOXToVMLRenderer)
m_pOOXToVMLRenderer = new COOXToVMLGeometry();
oXmlWriter.m_pOOXToVMLRenderer = m_pOOXToVMLRenderer;
#endif
if(bOle)
{
ConvertPicVML(oElem, bsMainProps, oXmlWriter);
@ -4257,8 +4599,8 @@ HRESULT CDrawingConverter::SaveObject(LONG lStart, LONG lLength, const std::wstr
{
bool bIsNeedConvert2007 = false;
#ifdef BUILD_CONFIG_FULL_VERSION
if (m_bIsUseConvertion2007)
if (m_bIsUseConvertion2007)
{
if (oElem.is<PPTX::Logic::SpTree>())
{
@ -4271,7 +4613,6 @@ HRESULT CDrawingConverter::SaveObject(LONG lStart, LONG lLength, const std::wstr
bIsNeedConvert2007 = true;
}
}
#endif
oXmlWriter.WriteString(L"<w:drawing>");
oXmlWriter.WriteString(strMainProps);
@ -4334,11 +4675,9 @@ void CDrawingConverter::SaveObjectExWriterInit(NSBinPptxRW::CXmlWriter& oXmlWrit
oXmlWriter.m_bIsTop = (1 == m_nCurrentIndexObject) ? true : false;
#if defined(BUILD_CONFIG_FULL_VERSION) && defined(AVS_USE_CONVERT_PPTX_TOCUSTOM_VML)
if (NULL == m_pOOXToVMLRenderer)
m_pOOXToVMLRenderer = new COOXToVMLGeometry();
oXmlWriter.m_pOOXToVMLRenderer = m_pOOXToVMLRenderer;
#endif
}
void CDrawingConverter::SaveObjectExWriterRelease(NSBinPptxRW::CXmlWriter& oXmlWriter)
{

View File

@ -172,7 +172,6 @@ namespace NSBinPptxRW
PPTX::WrapperWritingElement* m_pElement;
CElementProps* m_pProps;
public:
CElement();
~CElement();
@ -207,35 +206,37 @@ namespace NSBinPptxRW
~CDrawingConverter();
HRESULT SetMainDocument (BinDocxRW::CDocxSerializer* pDocument);
HRESULT SetRelsPath (const std::wstring& bsRelsPath);
HRESULT SetRelsPath (const std::wstring& sRelsPath);
std::wstring GetRelsPath ();
HRESULT SetMediaDstPath (const std::wstring& bsMediaPath);
HRESULT SetEmbedDstPath (const std::wstring& bsEmbedPath);
HRESULT SetMediaDstPath (const std::wstring& sMediaPath);
HRESULT SetEmbedDstPath (const std::wstring& sEmbedPath);
HRESULT AddShapeType (const std::wstring& bsXml);
HRESULT AddObject (const std::wstring& bsXml, std::wstring** pMainProps);
HRESULT GetThemeBinary (BYTE** ppBinary, long& lBinarySize, const std::wstring& bsThemeFilePath);
HRESULT AddShapeType (const std::wstring& sXml);
HRESULT AddObject (const std::wstring& sXml, std::wstring** pMainProps);
HRESULT GetThemeBinary (BYTE** ppBinary, long& lBinarySize, const std::wstring& sThemeFilePath);
HRESULT SaveThemeXml (long lStart, long lLength, const std::wstring& bsThemePath);
HRESULT SaveObject (long lStart, long lLength, const std::wstring& bsMainProps, std::wstring & sXml);
HRESULT SaveObjectEx (long lStart, long lLength, const std::wstring& bsMainProps, long lDocType, std::wstring & sXml);
HRESULT SaveThemeXml (long lStart, long lLength, const std::wstring& sThemePath);
HRESULT SaveObject (long lStart, long lLength, const std::wstring& sMainProps, std::wstring & sXml);
HRESULT SaveObjectEx (long lStart, long lLength, const std::wstring& sMainProps, long lDocType, std::wstring & sXml);
void SaveObjectExWriterInit (NSBinPptxRW::CXmlWriter& oXmlWriter, LONG lDocType);
void SaveObjectExWriterRelease (NSBinPptxRW::CXmlWriter& oXmlWriter);
std::wstring ConvertObjectToVml (const std::wstring& sXml);
std::wstring SaveObjectBackground(LONG lStart, LONG lLength);
HRESULT GetRecordBinary (long lRecordType, const std::wstring& bsXml);
HRESULT GetRecordBinary (long lRecordType, const std::wstring& sXml);
HRESULT GetRecordXml (long lStart, long lLength, long lRecType, long lDocType, std::wstring & sXml);
HRESULT SetDstContentRels ();
HRESULT SaveDstContentRels (const std::wstring& bsRelsPath);
HRESULT WriteRels (const std::wstring& bsType, const std::wstring& bsTarget, const std::wstring& bsTargetMode, long* lId);
HRESULT LoadClrMap (const std::wstring& bsXml);
HRESULT SaveDstContentRels (const std::wstring& sRelsPath);
HRESULT WriteRels (const std::wstring& sType, const std::wstring& sTarget, const std::wstring& sTargetMode, long* lId);
HRESULT LoadClrMap (const std::wstring& sXml);
HRESULT(GetTxBodyBinary) (const std::wstring& bsXml);
HRESULT(GetTxBodyBinary) (const std::wstring& sXml);
HRESULT(GetTxBodyXml) (long lStart, std::wstring & Xml);
HRESULT(SetFontDir) (const std::wstring& bsFontDir);
HRESULT(SetFontDir) (const std::wstring& sFontDir);
HRESULT SetFontPicker (COfficeFontPicker* pFontPicker);
@ -274,10 +275,10 @@ namespace NSBinPptxRW
void LoadCoordSize (XmlUtils::CXmlNode& oNode, ::CShape* pShape);
std::wstring GetDrawingMainProps (XmlUtils::CXmlNode& oNode, PPTX::CCSS& oCssStyles, CSpTreeElemProps& oProps);
void ConvertMainPropsToVML (const std::wstring& bsMainProps, NSBinPptxRW::CXmlWriter& oWriter, PPTX::Logic::SpTreeElem& oElem);
void ConvertPicVML (PPTX::Logic::SpTreeElem& oElem, const std::wstring& bsMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertShapeVML (PPTX::Logic::SpTreeElem& oShape, const std::wstring& bsMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertGroupVML (PPTX::Logic::SpTreeElem& oGroup, const std::wstring& bsMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertMainPropsToVML (const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter, PPTX::Logic::SpTreeElem& oElem);
void ConvertPicVML (PPTX::Logic::SpTreeElem& oElem, const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertShapeVML (PPTX::Logic::SpTreeElem& oShape, const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertGroupVML (PPTX::Logic::SpTreeElem& oGroup, const std::wstring& sMainProps, NSBinPptxRW::CXmlWriter& oWriter);
void ConvertTextVML (XmlUtils::CXmlNode &nodeTextBox, PPTX::Logic::Shape* pShape);

View File

@ -257,54 +257,74 @@ namespace PPTX2EditorAdvanced
tablestyles->toPPTY(&oBinaryWriter);
}
// Presentation
// Presentation
oBinaryWriter.StartMainRecord(NSMainTables::Presentation);
presentation->toPPTY(&oBinaryWriter);
// themes
// themes
oBinaryWriter.StartMainRecord(NSMainTables::Themes);
ULONG nCountThemes = (ULONG)_themes.size();
ULONG nCountThemes = 0;
for (size_t i = 0; i < _themes.size(); ++i)
{
if (_themes[i].IsInit()) nCountThemes++;
}
oBinaryWriter.WriteULONG(nCountThemes);
for (ULONG i = 0; i < nCountThemes; ++i)
for (size_t i = 0; i < _themes.size(); ++i)
{
if (_themes[i].IsInit() == false) continue;
_themes[i]->toPPTY(&oBinaryWriter);
}
// slidemasters
// slidemasters
oBinaryWriter.StartMainRecord(NSMainTables::SlideMasters);
ULONG nCountSM = (ULONG)_slideMasters.size();
ULONG nCountSM = 0;
for (size_t i = 0; i < _slideMasters.size(); ++i)
{
if (_slideMasters[i].IsInit()) nCountSM++;
}
oBinaryWriter.WriteULONG(nCountSM);
for (ULONG i = 0; i < nCountSM; ++i)
for (size_t i = 0; i < _slideMasters.size(); ++i)
{
if (_slideMasters[i].IsInit() == false) continue;
_slideMasters[i]->toPPTY(&oBinaryWriter);
}
// slidelayouts
// slidelayouts
oBinaryWriter.StartMainRecord(NSMainTables::SlideLayouts);
ULONG nCountL = 0;
for (ULONG i = 0; i < _layouts.size(); ++i)
ULONG nCountL = 0;
for (size_t i = 0; i < _layouts.size(); ++i)
{
if (_layouts[i].IsInit())nCountL++;
if (_layouts[i].IsInit())nCountL++;
}
oBinaryWriter.WriteULONG(nCountL);
for (ULONG i = 0; i < _layouts.size(); ++i)
for (size_t i = 0; i < _layouts.size(); ++i)
{
if (_layouts[i].IsInit() == false)
{
continue;
//непонятки с 42 шаблоном в FY10_September_Partner_Call.pptx
}
if (_layouts[i].IsInit() == false) continue; //непонятки с 42 шаблоном в FY10_September_Partner_Call.pptx
_layouts[i]->toPPTY(&oBinaryWriter);
}
// slides
// slides
oBinaryWriter.StartMainRecord(NSMainTables::Slides);
ULONG nCountS = (ULONG)_slides.size();
ULONG nCountS = 0;
for (size_t i = 0; i < _slides.size(); ++i)
{
if (_slides[i].IsInit()) nCountS++;
}
oBinaryWriter.WriteULONG(nCountS);
for (ULONG i = 0; i < nCountS; ++i)
for (size_t i = 0; i < _slides.size(); ++i)
{
if (_slides[i].IsInit() == false ) continue;
_slides[i]->toPPTY(&oBinaryWriter);
}
@ -312,7 +332,7 @@ namespace PPTX2EditorAdvanced
{
// ПОКА нету NOTES
// notes
// notes
oBinaryWriter.StartMainRecord(NSMainTables::NotesSlides);
ULONG nCountN = (ULONG)_notes.size();
oBinaryWriter.WriteULONG(nCountN);
@ -321,7 +341,7 @@ namespace PPTX2EditorAdvanced
_notes[i]->toPPTY(&oBinaryWriter);
}
// notesmasters
// notesmasters
oBinaryWriter.StartMainRecord(NSMainTables::NotesMasters);
ULONG nCountNM = (ULONG)_notesMasters.size();
oBinaryWriter.WriteULONG(nCountNM);

View File

@ -53,10 +53,10 @@ namespace NSPresentationEditor
CHandle_& operator =(const CHandle_& oSrc)
{
position = oSrc.position;
xrange = oSrc.xrange;
yrange = oSrc.yrange;
xrange = oSrc.xrange;
yrange = oSrc.yrange;
switchHandle = oSrc.switchHandle;
polar = oSrc.polar;
polar = oSrc.polar;
radiusrange = oSrc.radiusrange;
return (*this);
}
@ -65,27 +65,27 @@ namespace NSPresentationEditor
class CBaseShape
{
public:
std::vector<long> m_arAdjustments;
std::vector<double> m_arGuides;
LONG m_eJoin;
bool m_bConcentricFill;
bool m_bCustomShape;
std::vector<long> m_arAdjustments;
std::vector<double> m_arGuides;
LONG m_eJoin;
bool m_bConcentricFill;
bool m_bCustomShape;
std::vector<SimpleTypes::CPoint> m_arConnectors;
std::vector<LONG> m_arConnectorAngles;
std::vector<LONG> m_arConnectorAngles;
std::vector<Aggplus::RECT> m_arTextRects;
std::vector<Aggplus::RECT> m_arTextRects;
std::vector<CHandle_> m_arHandles;
std::vector<CHandle_> m_arHandles;
std::wstring m_strTransformXml;
std::wstring m_strTransformXml;
std::wstring m_strPath;
std::wstring m_strRect;
std::wstring m_strPath;
std::wstring m_strRect;
LONG m_lLimoX;
LONG m_lLimoY;
LONG m_lLimoX;
LONG m_lLimoY;
CPath m_oPath;
CPath m_oPath;
CBaseShape()
{
@ -94,14 +94,14 @@ namespace NSPresentationEditor
virtual bool LoadFromXML(const std::wstring& xml) = 0;
virtual bool LoadFromXML(XmlUtils::CXmlNode& xmlNode) = 0;
virtual bool LoadAdjustValuesList(const std::wstring& xml) = 0;
virtual bool LoadAdjustValuesList(const std::wstring& xml) = 0;
virtual bool LoadGuidesList(const std::wstring& xml) = 0;
virtual bool LoadAdjustHandlesList(const std::wstring& xml) = 0;
virtual bool LoadConnectorsList(const std::wstring& xml) = 0;
virtual bool LoadTextRect(const std::wstring& xml) = 0;
virtual bool LoadPathList(const std::wstring& xml) = 0;
virtual bool SetAdjustment(long index, long value) = 0;
virtual void ReCalculate() = 0;
virtual bool LoadAdjustHandlesList(const std::wstring& xml) = 0;
virtual bool LoadConnectorsList(const std::wstring& xml) = 0;
virtual bool LoadTextRect(const std::wstring& xml) = 0;
virtual bool LoadPathList(const std::wstring& xml) = 0;
virtual bool SetAdjustment(long index, long value) = 0;
virtual void ReCalculate() = 0;
virtual std::wstring ToXML(CGeomShapeInfo& GeomInfo, CMetricInfo& MetricInfo, double StartTime, double EndTime, CBrush& Brush, CPen& Pen) = 0;
virtual void ToRenderer(IRenderer* pRenderer, CGeomShapeInfo& pGeomInfo, double dStartTime, double dEndTime, CPen& pPen, CBrush& pFore, CMetricInfo& pInfo)

View File

@ -42,7 +42,7 @@
double NSGuidesOOXML::CFormula::Calculate(NSGuidesOOXML::CFormulaManager* pManager)
{
if ((0 == m_lIndex) || (-m_lIndex > pManager->Guides->size()) || (m_lIndex > pManager->Adjustments->size()))
if ((0 == m_lIndex) || (-m_lIndex > (int)pManager->Guides->size()) || (m_lIndex > (int)pManager->Adjustments->size()))
return 0.0;
if((m_lIndex < 0) && (dNonDefResult > (*pManager->Guides)[-m_lIndex-1]))
return (*pManager->Guides)[-m_lIndex-1];

View File

@ -38,233 +38,233 @@ CPPTXShape* CPPTXShape::CreateByType(OOXMLShapes::ShapeType type)
{
switch(type)
{
case OOXMLShapes::sptCAccentBorderCallout1: return new OOXMLShapes::CAccentBorderCallout1();
case OOXMLShapes::sptCAccentBorderCallout2: return new OOXMLShapes::CAccentBorderCallout2();
case OOXMLShapes::sptCAccentBorderCallout3: return new OOXMLShapes::CAccentBorderCallout3();
case OOXMLShapes::sptCAccentCallout1: return new OOXMLShapes::CAccentCallout1();
case OOXMLShapes::sptCAccentCallout2: return new OOXMLShapes::CAccentCallout2();
case OOXMLShapes::sptCAccentCallout3: return new OOXMLShapes::CAccentCallout3();
case OOXMLShapes::sptCActionButtonBackPrevious: return new OOXMLShapes::CActionButtonBackPrevious();
case OOXMLShapes::sptCActionButtonBeginning: return new OOXMLShapes::CActionButtonBeginning();
case OOXMLShapes::sptCActionButtonBlank: return new OOXMLShapes::CActionButtonBlank();
case OOXMLShapes::sptCActionButtonDocument: return new OOXMLShapes::CActionButtonDocument();
case OOXMLShapes::sptCActionButtonEnd: return new OOXMLShapes::CActionButtonEnd();
case OOXMLShapes::sptCActionButtonForwardNext: return new OOXMLShapes::CActionButtonForwardNext();
case OOXMLShapes::sptCActionButtonHelp: return new OOXMLShapes::CActionButtonHelp();
case OOXMLShapes::sptCActionButtonHome: return new OOXMLShapes::CActionButtonHome();
case OOXMLShapes::sptCActionButtonInformation: return new OOXMLShapes::CActionButtonInformation();
case OOXMLShapes::sptCActionButtonMovie: return new OOXMLShapes::CActionButtonMovie();
case OOXMLShapes::sptCActionButtonReturn: return new OOXMLShapes::CActionButtonReturn();
case OOXMLShapes::sptCActionButtonSound: return new OOXMLShapes::CActionButtonSound();
case OOXMLShapes::sptCArc: return new OOXMLShapes::CArc();
case OOXMLShapes::sptCBentArrow: return new OOXMLShapes::CBentArrow();
case OOXMLShapes::sptCBentConnector2: return new OOXMLShapes::CBentConnector2();
case OOXMLShapes::sptCBentConnector3: return new OOXMLShapes::CBentConnector3();
case OOXMLShapes::sptCBentConnector4: return new OOXMLShapes::CBentConnector4();
case OOXMLShapes::sptCBentConnector5: return new OOXMLShapes::CBentConnector5();
case OOXMLShapes::sptCBentUpArrow: return new OOXMLShapes::CBentUpArrow();
case OOXMLShapes::sptCBevel: return new OOXMLShapes::CBevel();
case OOXMLShapes::sptCBlockArc: return new OOXMLShapes::CBlockArc();
case OOXMLShapes::sptCBorderCallout1: return new OOXMLShapes::CBorderCallout1();
case OOXMLShapes::sptCBorderCallout2: return new OOXMLShapes::CBorderCallout2();
case OOXMLShapes::sptCBorderCallout3: return new OOXMLShapes::CBorderCallout3();
case OOXMLShapes::sptCBracePair: return new OOXMLShapes::CBracePair();
case OOXMLShapes::sptCBracketPair: return new OOXMLShapes::CBracketPair();
case OOXMLShapes::sptCCallout1: return new OOXMLShapes::CCallout1();
case OOXMLShapes::sptCCallout2: return new OOXMLShapes::CCallout2();
case OOXMLShapes::sptCCallout3: return new OOXMLShapes::CCallout3();
case OOXMLShapes::sptCCan: return new OOXMLShapes::CCan();
case OOXMLShapes::sptCChartPlus: return new OOXMLShapes::CChartPlus();
case OOXMLShapes::sptCChartStar: return new OOXMLShapes::CChartStar();
case OOXMLShapes::sptCChartX: return new OOXMLShapes::CChartX();
case OOXMLShapes::sptCChevron: return new OOXMLShapes::CChevron();
case OOXMLShapes::sptCChord: return new OOXMLShapes::CChord();
case OOXMLShapes::sptCCircularArrow: return new OOXMLShapes::CCircularArrow();
case OOXMLShapes::sptCCloud: return new OOXMLShapes::CCloud();
case OOXMLShapes::sptCCloudCallout: return new OOXMLShapes::CCloudCallout();
case OOXMLShapes::sptCCorner: return new OOXMLShapes::CCorner();
case OOXMLShapes::sptCCornerTabs: return new OOXMLShapes::CCornerTabs();
case OOXMLShapes::sptCCube: return new OOXMLShapes::CCube();
case OOXMLShapes::sptCCurvedConnector2: return new OOXMLShapes::CCurvedConnector2();
case OOXMLShapes::sptCCurvedConnector3: return new OOXMLShapes::CCurvedConnector3();
case OOXMLShapes::sptCCurvedConnector4: return new OOXMLShapes::CCurvedConnector4();
case OOXMLShapes::sptCCurvedConnector5: return new OOXMLShapes::CCurvedConnector5();
case OOXMLShapes::sptCCurvedDownArrow: return new OOXMLShapes::CCurvedDownArrow();
case OOXMLShapes::sptCCurvedLeftArrow: return new OOXMLShapes::CCurvedLeftArrow();
case OOXMLShapes::sptCCurvedRightArrow: return new OOXMLShapes::CCurvedRightArrow();
case OOXMLShapes::sptCCurvedUpArrow: return new OOXMLShapes::CCurvedUpArrow();
case OOXMLShapes::sptCDecagon: return new OOXMLShapes::CDecagon();
case OOXMLShapes::sptCDiagStripe: return new OOXMLShapes::CDiagStripe();
case OOXMLShapes::sptCDiamond: return new OOXMLShapes::CDiamond();
case OOXMLShapes::sptCDodecagon: return new OOXMLShapes::CDodecagon();
case OOXMLShapes::sptCDonut: return new OOXMLShapes::CDonut();
case OOXMLShapes::sptCDoubleWave: return new OOXMLShapes::CDoubleWave();
case OOXMLShapes::sptCDownArrow: return new OOXMLShapes::CDownArrow();
case OOXMLShapes::sptCDownArrowCallout: return new OOXMLShapes::CDownArrowCallout();
case OOXMLShapes::sptCEllipse: return new OOXMLShapes::CEllipse();
case OOXMLShapes::sptCEllipseRibbon: return new OOXMLShapes::CEllipseRibbon();
case OOXMLShapes::sptCEllipseRibbon2: return new OOXMLShapes::CEllipseRibbon2();
case OOXMLShapes::sptCFlowChartAlternateProcess: return new OOXMLShapes::CFlowChartAlternateProcess();
case OOXMLShapes::sptCFlowChartCollate: return new OOXMLShapes::CFlowChartCollate();
case OOXMLShapes::sptCFlowChartConnector: return new OOXMLShapes::CFlowChartConnector();
case OOXMLShapes::sptCFlowChartDecision: return new OOXMLShapes::CFlowChartDecision();
case OOXMLShapes::sptCFlowChartDelay: return new OOXMLShapes::CFlowChartDelay();
case OOXMLShapes::sptCFlowChartDisplay: return new OOXMLShapes::CFlowChartDisplay();
case OOXMLShapes::sptCFlowChartDocument: return new OOXMLShapes::CFlowChartDocument();
case OOXMLShapes::sptCFlowChartExtract: return new OOXMLShapes::CFlowChartExtract();
case OOXMLShapes::sptCFlowChartInputOutput: return new OOXMLShapes::CFlowChartInputOutput();
case OOXMLShapes::sptCAccentBorderCallout1: return new OOXMLShapes::CAccentBorderCallout1();
case OOXMLShapes::sptCAccentBorderCallout2: return new OOXMLShapes::CAccentBorderCallout2();
case OOXMLShapes::sptCAccentBorderCallout3: return new OOXMLShapes::CAccentBorderCallout3();
case OOXMLShapes::sptCAccentCallout1: return new OOXMLShapes::CAccentCallout1();
case OOXMLShapes::sptCAccentCallout2: return new OOXMLShapes::CAccentCallout2();
case OOXMLShapes::sptCAccentCallout3: return new OOXMLShapes::CAccentCallout3();
case OOXMLShapes::sptCActionButtonBackPrevious: return new OOXMLShapes::CActionButtonBackPrevious();
case OOXMLShapes::sptCActionButtonBeginning: return new OOXMLShapes::CActionButtonBeginning();
case OOXMLShapes::sptCActionButtonBlank: return new OOXMLShapes::CActionButtonBlank();
case OOXMLShapes::sptCActionButtonDocument: return new OOXMLShapes::CActionButtonDocument();
case OOXMLShapes::sptCActionButtonEnd: return new OOXMLShapes::CActionButtonEnd();
case OOXMLShapes::sptCActionButtonForwardNext: return new OOXMLShapes::CActionButtonForwardNext();
case OOXMLShapes::sptCActionButtonHelp: return new OOXMLShapes::CActionButtonHelp();
case OOXMLShapes::sptCActionButtonHome: return new OOXMLShapes::CActionButtonHome();
case OOXMLShapes::sptCActionButtonInformation: return new OOXMLShapes::CActionButtonInformation();
case OOXMLShapes::sptCActionButtonMovie: return new OOXMLShapes::CActionButtonMovie();
case OOXMLShapes::sptCActionButtonReturn: return new OOXMLShapes::CActionButtonReturn();
case OOXMLShapes::sptCActionButtonSound: return new OOXMLShapes::CActionButtonSound();
case OOXMLShapes::sptCArc: return new OOXMLShapes::CArc();
case OOXMLShapes::sptCBentArrow: return new OOXMLShapes::CBentArrow();
case OOXMLShapes::sptCBentConnector2: return new OOXMLShapes::CBentConnector2();
case OOXMLShapes::sptCBentConnector3: return new OOXMLShapes::CBentConnector3();
case OOXMLShapes::sptCBentConnector4: return new OOXMLShapes::CBentConnector4();
case OOXMLShapes::sptCBentConnector5: return new OOXMLShapes::CBentConnector5();
case OOXMLShapes::sptCBentUpArrow: return new OOXMLShapes::CBentUpArrow();
case OOXMLShapes::sptCBevel: return new OOXMLShapes::CBevel();
case OOXMLShapes::sptCBlockArc: return new OOXMLShapes::CBlockArc();
case OOXMLShapes::sptCBorderCallout1: return new OOXMLShapes::CBorderCallout1();
case OOXMLShapes::sptCBorderCallout2: return new OOXMLShapes::CBorderCallout2();
case OOXMLShapes::sptCBorderCallout3: return new OOXMLShapes::CBorderCallout3();
case OOXMLShapes::sptCBracePair: return new OOXMLShapes::CBracePair();
case OOXMLShapes::sptCBracketPair: return new OOXMLShapes::CBracketPair();
case OOXMLShapes::sptCCallout1: return new OOXMLShapes::CCallout1();
case OOXMLShapes::sptCCallout2: return new OOXMLShapes::CCallout2();
case OOXMLShapes::sptCCallout3: return new OOXMLShapes::CCallout3();
case OOXMLShapes::sptCCan: return new OOXMLShapes::CCan();
case OOXMLShapes::sptCChartPlus: return new OOXMLShapes::CChartPlus();
case OOXMLShapes::sptCChartStar: return new OOXMLShapes::CChartStar();
case OOXMLShapes::sptCChartX: return new OOXMLShapes::CChartX();
case OOXMLShapes::sptCChevron: return new OOXMLShapes::CChevron();
case OOXMLShapes::sptCChord: return new OOXMLShapes::CChord();
case OOXMLShapes::sptCCircularArrow: return new OOXMLShapes::CCircularArrow();
case OOXMLShapes::sptCCloud: return new OOXMLShapes::CCloud();
case OOXMLShapes::sptCCloudCallout: return new OOXMLShapes::CCloudCallout();
case OOXMLShapes::sptCCorner: return new OOXMLShapes::CCorner();
case OOXMLShapes::sptCCornerTabs: return new OOXMLShapes::CCornerTabs();
case OOXMLShapes::sptCCube: return new OOXMLShapes::CCube();
case OOXMLShapes::sptCCurvedConnector2: return new OOXMLShapes::CCurvedConnector2();
case OOXMLShapes::sptCCurvedConnector3: return new OOXMLShapes::CCurvedConnector3();
case OOXMLShapes::sptCCurvedConnector4: return new OOXMLShapes::CCurvedConnector4();
case OOXMLShapes::sptCCurvedConnector5: return new OOXMLShapes::CCurvedConnector5();
case OOXMLShapes::sptCCurvedDownArrow: return new OOXMLShapes::CCurvedDownArrow();
case OOXMLShapes::sptCCurvedLeftArrow: return new OOXMLShapes::CCurvedLeftArrow();
case OOXMLShapes::sptCCurvedRightArrow: return new OOXMLShapes::CCurvedRightArrow();
case OOXMLShapes::sptCCurvedUpArrow: return new OOXMLShapes::CCurvedUpArrow();
case OOXMLShapes::sptCDecagon: return new OOXMLShapes::CDecagon();
case OOXMLShapes::sptCDiagStripe: return new OOXMLShapes::CDiagStripe();
case OOXMLShapes::sptCDiamond: return new OOXMLShapes::CDiamond();
case OOXMLShapes::sptCDodecagon: return new OOXMLShapes::CDodecagon();
case OOXMLShapes::sptCDonut: return new OOXMLShapes::CDonut();
case OOXMLShapes::sptCDoubleWave: return new OOXMLShapes::CDoubleWave();
case OOXMLShapes::sptCDownArrow: return new OOXMLShapes::CDownArrow();
case OOXMLShapes::sptCDownArrowCallout: return new OOXMLShapes::CDownArrowCallout();
case OOXMLShapes::sptCEllipse: return new OOXMLShapes::CEllipse();
case OOXMLShapes::sptCEllipseRibbon: return new OOXMLShapes::CEllipseRibbon();
case OOXMLShapes::sptCEllipseRibbon2: return new OOXMLShapes::CEllipseRibbon2();
case OOXMLShapes::sptCFlowChartAlternateProcess:return new OOXMLShapes::CFlowChartAlternateProcess();
case OOXMLShapes::sptCFlowChartCollate: return new OOXMLShapes::CFlowChartCollate();
case OOXMLShapes::sptCFlowChartConnector: return new OOXMLShapes::CFlowChartConnector();
case OOXMLShapes::sptCFlowChartDecision: return new OOXMLShapes::CFlowChartDecision();
case OOXMLShapes::sptCFlowChartDelay: return new OOXMLShapes::CFlowChartDelay();
case OOXMLShapes::sptCFlowChartDisplay: return new OOXMLShapes::CFlowChartDisplay();
case OOXMLShapes::sptCFlowChartDocument: return new OOXMLShapes::CFlowChartDocument();
case OOXMLShapes::sptCFlowChartExtract: return new OOXMLShapes::CFlowChartExtract();
case OOXMLShapes::sptCFlowChartInputOutput: return new OOXMLShapes::CFlowChartInputOutput();
case OOXMLShapes::sptCFlowChartInternalStorage: return new OOXMLShapes::CFlowChartInternalStorage();
case OOXMLShapes::sptCFlowChartMagneticDisk: return new OOXMLShapes::CFlowChartMagneticDisk();
case OOXMLShapes::sptCFlowChartMagneticDrum: return new OOXMLShapes::CFlowChartMagneticDrum();
case OOXMLShapes::sptCFlowChartMagneticTape: return new OOXMLShapes::CFlowChartMagneticTape();
case OOXMLShapes::sptCFlowChartManualInput: return new OOXMLShapes::CFlowChartManualInput();
case OOXMLShapes::sptCFlowChartMagneticDisk: return new OOXMLShapes::CFlowChartMagneticDisk();
case OOXMLShapes::sptCFlowChartMagneticDrum: return new OOXMLShapes::CFlowChartMagneticDrum();
case OOXMLShapes::sptCFlowChartMagneticTape: return new OOXMLShapes::CFlowChartMagneticTape();
case OOXMLShapes::sptCFlowChartManualInput: return new OOXMLShapes::CFlowChartManualInput();
case OOXMLShapes::sptCFlowChartManualOperation: return new OOXMLShapes::CFlowChartManualOperation();
case OOXMLShapes::sptCFlowChartMerge: return new OOXMLShapes::CFlowChartMerge();
case OOXMLShapes::sptCFlowChartMultidocument: return new OOXMLShapes::CFlowChartMultidocument();
case OOXMLShapes::sptCFlowChartOfflineStorage: return new OOXMLShapes::CFlowChartOfflineStorage();
case OOXMLShapes::sptCFlowChartMerge: return new OOXMLShapes::CFlowChartMerge();
case OOXMLShapes::sptCFlowChartMultidocument: return new OOXMLShapes::CFlowChartMultidocument();
case OOXMLShapes::sptCFlowChartOfflineStorage: return new OOXMLShapes::CFlowChartOfflineStorage();
case OOXMLShapes::sptCFlowChartOffpageConnector: return new OOXMLShapes::CFlowChartOffpageConnector();
case OOXMLShapes::sptCFlowChartOnlineStorage: return new OOXMLShapes::CFlowChartOnlineStorage();
case OOXMLShapes::sptCFlowChartOr: return new OOXMLShapes::CFlowChartOr();
case OOXMLShapes::sptCFlowChartOnlineStorage: return new OOXMLShapes::CFlowChartOnlineStorage();
case OOXMLShapes::sptCFlowChartOr: return new OOXMLShapes::CFlowChartOr();
case OOXMLShapes::sptCFlowChartPredefinedProcess: return new OOXMLShapes::CFlowChartPredefinedProcess();
case OOXMLShapes::sptCFlowChartPreparation: return new OOXMLShapes::CFlowChartPreparation();
case OOXMLShapes::sptCFlowChartProcess: return new OOXMLShapes::CFlowChartProcess();
case OOXMLShapes::sptCFlowChartPunchedCard: return new OOXMLShapes::CFlowChartPunchedCard();
case OOXMLShapes::sptCFlowChartPunchedTape: return new OOXMLShapes::CFlowChartPunchedTape();
case OOXMLShapes::sptCFlowChartSort: return new OOXMLShapes::CFlowChartSort();
case OOXMLShapes::sptCFlowChartPreparation: return new OOXMLShapes::CFlowChartPreparation();
case OOXMLShapes::sptCFlowChartProcess: return new OOXMLShapes::CFlowChartProcess();
case OOXMLShapes::sptCFlowChartPunchedCard: return new OOXMLShapes::CFlowChartPunchedCard();
case OOXMLShapes::sptCFlowChartPunchedTape: return new OOXMLShapes::CFlowChartPunchedTape();
case OOXMLShapes::sptCFlowChartSort: return new OOXMLShapes::CFlowChartSort();
case OOXMLShapes::sptCFlowChartSummingJunction: return new OOXMLShapes::CFlowChartSummingJunction();
case OOXMLShapes::sptCFlowChartTerminator: return new OOXMLShapes::CFlowChartTerminator();
case OOXMLShapes::sptCFoldedCorner: return new OOXMLShapes::CFoldedCorner();
case OOXMLShapes::sptCFrame: return new OOXMLShapes::CFrame();
case OOXMLShapes::sptCFunnel: return new OOXMLShapes::CFunnel();
case OOXMLShapes::sptCGear6: return new OOXMLShapes::CGear6();
case OOXMLShapes::sptCGear9: return new OOXMLShapes::CGear9();
case OOXMLShapes::sptCHalfFrame: return new OOXMLShapes::CHalfFrame();
case OOXMLShapes::sptCHeart: return new OOXMLShapes::CHeart();
case OOXMLShapes::sptCHeptagon: return new OOXMLShapes::CHeptagon();
case OOXMLShapes::sptCHexagon: return new OOXMLShapes::CHexagon();
case OOXMLShapes::sptCHomePlate: return new OOXMLShapes::CHomePlate();
case OOXMLShapes::sptCHorizontalScroll: return new OOXMLShapes::CHorizontalScroll();
case OOXMLShapes::sptCIrregularSeal1: return new OOXMLShapes::CIrregularSeal1();
case OOXMLShapes::sptCIrregularSeal2: return new OOXMLShapes::CIrregularSeal2();
case OOXMLShapes::sptCLeftArrow: return new OOXMLShapes::CLeftArrow();
case OOXMLShapes::sptCLeftArrowCallout: return new OOXMLShapes::CLeftArrowCallout();
case OOXMLShapes::sptCLeftBrace: return new OOXMLShapes::CLeftBrace();
case OOXMLShapes::sptCLeftBracket: return new OOXMLShapes::CLeftBracket();
case OOXMLShapes::sptCLeftCircularArrow: return new OOXMLShapes::CLeftCircularArrow();
case OOXMLShapes::sptCLeftRightArrow: return new OOXMLShapes::CLeftRightArrow();
case OOXMLShapes::sptCLeftRightArrowCallout: return new OOXMLShapes::CLeftRightArrowCallout();
case OOXMLShapes::sptCLeftRightCircularArrow: return new OOXMLShapes::CLeftRightCircularArrow();
case OOXMLShapes::sptCLeftRightRibbon: return new OOXMLShapes::CLeftRightRibbon();
case OOXMLShapes::sptCLeftRightUpArrow: return new OOXMLShapes::CLeftRightUpArrow();
case OOXMLShapes::sptCLeftUpArrow: return new OOXMLShapes::CLeftUpArrow();
case OOXMLShapes::sptCLightningBolt: return new OOXMLShapes::CLightningBolt();
case OOXMLShapes::sptCLine: return new OOXMLShapes::CLine();
case OOXMLShapes::sptCLineInv: return new OOXMLShapes::CLineInv();
case OOXMLShapes::sptCMathDivide: return new OOXMLShapes::CMathDivide();
case OOXMLShapes::sptCMathEqual: return new OOXMLShapes::CMathEqual();
case OOXMLShapes::sptCMathMinus: return new OOXMLShapes::CMathMinus();
case OOXMLShapes::sptCMathMultiply: return new OOXMLShapes::CMathMultiply();
case OOXMLShapes::sptCMathNotEqual: return new OOXMLShapes::CMathNotEqual();
case OOXMLShapes::sptCMathPlus: return new OOXMLShapes::CMathPlus();
case OOXMLShapes::sptCMoon: return new OOXMLShapes::CMoon();
case OOXMLShapes::sptCNonIsoscelesTrapezoid: return new OOXMLShapes::CNonIsoscelesTrapezoid();
case OOXMLShapes::sptCNoSmoking: return new OOXMLShapes::CNoSmoking();
case OOXMLShapes::sptCNotchedRightArrow: return new OOXMLShapes::CNotchedRightArrow();
case OOXMLShapes::sptCOctagon: return new OOXMLShapes::COctagon();
case OOXMLShapes::sptCParallelogram: return new OOXMLShapes::CParallelogram();
case OOXMLShapes::sptCPentagon: return new OOXMLShapes::CPentagon();
case OOXMLShapes::sptCPie: return new OOXMLShapes::CPie();
case OOXMLShapes::sptCPieWedge: return new OOXMLShapes::CPieWedge();
case OOXMLShapes::sptCPlaque: return new OOXMLShapes::CPlaque();
case OOXMLShapes::sptCPlaqueTabs: return new OOXMLShapes::CPlaqueTabs();
case OOXMLShapes::sptCPlus: return new OOXMLShapes::CPlus();
case OOXMLShapes::sptCQuadArrow: return new OOXMLShapes::CQuadArrow();
case OOXMLShapes::sptCQuadArrowCallout: return new OOXMLShapes::CQuadArrowCallout();
case OOXMLShapes::sptCRect: return new OOXMLShapes::CRect();
case OOXMLShapes::sptCRibbon: return new OOXMLShapes::CRibbon();
case OOXMLShapes::sptCRibbon2: return new OOXMLShapes::CRibbon2();
case OOXMLShapes::sptCRightArrow: return new OOXMLShapes::CRightArrow();
case OOXMLShapes::sptCRightArrowCallout: return new OOXMLShapes::CRightArrowCallout();
case OOXMLShapes::sptCRightBrace: return new OOXMLShapes::CRightBrace();
case OOXMLShapes::sptCRightBracket: return new OOXMLShapes::CRightBracket();
case OOXMLShapes::sptCRound1Rect: return new OOXMLShapes::CRound1Rect();
case OOXMLShapes::sptCRound2DiagRect: return new OOXMLShapes::CRound2DiagRect();
case OOXMLShapes::sptCRound2SameRect: return new OOXMLShapes::CRound2SameRect();
case OOXMLShapes::sptCRoundRect: return new OOXMLShapes::CRoundRect();
case OOXMLShapes::sptCRtTriangle: return new OOXMLShapes::CRtTriangle();
case OOXMLShapes::sptCSmileyFace: return new OOXMLShapes::CSmileyFace();
case OOXMLShapes::sptCSnip1Rect: return new OOXMLShapes::CSnip1Rect();
case OOXMLShapes::sptCSnip2DiagRect: return new OOXMLShapes::CSnip2DiagRect();
case OOXMLShapes::sptCSnip2SameRect: return new OOXMLShapes::CSnip2SameRect();
case OOXMLShapes::sptCSnipRoundRect: return new OOXMLShapes::CSnipRoundRect();
case OOXMLShapes::sptCSquareTabs: return new OOXMLShapes::CSquareTabs();
case OOXMLShapes::sptCStar10: return new OOXMLShapes::CStar10();
case OOXMLShapes::sptCStar12: return new OOXMLShapes::CStar12();
case OOXMLShapes::sptCStar16: return new OOXMLShapes::CStar16();
case OOXMLShapes::sptCStar24: return new OOXMLShapes::CStar24();
case OOXMLShapes::sptCStar32: return new OOXMLShapes::CStar32();
case OOXMLShapes::sptCStar4: return new OOXMLShapes::CStar4();
case OOXMLShapes::sptCStar5: return new OOXMLShapes::CStar5();
case OOXMLShapes::sptCStar6: return new OOXMLShapes::CStar6();
case OOXMLShapes::sptCStar7: return new OOXMLShapes::CStar7();
case OOXMLShapes::sptCStar8: return new OOXMLShapes::CStar8();
case OOXMLShapes::sptCStraightConnector1: return new OOXMLShapes::CStraightConnector1();
case OOXMLShapes::sptCStripedRightArrow: return new OOXMLShapes::CStripedRightArrow();
case OOXMLShapes::sptCSun: return new OOXMLShapes::CSun();
case OOXMLShapes::sptCSwooshArrow: return new OOXMLShapes::CSwooshArrow();
case OOXMLShapes::sptCTeardrop: return new OOXMLShapes::CTeardrop();
case OOXMLShapes::sptCTextArchDown: return new OOXMLShapes::CTextArchDown();
case OOXMLShapes::sptCTextArchDownPour: return new OOXMLShapes::CTextArchDownPour();
case OOXMLShapes::sptCTextArchUp: return new OOXMLShapes::CTextArchUp();
case OOXMLShapes::sptCTextArchUpPour: return new OOXMLShapes::CTextArchUpPour();
case OOXMLShapes::sptCTextButton: return new OOXMLShapes::CTextButton();
case OOXMLShapes::sptCTextButtonPour: return new OOXMLShapes::CTextButtonPour();
case OOXMLShapes::sptCTextCanDown: return new OOXMLShapes::CTextCanDown();
case OOXMLShapes::sptCTextCanUp: return new OOXMLShapes::CTextCanUp();
case OOXMLShapes::sptCTextCascadeDown: return new OOXMLShapes::CTextCascadeDown();
case OOXMLShapes::sptCTextCascadeUp: return new OOXMLShapes::CTextCascadeUp();
case OOXMLShapes::sptCTextChevron: return new OOXMLShapes::CTextChevron();
case OOXMLShapes::sptCTextChevronInverted: return new OOXMLShapes::CTextChevronInverted();
case OOXMLShapes::sptCTextCircle: return new OOXMLShapes::CTextCircle();
case OOXMLShapes::sptCTextCirclePour: return new OOXMLShapes::CTextCirclePour();
case OOXMLShapes::sptCTextCurveDown: return new OOXMLShapes::CTextCurveDown();
case OOXMLShapes::sptCTextCurveUp: return new OOXMLShapes::CTextCurveUp();
case OOXMLShapes::sptCTextDeflate: return new OOXMLShapes::CTextDeflate();
case OOXMLShapes::sptCTextDeflateBottom: return new OOXMLShapes::CTextDeflateBottom();
case OOXMLShapes::sptCTextDeflateInflate: return new OOXMLShapes::CTextDeflateInflate();
case OOXMLShapes::sptCTextDeflateInflateDeflate: return new OOXMLShapes::CTextDeflateInflateDeflate();
case OOXMLShapes::sptCTextDeflateTop: return new OOXMLShapes::CTextDeflateTop();
case OOXMLShapes::sptCTextDoubleWave1: return new OOXMLShapes::CTextDoubleWave1();
case OOXMLShapes::sptCTextFadeDown: return new OOXMLShapes::CTextFadeDown();
case OOXMLShapes::sptCTextFadeLeft: return new OOXMLShapes::CTextFadeLeft();
case OOXMLShapes::sptCTextFadeRight: return new OOXMLShapes::CTextFadeRight();
case OOXMLShapes::sptCTextFadeUp: return new OOXMLShapes::CTextFadeUp();
case OOXMLShapes::sptCTextInflate: return new OOXMLShapes::CTextInflate();
case OOXMLShapes::sptCTextInflateBottom: return new OOXMLShapes::CTextInflateBottom();
case OOXMLShapes::sptCTextInflateTop: return new OOXMLShapes::CTextInflateTop();
case OOXMLShapes::sptCTextPlain: return new OOXMLShapes::CTextPlain();
case OOXMLShapes::sptCTextRingInside: return new OOXMLShapes::CTextRingInside();
case OOXMLShapes::sptCTextRingOutside: return new OOXMLShapes::CTextRingOutside();
case OOXMLShapes::sptCTextSlantDown: return new OOXMLShapes::CTextSlantDown();
case OOXMLShapes::sptCTextSlantUp: return new OOXMLShapes::CTextSlantUp();
case OOXMLShapes::sptCTextStop: return new OOXMLShapes::CTextStop();
case OOXMLShapes::sptCTextTriangle: return new OOXMLShapes::CTextTriangle();
case OOXMLShapes::sptCTextTriangleInverted: return new OOXMLShapes::CTextTriangleInverted();
case OOXMLShapes::sptCTextWave1: return new OOXMLShapes::CTextWave1();
case OOXMLShapes::sptCTextWave2: return new OOXMLShapes::CTextWave2();
case OOXMLShapes::sptCTextWave4: return new OOXMLShapes::CTextWave4();
case OOXMLShapes::sptCTrapezoid: return new OOXMLShapes::CTrapezoid();
case OOXMLShapes::sptCTriangle: return new OOXMLShapes::CTriangle();
case OOXMLShapes::sptCUpArrow: return new OOXMLShapes::CUpArrow();
case OOXMLShapes::sptCUpArrowCallout: return new OOXMLShapes::CUpArrowCallout();
case OOXMLShapes::sptCUpDownArrow: return new OOXMLShapes::CUpDownArrow();
case OOXMLShapes::sptCUpDownArrowCallout: return new OOXMLShapes::CUpDownArrowCallout();
case OOXMLShapes::sptCUturnArrow: return new OOXMLShapes::CUturnArrow();
case OOXMLShapes::sptCVerticalScroll: return new OOXMLShapes::CVerticalScroll();
case OOXMLShapes::sptCWave: return new OOXMLShapes::CWave();
case OOXMLShapes::sptCWedgeEllipseCallout: return new OOXMLShapes::CWedgeEllipseCallout();
case OOXMLShapes::sptCWedgeRectCallout: return new OOXMLShapes::CWedgeRectCallout();
case OOXMLShapes::sptCWedgeRoundRectCallout: return new OOXMLShapes::CWedgeRoundRectCallout();
case OOXMLShapes::sptCFlowChartTerminator: return new OOXMLShapes::CFlowChartTerminator();
case OOXMLShapes::sptCFoldedCorner: return new OOXMLShapes::CFoldedCorner();
case OOXMLShapes::sptCFrame: return new OOXMLShapes::CFrame();
case OOXMLShapes::sptCFunnel: return new OOXMLShapes::CFunnel();
case OOXMLShapes::sptCGear6: return new OOXMLShapes::CGear6();
case OOXMLShapes::sptCGear9: return new OOXMLShapes::CGear9();
case OOXMLShapes::sptCHalfFrame: return new OOXMLShapes::CHalfFrame();
case OOXMLShapes::sptCHeart: return new OOXMLShapes::CHeart();
case OOXMLShapes::sptCHeptagon: return new OOXMLShapes::CHeptagon();
case OOXMLShapes::sptCHexagon: return new OOXMLShapes::CHexagon();
case OOXMLShapes::sptCHomePlate: return new OOXMLShapes::CHomePlate();
case OOXMLShapes::sptCHorizontalScroll: return new OOXMLShapes::CHorizontalScroll();
case OOXMLShapes::sptCIrregularSeal1: return new OOXMLShapes::CIrregularSeal1();
case OOXMLShapes::sptCIrregularSeal2: return new OOXMLShapes::CIrregularSeal2();
case OOXMLShapes::sptCLeftArrow: return new OOXMLShapes::CLeftArrow();
case OOXMLShapes::sptCLeftArrowCallout: return new OOXMLShapes::CLeftArrowCallout();
case OOXMLShapes::sptCLeftBrace: return new OOXMLShapes::CLeftBrace();
case OOXMLShapes::sptCLeftBracket: return new OOXMLShapes::CLeftBracket();
case OOXMLShapes::sptCLeftCircularArrow: return new OOXMLShapes::CLeftCircularArrow();
case OOXMLShapes::sptCLeftRightArrow: return new OOXMLShapes::CLeftRightArrow();
case OOXMLShapes::sptCLeftRightArrowCallout: return new OOXMLShapes::CLeftRightArrowCallout();
case OOXMLShapes::sptCLeftRightCircularArrow: return new OOXMLShapes::CLeftRightCircularArrow();
case OOXMLShapes::sptCLeftRightRibbon: return new OOXMLShapes::CLeftRightRibbon();
case OOXMLShapes::sptCLeftRightUpArrow: return new OOXMLShapes::CLeftRightUpArrow();
case OOXMLShapes::sptCLeftUpArrow: return new OOXMLShapes::CLeftUpArrow();
case OOXMLShapes::sptCLightningBolt: return new OOXMLShapes::CLightningBolt();
case OOXMLShapes::sptCLine: return new OOXMLShapes::CLine();
case OOXMLShapes::sptCLineInv: return new OOXMLShapes::CLineInv();
case OOXMLShapes::sptCMathDivide: return new OOXMLShapes::CMathDivide();
case OOXMLShapes::sptCMathEqual: return new OOXMLShapes::CMathEqual();
case OOXMLShapes::sptCMathMinus: return new OOXMLShapes::CMathMinus();
case OOXMLShapes::sptCMathMultiply: return new OOXMLShapes::CMathMultiply();
case OOXMLShapes::sptCMathNotEqual: return new OOXMLShapes::CMathNotEqual();
case OOXMLShapes::sptCMathPlus: return new OOXMLShapes::CMathPlus();
case OOXMLShapes::sptCMoon: return new OOXMLShapes::CMoon();
case OOXMLShapes::sptCNonIsoscelesTrapezoid: return new OOXMLShapes::CNonIsoscelesTrapezoid();
case OOXMLShapes::sptCNoSmoking: return new OOXMLShapes::CNoSmoking();
case OOXMLShapes::sptCNotchedRightArrow: return new OOXMLShapes::CNotchedRightArrow();
case OOXMLShapes::sptCOctagon: return new OOXMLShapes::COctagon();
case OOXMLShapes::sptCParallelogram: return new OOXMLShapes::CParallelogram();
case OOXMLShapes::sptCPentagon: return new OOXMLShapes::CPentagon();
case OOXMLShapes::sptCPie: return new OOXMLShapes::CPie();
case OOXMLShapes::sptCPieWedge: return new OOXMLShapes::CPieWedge();
case OOXMLShapes::sptCPlaque: return new OOXMLShapes::CPlaque();
case OOXMLShapes::sptCPlaqueTabs: return new OOXMLShapes::CPlaqueTabs();
case OOXMLShapes::sptCPlus: return new OOXMLShapes::CPlus();
case OOXMLShapes::sptCQuadArrow: return new OOXMLShapes::CQuadArrow();
case OOXMLShapes::sptCQuadArrowCallout: return new OOXMLShapes::CQuadArrowCallout();
case OOXMLShapes::sptCRect: return new OOXMLShapes::CRect();
case OOXMLShapes::sptCRibbon: return new OOXMLShapes::CRibbon();
case OOXMLShapes::sptCRibbon2: return new OOXMLShapes::CRibbon2();
case OOXMLShapes::sptCRightArrow: return new OOXMLShapes::CRightArrow();
case OOXMLShapes::sptCRightArrowCallout: return new OOXMLShapes::CRightArrowCallout();
case OOXMLShapes::sptCRightBrace: return new OOXMLShapes::CRightBrace();
case OOXMLShapes::sptCRightBracket: return new OOXMLShapes::CRightBracket();
case OOXMLShapes::sptCRound1Rect: return new OOXMLShapes::CRound1Rect();
case OOXMLShapes::sptCRound2DiagRect: return new OOXMLShapes::CRound2DiagRect();
case OOXMLShapes::sptCRound2SameRect: return new OOXMLShapes::CRound2SameRect();
case OOXMLShapes::sptCRoundRect: return new OOXMLShapes::CRoundRect();
case OOXMLShapes::sptCRtTriangle: return new OOXMLShapes::CRtTriangle();
case OOXMLShapes::sptCSmileyFace: return new OOXMLShapes::CSmileyFace();
case OOXMLShapes::sptCSnip1Rect: return new OOXMLShapes::CSnip1Rect();
case OOXMLShapes::sptCSnip2DiagRect: return new OOXMLShapes::CSnip2DiagRect();
case OOXMLShapes::sptCSnip2SameRect: return new OOXMLShapes::CSnip2SameRect();
case OOXMLShapes::sptCSnipRoundRect: return new OOXMLShapes::CSnipRoundRect();
case OOXMLShapes::sptCSquareTabs: return new OOXMLShapes::CSquareTabs();
case OOXMLShapes::sptCStar10: return new OOXMLShapes::CStar10();
case OOXMLShapes::sptCStar12: return new OOXMLShapes::CStar12();
case OOXMLShapes::sptCStar16: return new OOXMLShapes::CStar16();
case OOXMLShapes::sptCStar24: return new OOXMLShapes::CStar24();
case OOXMLShapes::sptCStar32: return new OOXMLShapes::CStar32();
case OOXMLShapes::sptCStar4: return new OOXMLShapes::CStar4();
case OOXMLShapes::sptCStar5: return new OOXMLShapes::CStar5();
case OOXMLShapes::sptCStar6: return new OOXMLShapes::CStar6();
case OOXMLShapes::sptCStar7: return new OOXMLShapes::CStar7();
case OOXMLShapes::sptCStar8: return new OOXMLShapes::CStar8();
case OOXMLShapes::sptCStraightConnector1: return new OOXMLShapes::CStraightConnector1();
case OOXMLShapes::sptCStripedRightArrow: return new OOXMLShapes::CStripedRightArrow();
case OOXMLShapes::sptCSun: return new OOXMLShapes::CSun();
case OOXMLShapes::sptCSwooshArrow: return new OOXMLShapes::CSwooshArrow();
case OOXMLShapes::sptCTeardrop: return new OOXMLShapes::CTeardrop();
case OOXMLShapes::sptCTextArchDown: return new OOXMLShapes::CTextArchDown();
case OOXMLShapes::sptCTextArchDownPour: return new OOXMLShapes::CTextArchDownPour();
case OOXMLShapes::sptCTextArchUp: return new OOXMLShapes::CTextArchUp();
case OOXMLShapes::sptCTextArchUpPour: return new OOXMLShapes::CTextArchUpPour();
case OOXMLShapes::sptCTextButton: return new OOXMLShapes::CTextButton();
case OOXMLShapes::sptCTextButtonPour: return new OOXMLShapes::CTextButtonPour();
case OOXMLShapes::sptCTextCanDown: return new OOXMLShapes::CTextCanDown();
case OOXMLShapes::sptCTextCanUp: return new OOXMLShapes::CTextCanUp();
case OOXMLShapes::sptCTextCascadeDown: return new OOXMLShapes::CTextCascadeDown();
case OOXMLShapes::sptCTextCascadeUp: return new OOXMLShapes::CTextCascadeUp();
case OOXMLShapes::sptCTextChevron: return new OOXMLShapes::CTextChevron();
case OOXMLShapes::sptCTextChevronInverted: return new OOXMLShapes::CTextChevronInverted();
case OOXMLShapes::sptCTextCircle: return new OOXMLShapes::CTextCircle();
case OOXMLShapes::sptCTextCirclePour: return new OOXMLShapes::CTextCirclePour();
case OOXMLShapes::sptCTextCurveDown: return new OOXMLShapes::CTextCurveDown();
case OOXMLShapes::sptCTextCurveUp: return new OOXMLShapes::CTextCurveUp();
case OOXMLShapes::sptCTextDeflate: return new OOXMLShapes::CTextDeflate();
case OOXMLShapes::sptCTextDeflateBottom: return new OOXMLShapes::CTextDeflateBottom();
case OOXMLShapes::sptCTextDeflateInflate: return new OOXMLShapes::CTextDeflateInflate();
case OOXMLShapes::sptCTextDeflateInflateDeflate:return new OOXMLShapes::CTextDeflateInflateDeflate();
case OOXMLShapes::sptCTextDeflateTop: return new OOXMLShapes::CTextDeflateTop();
case OOXMLShapes::sptCTextDoubleWave1: return new OOXMLShapes::CTextDoubleWave1();
case OOXMLShapes::sptCTextFadeDown: return new OOXMLShapes::CTextFadeDown();
case OOXMLShapes::sptCTextFadeLeft: return new OOXMLShapes::CTextFadeLeft();
case OOXMLShapes::sptCTextFadeRight: return new OOXMLShapes::CTextFadeRight();
case OOXMLShapes::sptCTextFadeUp: return new OOXMLShapes::CTextFadeUp();
case OOXMLShapes::sptCTextInflate: return new OOXMLShapes::CTextInflate();
case OOXMLShapes::sptCTextInflateBottom: return new OOXMLShapes::CTextInflateBottom();
case OOXMLShapes::sptCTextInflateTop: return new OOXMLShapes::CTextInflateTop();
case OOXMLShapes::sptCTextPlain: return new OOXMLShapes::CTextPlain();
case OOXMLShapes::sptCTextRingInside: return new OOXMLShapes::CTextRingInside();
case OOXMLShapes::sptCTextRingOutside: return new OOXMLShapes::CTextRingOutside();
case OOXMLShapes::sptCTextSlantDown: return new OOXMLShapes::CTextSlantDown();
case OOXMLShapes::sptCTextSlantUp: return new OOXMLShapes::CTextSlantUp();
case OOXMLShapes::sptCTextStop: return new OOXMLShapes::CTextStop();
case OOXMLShapes::sptCTextTriangle: return new OOXMLShapes::CTextTriangle();
case OOXMLShapes::sptCTextTriangleInverted: return new OOXMLShapes::CTextTriangleInverted();
case OOXMLShapes::sptCTextWave1: return new OOXMLShapes::CTextWave1();
case OOXMLShapes::sptCTextWave2: return new OOXMLShapes::CTextWave2();
case OOXMLShapes::sptCTextWave4: return new OOXMLShapes::CTextWave4();
case OOXMLShapes::sptCTrapezoid: return new OOXMLShapes::CTrapezoid();
case OOXMLShapes::sptCTriangle: return new OOXMLShapes::CTriangle();
case OOXMLShapes::sptCUpArrow: return new OOXMLShapes::CUpArrow();
case OOXMLShapes::sptCUpArrowCallout: return new OOXMLShapes::CUpArrowCallout();
case OOXMLShapes::sptCUpDownArrow: return new OOXMLShapes::CUpDownArrow();
case OOXMLShapes::sptCUpDownArrowCallout: return new OOXMLShapes::CUpDownArrowCallout();
case OOXMLShapes::sptCUturnArrow: return new OOXMLShapes::CUturnArrow();
case OOXMLShapes::sptCVerticalScroll: return new OOXMLShapes::CVerticalScroll();
case OOXMLShapes::sptCWave: return new OOXMLShapes::CWave();
case OOXMLShapes::sptCWedgeEllipseCallout: return new OOXMLShapes::CWedgeEllipseCallout();
case OOXMLShapes::sptCWedgeRectCallout: return new OOXMLShapes::CWedgeRectCallout();
case OOXMLShapes::sptCWedgeRoundRectCallout: return new OOXMLShapes::CWedgeRoundRectCallout();
}
return NULL;
}

View File

@ -508,7 +508,8 @@ public:
}
static CPPTXShape* CreateByType(OOXMLShapes::ShapeType type);
virtual const ClassType GetClassType()const
virtual const ClassType GetClassType()const
{
return NSBaseShape::pptx;
}

View File

@ -67,7 +67,6 @@ public:
CTextAttributesEx m_oText;
double m_dWidthLogic;
double m_dHeightLogic;
@ -81,7 +80,7 @@ public:
CBaseShape* m_pShape;
std::wstring m_strPPTXShape;
std::wstring m_strPPTXShape;
public:
CShape(NSBaseShape::ClassType ClassType, int ShapeType_) : m_rcBounds()
{

View File

@ -175,7 +175,7 @@ namespace NSFontCutter
template<typename T>
void WriteEmbeddedFonts(T* pWriter)
{
#if defined(BUILD_CONFIG_FULL_VERSION) && !defined(DONT_WRITE_EMBEDDED_FONTS)
#if !defined(DONT_WRITE_EMBEDDED_FONTS)
ULONG nCount = 0;
for(std::map<std::wstring, CEmbeddedFontInfo>::iterator pPair = m_mapFontsEmbeddded.begin(); pPair != m_mapFontsEmbeddded.end(); ++pPair)
@ -338,7 +338,7 @@ namespace NSFontCutter
delete [] pArrayUnicodes;
RELEASEINTERFACE(pFontConverter);
#endif // #if defined(BUILD_CONFIG_FULL_VERSION) && !defined(DONT_WRITE_EMBEDDED_FONTS)
#endif // #if !defined(DONT_WRITE_EMBEDDED_FONTS)
}
bool GenerateSafearray(USHORT **ppArray, size_t& nCount)
@ -373,7 +373,7 @@ namespace NSFontCutter
return true;
}
#if defined(BUILD_CONFIG_FULL_VERSION) && !defined(DONT_WRITE_EMBEDDED_FONTS)
#if !defined(DONT_WRITE_EMBEDDED_FONTS)
void WriteFont(std::wstring& strName, LONG& lFaceIndex, std::wstring& strFontPath, CFile* pFile, USHORT* pArrayUnicodes, size_t pArrayUnicodesLength, Fonts::IFontConverter* pFontConverter)
{
LONG lFontConverterFlag = 16; // truetype only
@ -415,7 +415,7 @@ namespace NSFontCutter
RELEASEARRAY(pArrayData);
}
#endif // #if defined(BUILD_CONFIG_FULL_VERSION) && !defined(DONT_WRITE_EMBEDDED_FONTS)
#endif // #if !defined(DONT_WRITE_EMBEDDED_FONTS)
};
}

View File

@ -42,11 +42,49 @@
#include "../../Common/DocxFormat/Source/DocxFormat/ContentTypes.h"
#include "../../Common/DocxFormat/Source/DocxFormat/External/HyperLink.h"
#include "../../Common/DocxFormat/Source/DocxFormat/FileTypes.h"
#include "../../DesktopEditor/common/Directory.h"
#include <map>
namespace PPTX
{
static std::wstring arDefDirectories [9][2] = //in ppt Directory
{
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide", L"slides"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideLayout", L"slideLayouts"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slideMaster", L"slideMasters"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesSlide", L"notesSlides"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/notesMaster", L"notesMasters"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/handoutMaster", L"handoutMasters"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments", L"comments"},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/commentAuthors", L""},
{L"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme", L"theme"},
};
static std::wstring FindFileInDirectory(std::wstring directory, std::wstring filename)
{
if (directory.empty()) return L"";
if (directory[directory.length() - 1] == FILE_SEPARATOR_CHAR)
directory = directory.substr(0, directory.length() - 1);
int pos_ppt = directory.rfind(L"ppt");
if (pos_ppt >= 0)
{
directory = directory.substr(0, pos_ppt - 1); //root directory
}
CArray<std::wstring> arrFiles = NSDirectory::GetFiles(directory, true);
for (int i = 0 ; i < arrFiles.GetCount(); i++)
{
if (std::wstring::npos != arrFiles[i].find(filename))
{
return arrFiles[i];
}
}
return L"";
}
void FileContainer::read(const OOX::CPath& filename)
{
//not implement FileContainer.read
@ -70,6 +108,39 @@ namespace PPTX
read(rels, path, map, Event);
}
OOX::CPath FileContainer::CorrectPathRels(const OOX::CPath& path, OOX::Rels::CRelationShip* relation )
{
OOX::CPath filename = path / relation->Target();
if ( NSFile::CFileBinary::Exists(filename.GetPath()) == true ) return filename;
//file_1_ (1).pptx
std::wstring strDefDirectory;
for (int i = 0; i < 9; i++)
{
if (relation->Type() == arDefDirectories[i][0])
{
strDefDirectory = arDefDirectories[i][1];
break;
}
}
OOX::CPath new_filename = strDefDirectory + FILE_SEPARATOR_STR + relation->Filename().GetFilename();
filename = path / new_filename;
if (NSFile::CFileBinary::Exists(filename.GetPath()) == false)
{
filename = FindFileInDirectory(path.GetPath(), relation->Filename().GetFilename()); // find true path by filename
if (NSFile::CFileBinary::Exists(filename.GetPath()) == false)
return filename;
}
*relation = OOX::Rels::CRelationShip( relation->rId(), relation->Type(), filename);
return filename;
}
void FileContainer::read(const OOX::CRels& rels, const OOX::CPath& path, FileMap& map, IPPTXEvent* Event)
{
bool bIsSlide = false;
@ -81,10 +152,11 @@ namespace PPTX
for (size_t i = 0; i < nCount; ++i)
{
const OOX::Rels::CRelationShip* pRelation = rels.m_arrRelations[i];
OOX::CPath normPath = path / pRelation->Target();
OOX::Rels::CRelationShip* pRelation = rels.m_arrRelations[i];
std::map<std::wstring, smart_ptr<OOX::File>>::const_iterator pPair = map.find(normPath);
OOX::CPath normPath = CorrectPathRels(path, pRelation);
std::map<std::wstring, smart_ptr<OOX::File>>::const_iterator pPair = map.find(normPath);
if (bIsSlide && (pRelation->Type() == OOX::Presentation::FileTypes::Slide))
{
@ -112,7 +184,10 @@ namespace PPTX
{
long percent = Event->GetPercent();
smart_ptr<OOX::File> file = PPTX::FileFactory::CreateFilePPTX(path, *pRelation, map);
smart_ptr<OOX::File> file = PPTX::FileFactory::CreateFilePPTX(normPath, *pRelation, map);
if (file.IsInit() == false)
continue;
map.add(normPath, file);
Add(pRelation->rId(), file);
@ -223,9 +298,11 @@ namespace PPTX
size_t nCount = rels.m_arrRelations.size();
for (size_t i = 0; i < nCount; ++i)
{
const OOX::Rels::CRelationShip* pRelation = rels.m_arrRelations[i];
OOX::Rels::CRelationShip* pRelation = rels.m_arrRelations[i];
smart_ptr<OOX::File> _file = PPTX::FileFactory::CreateFilePPTX_OnlyMedia(path, *pRelation);
OOX::CPath normPath = CorrectPathRels(path, pRelation);
smart_ptr<OOX::File> _file = PPTX::FileFactory::CreateFilePPTX_OnlyMedia(normPath, *pRelation);
Add(pRelation->rId(), _file);
}
}

View File

@ -64,6 +64,7 @@ namespace PPTX
void write(OOX::CRels& rels, const OOX::CPath& current, const OOX::CPath& directory, OOX::CContentTypes& content) const;
void WrittenSetFalse();
OOX::CPath CorrectPathRels(const OOX::CPath& path, OOX::Rels::CRelationShip* relation );
long m_lPercent;
bool m_bCancelled;

View File

@ -30,13 +30,13 @@
*
*/
#include "FileFactory.h"
#include "../../Common/DocxFormat/Source/DocxFormat/File.h"
#include "../../Common/DocxFormat/Source/DocxFormat/Rels.h"
#include "../../Common/DocxFormat/Source/DocxFormat/FileTypes.h"
#include "FileTypes.h"
#include "FileFactory.h"
#include "App.h"
#include "Core.h"
#include "Theme.h"
@ -69,11 +69,15 @@
#include "FileMap.h"
namespace PPTX
{
const smart_ptr<OOX::File> FileFactory::CreateFilePPTX(const OOX::CPath& path, const OOX::Rels::CRelationShip& relation, FileMap& map)
const smart_ptr<OOX::File> FileFactory::CreateFilePPTX(const OOX::CPath& filename, OOX::Rels::CRelationShip& relation, FileMap& map)
{
OOX::CPath filename = path / relation.Filename();
if (NSFile::CFileBinary::Exists(filename.GetPath()) == false)
{
return smart_ptr<OOX::File>(NULL);
}
if (relation.Type() == OOX::Presentation::FileTypes::App)
return smart_ptr<OOX::File>(new PPTX::App(filename, map));
@ -138,7 +142,7 @@ namespace PPTX
return smart_ptr<OOX::File>(new OOX::UnknowTypeFile());
}
const smart_ptr<OOX::File> FileFactory::CreateFilePPTX_OnlyMedia(const OOX::CPath& path, const OOX::Rels::CRelationShip& relation)
const smart_ptr<OOX::File> FileFactory::CreateFilePPTX_OnlyMedia(const OOX::CPath& norm_filename, OOX::Rels::CRelationShip& relation)
{
bool bIsDownload = false;
std::wstring strFile = relation.Filename().GetPath();
@ -152,7 +156,7 @@ namespace PPTX
if (0 == n1 || 0 == n2 || 0 == n3 || 0 == n4)
bIsDownload = true;
OOX::CPath filename = path / relation.Filename();
OOX::CPath filename = norm_filename;
if (bIsDownload)
filename = relation.Filename();

View File

@ -30,9 +30,6 @@
*
*/
#pragma once
#ifndef PPTX_FILE_FACTORY_INCLUDE_H_
#define PPTX_FILE_FACTORY_INCLUDE_H_
#include "../../Common/DocxFormat/Source/DocxFormat/File.h"
namespace OOX {namespace Rels {class CRelationShip;}}
@ -44,9 +41,7 @@ namespace PPTX
class FileFactory
{
public:
static const smart_ptr<OOX::File> CreateFilePPTX(const OOX::CPath& path, const OOX::Rels::CRelationShip& relation, FileMap& map);
static const smart_ptr<OOX::File> CreateFilePPTX_OnlyMedia(const OOX::CPath& path, const OOX::Rels::CRelationShip& relation);
static const smart_ptr<OOX::File> CreateFilePPTX(const OOX::CPath& path, OOX::Rels::CRelationShip& relation, FileMap& map);
static const smart_ptr<OOX::File> CreateFilePPTX_OnlyMedia(const OOX::CPath& path, OOX::Rels::CRelationShip& relation);
};
} // namespace PPTX
#endif // PPTX_FILE_FACTORY_INCLUDE_H_

View File

@ -33,7 +33,7 @@
#ifndef PPTXOOX_FILE_TYPES_INCLUDE_H_
#define PPTXOOX_FILE_TYPES_INCLUDE_H_
#include "../../../Common/DocxFormat/Source/DocxFormat/FileType.h"
#include "../../Common/DocxFormat/Source/DocxFormat/FileType.h"
namespace OOX
{

View File

@ -198,7 +198,7 @@ namespace PPTX
public:
int id;
std::wstring name;
std::wstring name;
nullable_string descr;
nullable_bool hidden;
nullable_string title;

View File

@ -116,16 +116,6 @@ namespace PPTX
//Надо сделать примерно также для "origin color" и setter'ы
//Нет, нет и нет!!! Setter'ы делать только в УниКолор, т.к. при установке цвета меняется его тип!
protected:
//origin color
unsigned char alpha;
unsigned char red;
unsigned char green;
unsigned char blue;
unsigned char hue;
unsigned char saturation;
unsigned char luminance;
enum ColorType {ctRGBA, ctARGB, ctBGRA, ctABGR};
virtual DWORD ApplyModifiers(const ColorType ct)const
{
@ -389,6 +379,15 @@ namespace PPTX
return 0;
}
protected:
//origin color
unsigned char alpha;
unsigned char red;
unsigned char green;
unsigned char blue;
unsigned char hue;
unsigned char saturation;
unsigned char luminance;
//Эти функции использовать для заполнения "origin color"
void SetRGB2HSL()
{

View File

@ -40,12 +40,12 @@ namespace PPTX
{
void Geometry::ConvertToCustomVML(IRenderer* pOOXToVMLRenderer, std::wstring& strPath, std::wstring& strRect, LONG& lWidth, LONG& lHeight)
{
#ifdef AVS_USE_CONVERT_PPTX_TOCUSTOM_VML
if (!pOOXToVMLRenderer) return;
NSPresentationEditor::CShapeElement* lpShapeElement = NULL;
if (this->is<PPTX::Logic::PrstGeom>())
{
const PPTX::Logic::PrstGeom lpGeom = this->as<PPTX::Logic::PrstGeom>();
const PPTX::Logic::PrstGeom & lpGeom = this->as<PPTX::Logic::PrstGeom>();
OOXMLShapes::ShapeType _lspt = PPTX2EditorAdvanced::GetShapeTypeFromStr(lpGeom.prst.get());
if(_lspt == OOXMLShapes::sptNil)
@ -57,7 +57,7 @@ namespace PPTX
}
else if (this->is<PPTX::Logic::CustGeom>())
{
const PPTX::Logic::CustGeom lpGeom = this->as<PPTX::Logic::CustGeom>();
const PPTX::Logic::CustGeom & lpGeom = this->as<PPTX::Logic::CustGeom>();
std::wstring strShape = lpGeom.GetODString();
lpShapeElement = new NSPresentationEditor::CShapeElement(strShape);
}
@ -130,7 +130,6 @@ namespace PPTX
std::to_wstring((int)(dkoefX * txRect.right)) + L"," +
std::to_wstring((int)(dkoefY * txRect.bottom));
}
#endif
}
}
}

View File

@ -60,11 +60,13 @@ namespace PPTX
return *this;
}
public:
virtual void fromXML(XmlUtils::CXmlNode& node)
private:
virtual void fromXML2(XmlUtils::CXmlNode& node, bool bClear)
{
RunElems.clear();
if (bClear)
{
RunElems.clear();
}
XmlUtils::CXmlNodes oNodes;
if (node.GetNodes(_T("*"), oNodes))
@ -94,19 +96,24 @@ namespace PPTX
//todo better check (a14 can be math, slicer)
if(oNodeChoice.GetAttributeIfExist(L"Requires", sRequires) && L"a14" == sRequires)
{
fromXML(oNodeChoice);
fromXML2(oNodeChoice, false);
}
else if (oNode.GetNode(_T("mc:Fallback"), oNodeFall))
{
fromXML(oNodeFall);
fromXML2(oNodeFall, false);
}
}
}
}
}
FillParentPointersForChilds();
}
public:
virtual void fromXML(XmlUtils::CXmlNode& node)
{
fromXML2(node, true);
}
virtual std::wstring toXML() const
{
XmlUtils::CNodeValue oValue;
@ -341,7 +348,7 @@ namespace PPTX
public:
nullable<TextParagraphPr> pPr;
std::vector<RunElem> RunElems;
std::vector<RunElem> RunElems;
nullable<RunProperties> endParaRPr;
protected:
virtual void FillParentPointersForChilds()

View File

@ -577,20 +577,20 @@ namespace PPTX
if (spPr.xfrm.is_init())
{
if (spPr.xfrm->offX.is_init())
dL = (*spPr.xfrm->offX);
dL = (*spPr.xfrm->offX) / 12700.;
if (spPr.xfrm->offY.is_init())
dT = (*spPr.xfrm->offY);
dT = (*spPr.xfrm->offY) / 12700.;
if (spPr.xfrm->extX.is_init())
dW = (*spPr.xfrm->extX);
dW = (*spPr.xfrm->extX) / 12700.;
if (spPr.xfrm->extY.is_init())
dH = (*spPr.xfrm->extY);
dH = (*spPr.xfrm->extY) / 12700.;
}
oStylesWriter.WriteAttributeCSS (_T("position"), _T("absolute"));
oStylesWriter.WriteAttributeCSS_int (_T("left"), dL);
oStylesWriter.WriteAttributeCSS_int (_T("top"), dT);
oStylesWriter.WriteAttributeCSS_int (_T("width"), dW);
oStylesWriter.WriteAttributeCSS_int (_T("height"), dH);
oStylesWriter.WriteAttributeCSS (_T("position"), _T("absolute"));
oStylesWriter.WriteAttributeCSS_int_pt (_T("left"), dL);
oStylesWriter.WriteAttributeCSS_int_pt (_T("top"), dT);
oStylesWriter.WriteAttributeCSS_int_pt (_T("width"), dW);
oStylesWriter.WriteAttributeCSS_int_pt (_T("height"), dH);
}
if (spPr.xfrm.is_init())
@ -629,9 +629,7 @@ namespace PPTX
lH = spPr.xfrm->extY.get_value_or(43200);
}
#ifdef AVS_USE_CONVERT_PPTX_TOCUSTOM_VML
spPr.Geometry.ConvertToCustomVML(pWriter->m_pOOXToVMLRenderer, strPath, strTextRect, lW, lH);
#endif
pWriter->StartNode(_T("v:shape"));

View File

@ -70,7 +70,6 @@ namespace PPTX
return Elem->toXML();
return _T("");
}
virtual void toXmlWriter(NSBinPptxRW::CXmlWriter* pWriter) const
{
if (is_init())

View File

@ -53,7 +53,10 @@ namespace PPTX
rPr = oSrc.rPr;
return *this;
}
virtual OOX::EElementType getType () const
{
return OOX::et_p_br;
}
public:
virtual void fromXML(XmlUtils::CXmlNode& node)
{

View File

@ -59,7 +59,10 @@ namespace PPTX
return *this;
}
virtual OOX::EElementType getType () const
{
return OOX::et_p_fld;
}
public:
virtual void fromXML(XmlUtils::CXmlNode& node)
{

View File

@ -54,7 +54,11 @@ namespace PPTX
MathParaWrapper& operator=(const MathParaWrapper& oSrc);
public:
virtual OOX::EElementType getType () const
{
return OOX::et_p_MathPara;
}
virtual void fromXML(XmlUtils::CXmlNode& node);
virtual std::wstring toXML() const;
@ -64,10 +68,10 @@ namespace PPTX
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const;
virtual void fromPPTY(BYTE type, NSBinPptxRW::CBinaryFileReader* pReader);
virtual std::wstring GetText() const;
public:
nullable<OOX::Logic::COMathPara> m_oMathPara;
nullable<OOX::Logic::COMath> m_oMath;
nullable_string m_oXml;
nullable<OOX::Logic::COMathPara> m_oMathPara;
nullable<OOX::Logic::COMath> m_oMath;
nullable_string m_oXml;
protected:
virtual void FillParentPointersForChilds(){}
};

View File

@ -55,7 +55,10 @@ namespace PPTX
return *this;
}
virtual OOX::EElementType getType () const
{
return OOX::et_p_r;
}
public:
virtual void fromXML(XmlUtils::CXmlNode& node)
{

View File

@ -32,13 +32,187 @@
#include "Shape.h"
#include "./../SlideLayout.h"
#include "./../SlideMaster.h"
#include "./../Slide.h"
#include "../SlideLayout.h"
#include "../SlideMaster.h"
#include "../Slide.h"
#include "SpTree.h"
#include "../../../ASCOfficeOdfFileW/source/Oox2OdfConverter/VmlShapeTypes2Oox.h"
namespace PPTX
{
OOX::Vml::SptType static Spt2ShapeType(SimpleTypes::EShapeType type)
{
switch(type)
{
case SimpleTypes::shapetypeRect : return OOX::Vml::sptRectangle ;
case SimpleTypes::shapetypeRoundRect : return OOX::Vml::sptRoundRectangle ;
case SimpleTypes::shapetypeEllipse : return OOX::Vml::sptEllipse ;
case SimpleTypes::shapetypeDiamond : return OOX::Vml::sptDiamond ;
case SimpleTypes::shapetypeTriangle : return OOX::Vml::sptIsocelesTriangle ;
case SimpleTypes::shapetypeRtTriangle : return OOX::Vml::sptRightTriangle ;
case SimpleTypes::shapetypeParallelogram : return OOX::Vml::sptParallelogram ;
case SimpleTypes::shapetypeTrapezoid : return OOX::Vml::sptTrapezoid ;
case SimpleTypes::shapetypeHexagon : return OOX::Vml::sptHexagon ;
case SimpleTypes::shapetypeOctagon : return OOX::Vml::sptOctagon ;
case SimpleTypes::shapetypePlus : return OOX::Vml::sptPlus ;
case SimpleTypes::shapetypeStar5 : return OOX::Vml::sptStar ;
case SimpleTypes::shapetypeRightArrow: return OOX::Vml::sptArrow ;
case SimpleTypes::shapetypeThickArrow: return OOX::Vml::sptThickArrow ;
case SimpleTypes::shapetypeHomePlate : return OOX::Vml::sptHomePlate ;
case SimpleTypes::shapetypeCube : return OOX::Vml::sptCube ;
case SimpleTypes::shapetypeBallon : return OOX::Vml::sptBalloon ;
// case SimpleTypes::shapetypeIrregularSeal1: return OOX::Vml::sptSeal ;
case SimpleTypes::shapetypeArc : return OOX::Vml::sptArc ;
case SimpleTypes::shapetypeLine : return OOX::Vml::sptLine ;
case SimpleTypes::shapetypePlaque : return OOX::Vml::sptPlaque ;
case SimpleTypes::shapetypeCan : return OOX::Vml::sptCan ;
case SimpleTypes::shapetypeDonut : return OOX::Vml::sptDonut ;
// case SimpleTypes::shapetypeTextSimple : return OOX::Vml::sptTextSimple ;
// case SimpleTypes::shapetypeTextOctagon : return OOX::Vml::sptTextOctagon ;
// case SimpleTypes::shapetypeTextHexagon : return OOX::Vml::sptTextHexagon ;
// case SimpleTypes::shapetypeTextCurve : return OOX::Vml::sptTextCurve ;
// case SimpleTypes::shapetypeTextWave : return OOX::Vml::sptTextWave ;
// case SimpleTypes::shapetypeTextRing : return OOX::Vml::sptTextRing ;
// case SimpleTypes::shapetypeTextOnCurve : return OOX::Vml::sptTextOnCurve ;
// case SimpleTypes::shapetypeTextOnRing : return OOX::Vml::sptTextOnRing ;
case SimpleTypes::shapetypeStraightConnector1: return OOX::Vml::sptStraightConnector1 ;
case SimpleTypes::shapetypeBentConnector2 : return OOX::Vml::sptBentConnector2 ;
case SimpleTypes::shapetypeBentConnector3 : return OOX::Vml::sptBentConnector3 ;
case SimpleTypes::shapetypeBentConnector4 : return OOX::Vml::sptBentConnector4 ;
case SimpleTypes::shapetypeBentConnector5 : return OOX::Vml::sptBentConnector5 ;
case SimpleTypes::shapetypeCurvedConnector2 : return OOX::Vml::sptCurvedConnector2 ;
case SimpleTypes::shapetypeCurvedConnector3 : return OOX::Vml::sptCurvedConnector3 ;
case SimpleTypes::shapetypeCurvedConnector4 : return OOX::Vml::sptCurvedConnector4 ;
case SimpleTypes::shapetypeCurvedConnector5 : return OOX::Vml::sptCurvedConnector5 ;
case SimpleTypes::shapetypeCallout1 : return OOX::Vml::sptCallout1 ;
case SimpleTypes::shapetypeCallout2 : return OOX::Vml::sptCallout2 ;
case SimpleTypes::shapetypeCallout3 : return OOX::Vml::sptCallout3 ;
case SimpleTypes::shapetypeAccentCallout1 : return OOX::Vml::sptAccentCallout1 ;
case SimpleTypes::shapetypeAccentCallout2 : return OOX::Vml::sptAccentCallout2 ;
case SimpleTypes::shapetypeAccentCallout3 : return OOX::Vml::sptAccentCallout3 ;
case SimpleTypes::shapetypeAccentBorderCallout1 : return OOX::Vml::sptAccentBorderCallout1 ;
case SimpleTypes::shapetypeAccentBorderCallout2 : return OOX::Vml::sptAccentBorderCallout2 ;
case SimpleTypes::shapetypeAccentBorderCallout3 : return OOX::Vml::sptAccentBorderCallout3 ;
case SimpleTypes::shapetypeRibbon : return OOX::Vml::sptRibbon ;
case SimpleTypes::shapetypeRibbon2 : return OOX::Vml::sptRibbon2 ;
case SimpleTypes::shapetypeChevron : return OOX::Vml::sptChevron ;
case SimpleTypes::shapetypePentagon : return OOX::Vml::sptPentagon ;
case SimpleTypes::shapetypeNoSmoking : return OOX::Vml::sptNoSmoking ;
case SimpleTypes::shapetypeStar8 : return OOX::Vml::sptSeal8 ;
case SimpleTypes::shapetypeStar16 : return OOX::Vml::sptSeal16 ;
case SimpleTypes::shapetypeStar32 : return OOX::Vml::sptSeal32 ;
case SimpleTypes::shapetypeWedgeRectCallout : return OOX::Vml::sptWedgeRectCallout ;
case SimpleTypes::shapetypeWedgeRoundRectCallout : return OOX::Vml::sptWedgeRRectCallout ;
case SimpleTypes::shapetypeWedgeEllipseCallout : return OOX::Vml::sptWedgeEllipseCallout ;
case SimpleTypes::shapetypeWave : return OOX::Vml::sptWave ;
case SimpleTypes::shapetypeFoldedCorner : return OOX::Vml::sptFoldedCorner ;
case SimpleTypes::shapetypeLeftArrow : return OOX::Vml::sptLeftArrow ;
case SimpleTypes::shapetypeDownArrow : return OOX::Vml::sptDownArrow ;
case SimpleTypes::shapetypeUpArrow : return OOX::Vml::sptUpArrow ;
case SimpleTypes::shapetypeLeftRightArrow : return OOX::Vml::sptLeftRightArrow ;
case SimpleTypes::shapetypeUpDownArrow : return OOX::Vml::sptUpDownArrow ;
case SimpleTypes::shapetypeIrregularSeal1 : return OOX::Vml::sptIrregularSeal1 ;
case SimpleTypes::shapetypeIrregularSeal2 : return OOX::Vml::sptIrregularSeal2 ;
case SimpleTypes::shapetypeLightningBolt : return OOX::Vml::sptLightningBolt ;
case SimpleTypes::shapetypeHeart : return OOX::Vml::sptHeart ;
case SimpleTypes::shapetypeQuadArrow : return OOX::Vml::sptQuadArrow ;
case SimpleTypes::shapetypeLeftArrowCallout : return OOX::Vml::sptLeftArrowCallout ;
case SimpleTypes::shapetypeRightArrowCallout : return OOX::Vml::sptRightArrowCallout ;
case SimpleTypes::shapetypeUpArrowCallout : return OOX::Vml::sptUpArrowCallout ;
case SimpleTypes::shapetypeDownArrowCallout : return OOX::Vml::sptDownArrowCallout ;
case SimpleTypes::shapetypeLeftRightArrowCallout : return OOX::Vml::sptLeftRightArrowCallout ;
case SimpleTypes::shapetypeUpDownArrowCallout : return OOX::Vml::sptUpDownArrowCallout ;
case SimpleTypes::shapetypeQuadArrowCallout : return OOX::Vml::sptQuadArrowCallout ;
case SimpleTypes::shapetypeBevel : return OOX::Vml::sptBevel ;
case SimpleTypes::shapetypeLeftBracket : return OOX::Vml::sptLeftBracket ;
case SimpleTypes::shapetypeRightBracket : return OOX::Vml::sptRightBracket ;
case SimpleTypes::shapetypeLeftBrace : return OOX::Vml::sptLeftBrace ;
case SimpleTypes::shapetypeRightBrace : return OOX::Vml::sptRightBrace ;
case SimpleTypes::shapetypeLeftUpArrow : return OOX::Vml::sptLeftUpArrow ;
case SimpleTypes::shapetypeBentUpArrow : return OOX::Vml::sptBentUpArrow ;
case SimpleTypes::shapetypeBentArrow : return OOX::Vml::sptBentArrow ;
case SimpleTypes::shapetypeStar24 : return OOX::Vml::sptSeal24 ;
case SimpleTypes::shapetypeStripedRightArrow : return OOX::Vml::sptStripedRightArrow ;
case SimpleTypes::shapetypeNotchedRightArrow : return OOX::Vml::sptNotchedRightArrow ;
case SimpleTypes::shapetypeBlockArc : return OOX::Vml::sptBlockArc ;
case SimpleTypes::shapetypeSmileyFace : return OOX::Vml::sptSmileyFace ;
case SimpleTypes::shapetypeVerticalScroll : return OOX::Vml::sptVerticalScroll ;
case SimpleTypes::shapetypeHorizontalScroll : return OOX::Vml::sptHorizontalScroll ;
case SimpleTypes::shapetypeCircularArrow : return OOX::Vml::sptCircularArrow ;
// case SimpleTypes::shapetypeNotchedCircularArrow : return OOX::Vml::sptNotchedCircularArrow ;
case SimpleTypes::shapetypeUturnArrow : return OOX::Vml::sptUturnArrow ;
case SimpleTypes::shapetypeCurvedRightArrow : return OOX::Vml::sptCurvedRightArrow ;
case SimpleTypes::shapetypeCurvedLeftArrow : return OOX::Vml::sptCurvedLeftArrow ;
case SimpleTypes::shapetypeCurvedUpArrow : return OOX::Vml::sptCurvedUpArrow ;
case SimpleTypes::shapetypeCurvedDownArrow : return OOX::Vml::sptCurvedDownArrow ;
case SimpleTypes::shapetypeCloudCallout : return OOX::Vml::sptCloudCallout ;
case SimpleTypes::shapetypeEllipseRibbon : return OOX::Vml::sptEllipseRibbon ;
case SimpleTypes::shapetypeEllipseRibbon2 : return OOX::Vml::sptEllipseRibbon2 ;
case SimpleTypes::shapetypeFlowChartProcess : return OOX::Vml::sptFlowChartProcess ;
case SimpleTypes::shapetypeFlowChartDecision : return OOX::Vml::sptFlowChartDecision ;
case SimpleTypes::shapetypeFlowChartInputOutput : return OOX::Vml::sptFlowChartInputOutput ;
case SimpleTypes::shapetypeFlowChartInternalStorage : return OOX::Vml::sptFlowChartInternalStorage ;
case SimpleTypes::shapetypeFlowChartDocument : return OOX::Vml::sptFlowChartDocument ;
case SimpleTypes::shapetypeFlowChartMultidocument : return OOX::Vml::sptFlowChartMultidocument ;
case SimpleTypes::shapetypeFlowChartTerminator : return OOX::Vml::sptFlowChartTerminator ;
case SimpleTypes::shapetypeFlowChartPreparation : return OOX::Vml::sptFlowChartPreparation ;
case SimpleTypes::shapetypeFlowChartManualInput : return OOX::Vml::sptFlowChartManualInput ;
case SimpleTypes::shapetypeFlowChartManualOperation : return OOX::Vml::sptFlowChartManualOperation ;
case SimpleTypes::shapetypeFlowChartConnector : return OOX::Vml::sptFlowChartConnector ;
case SimpleTypes::shapetypeFlowChartPunchedCard : return OOX::Vml::sptFlowChartPunchedCard ;
case SimpleTypes::shapetypeFlowChartPunchedTape : return OOX::Vml::sptFlowChartPunchedTape ;
case SimpleTypes::shapetypeFlowChartSummingJunction : return OOX::Vml::sptFlowChartSummingJunction ;
case SimpleTypes::shapetypeFlowChartOr : return OOX::Vml::sptFlowChartOr ;
case SimpleTypes::shapetypeFlowChartCollate : return OOX::Vml::sptFlowChartCollate ;
case SimpleTypes::shapetypeFlowChartSort : return OOX::Vml::sptFlowChartSort ;
case SimpleTypes::shapetypeFlowChartExtract : return OOX::Vml::sptFlowChartExtract ;
case SimpleTypes::shapetypeFlowChartMerge : return OOX::Vml::sptFlowChartMerge ;
//case SimpleTypes::shapetypeChartOfflineStorage : return OOX::Vml::sptFlowChartOfflineStorage ;
case SimpleTypes::shapetypeFlowChartOnlineStorage: return OOX::Vml::sptFlowChartOnlineStorage ;
case SimpleTypes::shapetypeFlowChartMagneticTape : return OOX::Vml::sptFlowChartMagneticTape ;
case SimpleTypes::shapetypeFlowChartMagneticDisk : return OOX::Vml::sptFlowChartMagneticDisk ;
case SimpleTypes::shapetypeFlowChartMagneticDrum : return OOX::Vml::sptFlowChartMagneticDrum ;
case SimpleTypes::shapetypeFlowChartDisplay : return OOX::Vml::sptFlowChartDisplay ;
case SimpleTypes::shapetypeFlowChartDelay : return OOX::Vml::sptFlowChartDelay ;
// case SimpleTypes::shapetypeTextWave3 : return OOX::Vml::sptTextWave3 ;
case SimpleTypes::shapetypeTextInflateBottom : return OOX::Vml::sptTextInflateBottom ;
case SimpleTypes::shapetypeTextDeflateBottom : return OOX::Vml::sptTextDeflateBottom ;
case SimpleTypes::shapetypeTextInflateTop : return OOX::Vml::sptTextInflateTop ;
case SimpleTypes::shapetypeTextDeflateTop : return OOX::Vml::sptTextDeflateTop ;
case SimpleTypes::shapetypeTextDeflateInflate: return OOX::Vml::sptTextDeflateInflate ;
case SimpleTypes::shapetypeTextFadeRight : return OOX::Vml::sptTextFadeRight ;
case SimpleTypes::shapetypeTextFadeLeft : return OOX::Vml::sptTextFadeLeft ;
case SimpleTypes::shapetypeTextFadeUp : return OOX::Vml::sptTextFadeUp ;
case SimpleTypes::shapetypeTextFadeDown : return OOX::Vml::sptTextFadeDown ;
case SimpleTypes::shapetypeBorderCallout1 : return OOX::Vml::sptBorderCallout1 ;
case SimpleTypes::shapetypeBorderCallout2 : return OOX::Vml::sptBorderCallout2 ;
case SimpleTypes::shapetypeBorderCallout3 : return OOX::Vml::sptBorderCallout3 ;
case SimpleTypes::shapetypeLeftRightUpArrow : return OOX::Vml::sptLeftRightUpArrow ;
case SimpleTypes::shapetypeSun : return OOX::Vml::sptSun ;
case SimpleTypes::shapetypeMoon : return OOX::Vml::sptMoon ;
case SimpleTypes::shapetypeBracketPair : return OOX::Vml::sptBracketPair ;
case SimpleTypes::shapetypeBracePair : return OOX::Vml::sptBracePair ;
case SimpleTypes::shapetypeStar4 : return OOX::Vml::sptSeal4 ;
case SimpleTypes::shapetypeDoubleWave : return OOX::Vml::sptDoubleWave ;
case SimpleTypes::shapetypeActionButtonBlank : return OOX::Vml::sptActionButtonBlank ;
case SimpleTypes::shapetypeActionButtonHome : return OOX::Vml::sptActionButtonHome ;
case SimpleTypes::shapetypeActionButtonHelp : return OOX::Vml::sptActionButtonHelp ;
case SimpleTypes::shapetypeActionButtonInformation : return OOX::Vml::sptActionButtonInformation ;
case SimpleTypes::shapetypeActionButtonForwardNext : return OOX::Vml::sptActionButtonForwardNext ;
case SimpleTypes::shapetypeActionButtonBackPrevious : return OOX::Vml::sptActionButtonBackPrevious ;
case SimpleTypes::shapetypeActionButtonEnd : return OOX::Vml::sptActionButtonEnd ;
case SimpleTypes::shapetypeActionButtonBeginning : return OOX::Vml::sptActionButtonBeginning ;
case SimpleTypes::shapetypeActionButtonReturn : return OOX::Vml::sptActionButtonReturn ;
case SimpleTypes::shapetypeActionButtonDocument : return OOX::Vml::sptActionButtonDocument ;
case SimpleTypes::shapetypeActionButtonSound : return OOX::Vml::sptActionButtonSound ;
case SimpleTypes::shapetypeActionButtonMovie : return OOX::Vml::sptActionButtonMovie ;
default:
return OOX::Vml::sptNotPrimitive;
}
}
namespace Logic
{
Shape::Shape()
@ -408,9 +582,8 @@ namespace PPTX
lH = spPr.xfrm->extY.get_value_or(43200);
}
bool bOle = false;
#ifdef AVS_USE_CONVERT_PPTX_TOCUSTOM_VML
spPr.Geometry.ConvertToCustomVML(pWriter->m_pOOXToVMLRenderer, strPath, strTextRect, lW, lH);
#endif
std::wstring strId = L"shape " + std::to_wstring(pWriter->m_lObjectIdVML);
std::wstring strSpid = L"_x" + std::to_wstring(0xFFFF & (pWriter->m_lObjectIdVML >> 16)) + L"_s" + std::to_wstring(0xFFFF & pWriter->m_lObjectIdVML);
@ -430,8 +603,19 @@ namespace PPTX
pWriter->StartAttributes();
pWriter->WriteAttribute(L"id", strId);
pWriter->WriteAttribute(L"o:spid", strSpid);
pWriter->WriteAttribute(L"id", strId);
pWriter->WriteAttribute(L"o:spid", strSpid);
if (spPr.Geometry.is<PrstGeom>())
{
const PPTX::Logic::PrstGeom & lpGeom = spPr.Geometry.as<PPTX::Logic::PrstGeom>();
SimpleTypes::CShapeType<> ooxPrst = SimpleTypes::CShapeType<>(lpGeom.prst.get());
OOX::Vml::SptType vmlPrst = Spt2ShapeType( ooxPrst.GetValue());
if (vmlPrst != OOX::Vml::sptNotPrimitive)
pWriter->WriteAttribute(L"o:spt", (int)vmlPrst);
}
NSBinPptxRW::CXmlWriter oStylesWriter;
if (spPr.xfrm.is_init())
@ -543,19 +727,19 @@ namespace PPTX
if (spPr.xfrm.is_init())
{
if (spPr.xfrm->offX.is_init())
dL = (*spPr.xfrm->offX);
dL = (*spPr.xfrm->offX) / 12700.;
if (spPr.xfrm->offY.is_init())
dT = (*spPr.xfrm->offY);
dT = (*spPr.xfrm->offY) / 12700.;
if (spPr.xfrm->extX.is_init())
dW = (*spPr.xfrm->extX);
dW = (*spPr.xfrm->extX) / 12700.;
if (spPr.xfrm->extY.is_init())
dH = (*spPr.xfrm->extY);
dH = (*spPr.xfrm->extY / 12700.);
}
oStylesWriter.WriteAttributeCSS(_T("position"), _T("absolute"));
oStylesWriter.WriteAttributeCSS_int(_T("left"), dL);
oStylesWriter.WriteAttributeCSS_int(_T("top"), dT);
oStylesWriter.WriteAttributeCSS_int(_T("width"), dW);
oStylesWriter.WriteAttributeCSS_int(_T("height"), dH);
oStylesWriter.WriteAttributeCSS(L"position", L"absolute");
oStylesWriter.WriteAttributeCSS_int_pt(L"left", dL);
oStylesWriter.WriteAttributeCSS_int_pt(L"top", dT);
oStylesWriter.WriteAttributeCSS_int_pt(L"width", dW);
oStylesWriter.WriteAttributeCSS_int_pt(L"height", dH);
if (spPr.xfrm.is_init())
{
@ -614,6 +798,16 @@ namespace PPTX
pWriter->WriteAttribute(_T("id"), strId);
pWriter->WriteAttribute(_T("o:spid"), strSpid);
if (spPr.Geometry.is<PrstGeom>())
{
const PPTX::Logic::PrstGeom & lpGeom = spPr.Geometry.as<PPTX::Logic::PrstGeom>();
SimpleTypes::CShapeType<> ooxPrst = SimpleTypes::CShapeType<>(lpGeom.prst.get());
OOX::Vml::SptType vmlPrst = Spt2ShapeType( ooxPrst.GetValue());
if (vmlPrst != OOX::Vml::sptNotPrimitive)
pWriter->WriteAttribute(L"o:spt", (int)vmlPrst);
}
pWriter->WriteAttribute(_T("style"), oStylesWriter.GetXmlString());
if(!bOle)

View File

@ -57,7 +57,8 @@ namespace PPTX
pWriter->WriteAttribute(L"o:spid", strSpid);
NSBinPptxRW::CXmlWriter oStylesWriter;
if (_T("") != pWriter->m_strStyleMain)
if (!pWriter->m_strStyleMain.empty())
{
if (grpSpPr.xfrm.is_init())
{
@ -101,21 +102,21 @@ namespace PPTX
if (grpSpPr.xfrm.is_init())
{
if (grpSpPr.xfrm->offX.is_init())
dL = (*grpSpPr.xfrm->offX);
dL = (*grpSpPr.xfrm->offX) / 12700.;
if (grpSpPr.xfrm->offY.is_init())
dT = (*grpSpPr.xfrm->offY);
dT = (*grpSpPr.xfrm->offY) / 12700.;
if (grpSpPr.xfrm->extX.is_init())
dW = (*grpSpPr.xfrm->extX);
dW = (*grpSpPr.xfrm->extX) / 12700.;
if (grpSpPr.xfrm->extY.is_init())
dH = (*grpSpPr.xfrm->extY);
dH = (*grpSpPr.xfrm->extY) / 12700.;
}
oStylesWriter.ClearNoAttack();
oStylesWriter.WriteAttributeCSS(_T("position"), _T("absolute"));
oStylesWriter.WriteAttributeCSS_int(_T("left"), dL);
oStylesWriter.WriteAttributeCSS_int(_T("top"), dT);
oStylesWriter.WriteAttributeCSS_int(_T("width"), dW);
oStylesWriter.WriteAttributeCSS_int(_T("height"), dH);
oStylesWriter.WriteAttributeCSS(L"position", L"absolute");
oStylesWriter.WriteAttributeCSS_int_pt(L"left", dL);
oStylesWriter.WriteAttributeCSS_int_pt(L"top", dT);
oStylesWriter.WriteAttributeCSS_int_pt(L"width", dW);
oStylesWriter.WriteAttributeCSS_int_pt(L"height", dH);
if (grpSpPr.xfrm.is_init())
{
@ -156,13 +157,13 @@ namespace PPTX
if (grpSpPr.xfrm.is_init())
{
if (grpSpPr.xfrm->chOffX.is_init())
dL = (*grpSpPr.xfrm->chOffX);
dL = (*grpSpPr.xfrm->chOffX) / 12700.;
if (grpSpPr.xfrm->chOffY.is_init())
dT = (*grpSpPr.xfrm->chOffY);
dT = (*grpSpPr.xfrm->chOffY) / 12700.;
if (grpSpPr.xfrm->chExtX.is_init())
dW = (*grpSpPr.xfrm->chExtX);
dW = (*grpSpPr.xfrm->chExtX) / 12700.;
if (grpSpPr.xfrm->chExtY.is_init())
dH = (*grpSpPr.xfrm->chExtY);
dH = (*grpSpPr.xfrm->chExtY) / 12700.;
}
oStylesWriter.ClearNoAttack();
oStylesWriter.m_oWriter.AddSize(30);

View File

@ -135,7 +135,7 @@ namespace PPTX
BYTE A = (BYTE)((ARGB >> 24) & 0xFF);
if (A != 255)
{
int fopacity = (int)(((double)A / 255.0) * 65536);
int fopacity = 100 - (int)(((double)A / 255.0) * 65536);
strNode = _T("<v:fill opacity=\"") + std::to_wstring(fopacity) + _T("f\" />");
}
}
@ -150,7 +150,7 @@ namespace PPTX
BYTE A = (BYTE)((ARGB >> 24) & 0xFF);
if (A != 255)
{
int fopacity = (int)(((double)A / 255.0) * 65536);
int fopacity = 100 - (int)(((double)A / 255.0) * 65536);
strNode = _T("<v:fill opacity=\"") + std::to_wstring(fopacity) + _T("f\" />");
}
}

View File

@ -121,9 +121,11 @@ namespace PPTX
theme_= (FileContainer::Get(OOX::Presentation::FileTypes::ThemePPTX)).smart_dynamic_cast<PPTX::Theme>();
if (theme_.IsInit())
{
theme_->SetColorMap(clrMap);
tableStyles_ = (theme_->presentation->Get(OOX::Presentation::FileTypes::TableStyles)).smart_dynamic_cast<PPTX::TableStyles>();
tableStyles_ = (theme_->presentation->Get(OOX::Presentation::FileTypes::TableStyles)).smart_dynamic_cast<PPTX::TableStyles>();
}
}
virtual void toPPTY(NSBinPptxRW::CBinaryFileWriter* pWriter) const

View File

@ -407,14 +407,20 @@ namespace PPTX
Layout = FileContainer::Get(OOX::Presentation::FileTypes::SlideLayout).smart_dynamic_cast<PPTX::SlideLayout>();//boost::shared_dynamic_cast<PPTX::SlideLayout, PPTX::File>(FileContainer::get(OOX::Presentation::FileTypes::SlideLayout));
Note = FileContainer::Get(OOX::Presentation::FileTypes::NotesSlide).smart_dynamic_cast<PPTX::NotesSlide>();
comments = FileContainer::Get(OOX::Presentation::FileTypes::SlideComments).smart_dynamic_cast<PPTX::Comments>();
Master = Layout->Master;
theme = Layout->theme;
tableStyles_= theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles).smart_dynamic_cast<PPTX::TableStyles>();//boost::shared_dynamic_cast<PPTX::TableStyles, PPTX::File>(Theme->Presentation->get(OOX::Presentation::FileTypes::TableStyles));
if (IsExist(OOX::Presentation::FileTypes::VmlDrawing))
if (Layout.IsInit())
{
Vml = FileContainer::Get(OOX::Presentation::FileTypes::VmlDrawing).smart_dynamic_cast<OOX::CVmlDrawing>();//boost::shared_dynamic_cast<PPTX::VmlDrawing, PPTX::File>(FileContainer::get(OOX::Presentation::FileTypes::VmlDrawing));
Master = Layout->Master;
theme = Layout->theme;
if (theme.IsInit())
{
tableStyles_= theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles).smart_dynamic_cast<PPTX::TableStyles>();//boost::shared_dynamic_cast<PPTX::TableStyles, PPTX::File>(Theme->Presentation->get(OOX::Presentation::FileTypes::TableStyles));
}
if (IsExist(OOX::Presentation::FileTypes::VmlDrawing))
{
Vml = FileContainer::Get(OOX::Presentation::FileTypes::VmlDrawing).smart_dynamic_cast<OOX::CVmlDrawing>();//boost::shared_dynamic_cast<PPTX::VmlDrawing, PPTX::File>(FileContainer::get(OOX::Presentation::FileTypes::VmlDrawing));
}
}
}

View File

@ -478,11 +478,13 @@ namespace PPTX
Master = pFile.smart_dynamic_cast<PPTX::SlideMaster>();
if (Master.IsInit())
{
theme = Master->theme;
if (theme.IsInit())
{
tableStyles = theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles).smart_dynamic_cast<PPTX::TableStyles>();
if (theme.IsInit())
{
tableStyles = theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles).smart_dynamic_cast<PPTX::TableStyles>();
}
}
if (IsExist(OOX::Presentation::FileTypes::VmlDrawing))
{

View File

@ -76,7 +76,7 @@ namespace PPTX
public:
virtual void read(const OOX::CPath& filename, FileMap& map)
{
//FileContainer::read(filename, map);
//FileContainer::read(filename, map);
XmlUtils::CXmlNode oNode;
oNode.FromXmlFile(filename.m_strFilename);
@ -516,9 +516,11 @@ namespace PPTX
theme = (FileContainer::Get(OOX::Presentation::FileTypes::ThemePPTX)).smart_dynamic_cast<PPTX::Theme>();
if (theme.IsInit())
{
theme->SetColorMap(clrMap);
//Theme->Master.reset((PPTX::WrapperFile*)this);
tableStyles = (theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles)).smart_dynamic_cast<PPTX::TableStyles>();
//Theme->Master.reset((PPTX::WrapperFile*)this);
tableStyles = (theme->presentation->Get(OOX::Presentation::FileTypes::TableStyles)).smart_dynamic_cast<PPTX::TableStyles>();
}
if (IsExist(OOX::Presentation::FileTypes::VmlDrawing))
{

View File

@ -32,10 +32,8 @@ DEFINES += UNICODE \
PPT_DEF\
ENABLE_PPT_TO_PPTX_CONVERT \
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML \
NODOCX \
#DISABLE_FILE_DOWNLOADER \
CXIMAGE_DONT_DECLARE_TCHAR \
BUILD_CONFIG_FULL_VERSION \
DONT_WRITE_EMBEDDED_FONTS \
CXIMAGE_DONT_DECLARE_TCHAR \
LIBXML_READER_ENABLED

View File

@ -45,7 +45,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\Common\ASCDocxFormat\Source\Utility;..\..\Common\ASCDocxFormat\Source\XML;..\..\Common\ASCDocxFormat\Source\;.\;..\..\Common\DocxFormat\Source\XML\libxml2\XML\include;&quot;../../DesktopEditor/freetype-2.5.2/include&quot;"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_MATH_DEFINES;NODOCX;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;_AVS_PPT_SHAPE_INCLUDE_;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;BUILD_CONFIG_FULL_VERSION;DONT_WRITE_EMBEDDED_FONTS"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_MATH_DEFINES;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@ -663,26 +663,6 @@
RelativePath="..\..\Common\DocxFormat\Source\SystemUtility\SystemUtility.h"
>
</File>
<Filter
Name="System"
>
<File
RelativePath="..\.\Directory.h"
>
</File>
<File
RelativePath="..\.\File.cpp"
>
</File>
<File
RelativePath="..\.\File.h"
>
</File>
<File
RelativePath="..\.\Settings.h"
>
</File>
</Filter>
</Filter>
<Filter
Name="ContentTypes"
@ -715,6 +695,22 @@
<Filter
Name="Core"
>
<File
RelativePath="..\Editor\Drawing\Shapes\BaseShape\baseshape.h"
>
</File>
<File
RelativePath="..\Editor\Drawing\Shapes\BaseShape\PPTShape\pptshape.h"
>
</File>
<File
RelativePath="..\Editor\Drawing\Shapes\BaseShape\PPTXShape\PPTXShape.h"
>
</File>
<File
RelativePath="..\Editor\Drawing\Shapes\shape.h"
>
</File>
</Filter>
<Filter
Name="HandoutMasters"

View File

@ -19,7 +19,15 @@ include(../../../Common/base.pri)
#BOOST
include($$PWD/../../../Common/3dParty/boost/boost.pri)
DEFINES += UNICODE _UNICODE _USE_LIBXML2_READER_ _USE_XMLLITE_READER_ USE_LITE_READER LIBXML_READER_ENABLED PPT_DEF
DEFINES += UNICODE _UNICODE \
_USE_LIBXML2_READER_ \
_USE_XMLLITE_READER_ \
USE_LITE_READER \
LIBXML_READER_ENABLED \
PPTX_DEF\
PPT_DEF\
DONT_WRITE_EMBEDDED_FONTS \
AVS_USE_CONVERT_PPTX_TOCUSTOM_VML
INCLUDEPATH += \
@ -27,10 +35,6 @@ INCLUDEPATH += \
../../../DesktopEditor/xml/libxml2/include
core_mac {
DEFINES += \
_ASC_USE_UNICODE_CONVERTER_ \
UNICODECONVERTER_USE_DYNAMIC_LIBRARY
LIBS += $$DESTDIR -lUnicodeConverter
}

View File

@ -43,7 +43,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;USE_LITE_READER;_USE_XMLLITE_READER_;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;PPT_DEF;DONT_WRITE_EMBEDDED_FONTS"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB;_USE_LIBXML2_READER_;LIBXML_READER_ENABLED;USE_LITE_READER;_USE_XMLLITE_READER_;PPTX_DEF;PPT_DEF;ENABLE_PPT_TO_PPTX_CONVERT;AVS_USE_CONVERT_PPTX_TOCUSTOM_VML;DONT_WRITE_EMBEDDED_FONTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@ -368,6 +368,10 @@
RelativePath="..\source\Reader\OOXDrawingGraphicReader.cpp"
>
</File>
<File
RelativePath="..\source\Reader\OOXDrawingGraphicReader.h"
>
</File>
<File
RelativePath="..\source\Reader\OOXPictureAnchorReader.h"
>

View File

@ -1284,7 +1284,7 @@ public:
}
else
{
strProp = boost::lexical_cast<std::wstring>( parameter);
strProp = std::to_wstring( parameter);
}
return strProp;

View File

@ -73,12 +73,12 @@ public:
std::wstring Generate_rId()
{
return L"rId" + boost::lexical_cast<std::wstring>(m_nrIdCount++);
return L"rId" + std::to_wstring(m_nrIdCount++);
}
std::wstring Generate_FitTextId()
{
return boost::lexical_cast<std::wstring>(m_nFitTextIdCount++);
return std::to_wstring(m_nFitTextIdCount++);
}
int Generate_ImageIndex()
@ -124,7 +124,7 @@ public:
std::wstring Generate_OleId()
{
std::wstring sId = boost::lexical_cast<std::wstring>(m_nOleId++);
std::wstring sId = std::to_wstring(m_nOleId++);
std::wstring sResult = L"_1330071130";
sResult = sResult.substr(0, sResult.length() - sId.length() );

View File

@ -31,6 +31,9 @@
*/
#include "OOXPictureGraphicReader.h"
#include "OOXDrawingGraphicReader.h"
#include "../../../../ASCOfficePPTXFile/ASCOfficeDrawingConverter.h"
bool OOXPictureGraphicReader::Parse( ReaderParameter oParam , RtfShape& oOutput)
{
@ -79,27 +82,51 @@ bool OOXPictureGraphicReader::Parse( ReaderParameter oParam , RtfShape& oOutput)
}
}
}
if (!bTryPicture)
{
//рисуем "крест" (todooo получать с редактора реплейсмент картинку)
oOutput.m_nShapeType = 1;
oOutput.m_bFilled = 0;
oOutput.m_bLine = 1;
oOutput.m_aTextItems = TextItemContainerPtr( new TextItemContainer() );
RtfParagraphPtr oParagraph ( new RtfParagraph() );
oParagraph->m_oProperty = oParam.oRtf->m_oDefaultParagraphProp;
oParagraph->m_oProperty.m_oCharProperty = oParam.oRtf->m_oDefaultCharProp;
oParagraph->m_oProperty.m_nItap = 0;
RtfCharPtr oChar ( new RtfChar() );
oChar->m_oProperty = oParam.oRtf->m_oDefaultCharProp;
oChar->setText( L"The element is not supported in RTF format." );
oParagraph->AddItem( oChar );
oOutput.m_aTextItems->AddItem( oParagraph );
}
return true;
return bTryPicture;
}
OOX::Logic::CPicture * OOXDrawingGraphicReader::Parse( ReaderParameter oParam , RtfShape& oOutput)
{
NSBinPptxRW::CDrawingConverter drawingConverter;
drawingConverter.SetRelsPath(oParam.oDocx->m_pDocument->m_oReadPath.GetPath());
std::wstring sVmlXml = drawingConverter.ConvertObjectToVml(m_sXml);
if (sVmlXml.empty())return NULL;
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 + sVmlXml + sEnd;
//XmlUtils::CXmlNode oMainNode;
//if (!oMainNode.FromXmlString(strXml))
// return NULL;
//XmlUtils::CXmlNode pictNode = oMainNode.ReadNodeNoNS(L"pict");
//if (pictNode.IsValid())
// return new OOX::Logic::CPicture(pictNode);
//else
// return NULL;
XmlUtils::CXmlLiteReader oSubReader;
if (oSubReader.FromString(strXml) == false) return NULL;
oSubReader.ReadNextNode();
OOX::Logic::CPicture *pPict = NULL;
int nStylesDepth1 = oSubReader.GetDepth();
while ( oSubReader.ReadNextSiblingNode( nStylesDepth1 ) )
{
std::wstring sName = oSubReader.GetName();
if (sName == L"w:pict")
{
pPict= new OOX::Logic::CPicture(oSubReader);
break;
}
}
return pPict;
}

View File

@ -0,0 +1,54 @@
/*
* (c) Copyright Ascensio System SIA 2010-2017
*
* 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
*
*/
#pragma once
#include "OOXReaderBasic.h"
#include "../RtfPicture.h"
#include "../../../../DesktopEditor/raster/BgraFrame.h"
#include "../../../../Common/DocxFormat/Source/DocxFormat/Drawing/Drawing.h"
#define PICTURE_BUFFER_SIZE 1024
class OOXDrawingGraphicReader
{
private:
std::wstring m_sXml;
public:
OOXDrawingGraphicReader(std::wstring sXml)
{
m_sXml = sXml;
}
OOX::Logic::CPicture * Parse( ReaderParameter oParam , RtfShape& oOutput);
};

View File

@ -457,7 +457,7 @@ bool OOXMathReader::ParseElement(ReaderParameter oParam , OOX::WritingElement *
rtfMath->m_bIsVal = true;
RtfCharPtr oChar = RtfCharPtr(new RtfChar);
oChar->setText( boost::lexical_cast<std::wstring>(oFont.m_nID) );
oChar->setText( std::to_wstring(oFont.m_nID) );
rtfMath->m_oVal.AddItem( oChar );
}
}

View File

@ -697,14 +697,33 @@ bool OOXRunReader::Parse( ReaderParameter oParam , RtfParagraph& oOutputParagrap
}break;
case OOX::et_w_drawing:
{
bool bAddDrawing = false;
OOX::Logic::CDrawing* ooxDrawing = dynamic_cast<OOX::Logic::CDrawing*>(ooxItem);
RtfShapePtr pNewPicture ( new RtfShape() );
pNewPicture->m_oCharProperty = oNewProperty;
RtfShapePtr pNewDrawing ( new RtfShape() );
pNewDrawing->m_oCharProperty = oNewProperty;
OOXPictureReader oPictureReader(ooxDrawing);
if( true == oPictureReader.Parse( oParam, (*pNewPicture) ) )
OOXDrawingReader oDrawingReader(ooxDrawing);
if( true == oDrawingReader.Parse( oParam, (*pNewDrawing) ) )
{
oOutputParagraph.AddItem( pNewPicture );
oOutputParagraph.AddItem( pNewDrawing );
bAddDrawing = true;
}
if (!bAddDrawing && ooxDrawing->m_sXml.IsInit())
{
OOXDrawingGraphicReader oGraphiceReader(*ooxDrawing->m_sXml);
OOX::Logic::CPicture *ooxPicture = oGraphiceReader.Parse( oParam, (*pNewDrawing) );
if (Parse(oParam , oOutputParagraph, poStyle, oNewProperty, ooxPicture))
{
bAddDrawing = true;
}
if (ooxPicture)delete ooxPicture;
}
if (!bAddDrawing)
{
pNewDrawing->SetNotSupportShape();
oOutputParagraph.AddItem( pNewDrawing );
}
}break;
case OOX::et_w_pict:
@ -896,9 +915,9 @@ bool OOXRunReader::Parse( ReaderParameter oParam , RtfParagraph& oOutputParagrap
nFontSize = oNewProperty.m_nFontSize / 2;
sFieldText = L"SYMBOL";
sFieldText += boost::lexical_cast<std::wstring>( nChar );
sFieldText += std::to_wstring( nChar );
sFieldText += L" \\\\f \"" + sFont + L"\" \\\\s ";
sFieldText += boost::lexical_cast<std::wstring>( nFontSize );
sFieldText += std::to_wstring( nFontSize );
pNewChar->setText( sFieldText );

View File

@ -30,15 +30,16 @@
*
*/
#pragma once
#include "OOXDrawingGraphicReader.h"
#include "OOXPictureGraphicReader.h"
#include "OOXReaderBasic.h"
class OOXPictureAnchorReader
class OOXDrawingAnchorReader
{
private:
OOX::Drawing::CAnchor *m_ooxAnchor;
OOX::Drawing::CAnchor * m_ooxAnchor;
public:
OOXPictureAnchorReader(OOX::Drawing::CAnchor *ooxAnchor)
OOXDrawingAnchorReader(OOX::Drawing::CAnchor *ooxAnchor)
{
m_ooxAnchor = ooxAnchor;
}
@ -94,57 +95,57 @@ public:
{
switch(m_ooxAnchor->m_oPositionH->m_oRelativeFrom->GetValue())
{
case SimpleTypes::relfromhCharacter:
{
oOutput.m_nPositionHRelative = 3;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhColumn:
{
oOutput.m_nPositionHRelative = 2;
oOutput.m_eXAnchor = RtfShape::ax_column;
}break;
case SimpleTypes::relfromhInsideMargin:
{
oOutput.m_nPositionHRelative = 6;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhLeftMargin:
{
oOutput.m_nPositionHRelative = 4;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhMargin:
{
oOutput.m_nPositionHRelative = 0;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhOutsideMargin:
{
oOutput.m_nPositionHRelative = 7;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhPage :
{
oOutput.m_nPositionHRelative = 1;
oOutput.m_eXAnchor = RtfShape::ax_page;
}break;
case SimpleTypes::relfromhRightMargin :
{
oOutput.m_nPositionHRelative = 5;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhCharacter:
{
oOutput.m_nPositionHRelative = 3;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhColumn:
{
oOutput.m_nPositionHRelative = 2;
oOutput.m_eXAnchor = RtfShape::ax_column;
}break;
case SimpleTypes::relfromhInsideMargin:
{
oOutput.m_nPositionHRelative = 6;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhLeftMargin:
{
oOutput.m_nPositionHRelative = 4;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhMargin:
{
oOutput.m_nPositionHRelative = 0;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhOutsideMargin:
{
oOutput.m_nPositionHRelative = 7;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
case SimpleTypes::relfromhPage :
{
oOutput.m_nPositionHRelative = 1;
oOutput.m_eXAnchor = RtfShape::ax_page;
}break;
case SimpleTypes::relfromhRightMargin :
{
oOutput.m_nPositionHRelative = 5;
oOutput.m_eXAnchor = RtfShape::ax_margin;
}break;
}
}
if (m_ooxAnchor->m_oPositionH->m_oAlign.IsInit())
{
switch(m_ooxAnchor->m_oPositionH->m_oAlign->GetValue())
{
case SimpleTypes::alignhCenter : oOutput.m_nPositionH = 2; break;
case SimpleTypes::alignhInside : oOutput.m_nPositionH = 4; break;
case SimpleTypes::alignhLeft : oOutput.m_nPositionH = 1; break;
case SimpleTypes::alignhOutside : oOutput.m_nPositionH = 5; break;
case SimpleTypes::alignhRight : oOutput.m_nPositionH = 3; break;
case SimpleTypes::alignhCenter : oOutput.m_nPositionH = 2; break;
case SimpleTypes::alignhInside : oOutput.m_nPositionH = 4; break;
case SimpleTypes::alignhLeft : oOutput.m_nPositionH = 1; break;
case SimpleTypes::alignhOutside : oOutput.m_nPositionH = 5; break;
case SimpleTypes::alignhRight : oOutput.m_nPositionH = 3; break;
}
}
if (m_ooxAnchor->m_oPositionH->m_oPosOffset.IsInit())
@ -157,45 +158,45 @@ public:
switch(m_ooxAnchor->m_oPositionV->m_oRelativeFrom->GetValue())
{
case SimpleTypes::relfromvBottomMargin :
{
oOutput.m_nPositionVRelative = 5;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
{
oOutput.m_nPositionVRelative = 5;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
case SimpleTypes::relfromvInsideMargin :
{
oOutput.m_nPositionVRelative = 6;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
case SimpleTypes::relfromvLine :
{
oOutput.m_nPositionVRelative = 3;
oOutput.m_eYAnchor = RtfShape::ay_Para;
}break;
case SimpleTypes::relfromvMargin :
{
oOutput.m_nPositionVRelative = 0;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
{
oOutput.m_nPositionVRelative = 6;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
case SimpleTypes::relfromvLine :
{
oOutput.m_nPositionVRelative = 3;
oOutput.m_eYAnchor = RtfShape::ay_Para;
}break;
case SimpleTypes::relfromvMargin :
{
oOutput.m_nPositionVRelative = 0;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
case SimpleTypes::relfromvOutsideMargin :
{
oOutput.m_nPositionVRelative = 7;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
{
oOutput.m_nPositionVRelative = 7;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
case SimpleTypes::relfromvPage :
{
oOutput.m_nPositionVRelative = 1;
oOutput.m_eYAnchor = RtfShape::ay_page;
}break;
{
oOutput.m_nPositionVRelative = 1;
oOutput.m_eYAnchor = RtfShape::ay_page;
}break;
case SimpleTypes::relfromvParagraph :
{
oOutput.m_nPositionVRelative = 2;
oOutput.m_eYAnchor = RtfShape::ay_Para;
}break;
{
oOutput.m_nPositionVRelative = 2;
oOutput.m_eYAnchor = RtfShape::ay_Para;
}break;
case SimpleTypes::relfromvTopMargin :
{
oOutput.m_nPositionVRelative = 4;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
{
oOutput.m_nPositionVRelative = 4;
oOutput.m_eYAnchor = RtfShape::ay_margin;
}break;
}
}
if(m_ooxAnchor->m_oPositionV->m_oAlign.IsInit())
@ -300,9 +301,12 @@ public:
if( m_ooxAnchor->m_oGraphic.IsInit() )
{
OOXPictureGraphicReader oGraphicReader(m_ooxAnchor->m_oGraphic.GetPointer());
OOXPictureGraphicReader oPictureReader(m_ooxAnchor->m_oGraphic.GetPointer());
oGraphicReader.Parse( oParam, oOutput );
if (oPictureReader.Parse( oParam, oOutput) == false)
{
return false;
}
}
//изменяем scale в соответсявии с выходным размером
if( PROP_DEF != nWidth && PROP_DEF != oOutput.m_oPicture->m_nWidthGoal )

View File

@ -48,7 +48,7 @@ private:
public:
OOXPictureGraphicReader(OOX::Drawing::CGraphic *ooxGraphic)
{
m_ooxGraphic = ooxGraphic;
m_ooxGraphic = ooxGraphic;
}
bool Parse( ReaderParameter oParam , RtfShape& oOutput);
static bool WriteDataToPicture( std::wstring sPath, RtfPicture& oOutput, std::wstring sTempPath )

View File

@ -32,12 +32,12 @@
#pragma once
#include "OOXPictureGraphicReader.h"
class OOXPictureInlineReader
class OOXDrawingInlineReader
{
private:
OOX::Drawing::CInline *m_ooxInline;
OOX::Drawing::CInline * m_ooxInline;
public:
OOXPictureInlineReader(OOX::Drawing::CInline *ooxInline)
OOXDrawingInlineReader(OOX::Drawing::CInline *ooxInline)
{
m_ooxInline = ooxInline;
}
@ -83,8 +83,11 @@ public:
if(m_ooxInline->m_oGraphic.IsInit())
{
OOXPictureGraphicReader oGraphicReader(m_ooxInline->m_oGraphic.GetPointer());
oGraphicReader.Parse( oParam, oOutput);
OOXPictureGraphicReader oPictureReader(m_ooxInline->m_oGraphic.GetPointer());
if (oPictureReader.Parse( oParam, oOutput) == false)
{
return false;
}
}
//изменяем scale в соответсявии с выходным размером
if( PROP_DEF != nWidth && PROP_DEF != oOutput.m_oPicture->m_nWidthGoal )

View File

@ -36,32 +36,32 @@
#include "../../../../Common/DocxFormat/Source/DocxFormat/Drawing/Drawing.h"
class OOXPictureReader
class OOXDrawingReader
{
private:
OOX::Logic::CDrawing* m_ooxDrawing;
public:
OOXPictureReader(OOX::Logic::CDrawing* ooxDrawing)
OOXDrawingReader(OOX::Logic::CDrawing* ooxDrawing)
{
m_ooxDrawing = ooxDrawing;
m_ooxDrawing = ooxDrawing;
}
bool Parse( ReaderParameter oParam , RtfShape& oOutput)
{
if (m_ooxDrawing == NULL) return false;
//if( oParam.oReader->m_nCurItap != 0 )
// oOutput.m_bLayoutInCell = 1;
std::wstring sXml = m_ooxDrawing->m_sXml.IsInit() ? *m_ooxDrawing->m_sXml : L"";
if (m_ooxDrawing->m_oInline.IsInit())
{
OOXPictureInlineReader oPictureInlineReader(m_ooxDrawing->m_oInline.GetPointer());
return oPictureInlineReader.Parse( oParam, oOutput );
OOXDrawingInlineReader oDrawingInlineReader(m_ooxDrawing->m_oInline.GetPointer());
return oDrawingInlineReader.Parse( oParam, oOutput );
}
if (m_ooxDrawing->m_oAnchor.IsInit())
{
OOXPictureAnchorReader oPictureAnchorReader(m_ooxDrawing->m_oAnchor.GetPointer());
return oPictureAnchorReader.Parse( oParam, oOutput );
OOXDrawingAnchorReader oDrawingAnchorReader(m_ooxDrawing->m_oAnchor.GetPointer());
return oDrawingAnchorReader.Parse( oParam, oOutput );
}
return false;

View File

@ -630,6 +630,7 @@ bool OOXShapeReader::Parse( ReaderParameter oParam , RtfShapePtr& oOutput)
if (oOutput->m_nShapeType == NSOfficeDrawing::sptNotPrimitive && custom_path)
{
//
oOutput->m_nShapeType = sptRectangle;
}
//-------------------------------------------------------------------------------------------------------------
if (m_vmlElement->m_oFilled.IsInit())

View File

@ -43,9 +43,9 @@ std::wstring RtfBookmarkStart::RenderToRtf(RenderParameter oRenderParameter)
sResult += L"{\\*\\bkmkstart";
if( PROP_DEF != nFirstColumn )
sResult += L"\\bkmkcolf" + boost::lexical_cast<std::wstring>( nFirstColumn);
sResult += L"\\bkmkcolf" + std::to_wstring( nFirstColumn);
if( PROP_DEF != nLastColumn )
sResult += L"\\bkmkcoll" + boost::lexical_cast<std::wstring>( nLastColumn);
sResult += L"\\bkmkcoll" + std::to_wstring( nLastColumn);
sResult += L" ";
RtfCharProperty* pCharProperty = NULL;
@ -72,11 +72,11 @@ std::wstring RtfBookmarkStart::RenderToOOX(RenderParameter oRenderParameter)
nID = poDocument->m_oIdGenerator.Generate_BookmarkNumber();
poOOXWriter->m_aBookmarksId[m_sName] = nID;
}
sResult += L" w:id =\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sResult += L" w:id =\"" + std::to_wstring(nID) + L"\"";
if( PROP_DEF != nFirstColumn )
sResult += L" w:colFirst =\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sResult += L" w:colFirst =\"" + std::to_wstring(nID) + L"\"";
if( PROP_DEF != nLastColumn )
sResult += L" w:colLast =\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sResult += L" w:colLast =\"" + std::to_wstring(nID) + L"\"";
sResult += L" w:name =\"" + XmlUtils::EncodeXmlString( m_sName ) + L"\"";
sResult += L"/>";
@ -114,7 +114,7 @@ std::wstring RtfBookmarkEnd::RenderToOOX(RenderParameter oRenderParameter)
nID = poDocument->m_oIdGenerator.Generate_BookmarkNumber();
poOOXWriter->m_aBookmarksId[m_sName] = nID;
}
sResult += L" w:id =\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sResult += L" w:id =\"" + std::to_wstring(nID) + L"\"";
sResult += L"/>";
return sResult;
}
@ -161,7 +161,7 @@ std::wstring RtfFootnote::RenderToOOX(RenderParameter oRenderParameter)
sResult += srPr;
sResult += L"</w:rPr>";
}
sResult += L"<w:endnoteReference w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"/>";
sResult += L"<w:endnoteReference w:id=\"" + std::to_wstring(nID) + L"\"/>";
sResult += L"</w:r>";
}
else
@ -184,7 +184,7 @@ std::wstring RtfFootnote::RenderToOOX(RenderParameter oRenderParameter)
sResult += srPr;
sResult += L"</w:rPr>";
}
sResult += L"<w:footnoteReference w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"/>";
sResult += L"<w:footnoteReference w:id=\"" + std::to_wstring(nID) + L"\"/>";
sResult += L"</w:r>";
}

View File

@ -52,7 +52,7 @@ std::wstring RtfChar::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nRevised = PROP_DEF;
}
if (m_oProperty.m_nDeleted != PROP_DEF)
@ -62,7 +62,7 @@ std::wstring RtfChar::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nDeleted = PROP_DEF;
}
sResult += L"<w:r>";
@ -92,7 +92,7 @@ std::wstring RtfChar::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nRevised = PROP_DEF;
}
if (m_oProperty.m_nDeleted != PROP_DEF)
@ -102,7 +102,7 @@ std::wstring RtfChar::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nDeleted = PROP_DEF;
}
sResult += m_oProperty.RenderToOOX(oRenderParameter);//w:rPr внутри
@ -250,9 +250,9 @@ std::wstring RtfChar::renderRtfText( std::wstring& sText, void* poDocument, int
if (0 < nUnicode && nUnicode <= 0x8000)
{
sResult += L"\\u" + boost::lexical_cast<std::wstring>(nUnicode) + L"*";
sResult += L"\\u" + std::to_wstring(nUnicode) + L"*";
} else if (0x8000 < nUnicode && nUnicode <= 0xffff) {
sResult += L"\\u" + boost::lexical_cast<std::wstring>(nUnicode - 0x10000) + L"*"; //??? font alt name china ALL FONTS NEW.docx (Mekanik LET)
sResult += L"\\u" + std::to_wstring(nUnicode - 0x10000) + L"*"; //??? font alt name china ALL FONTS NEW.docx (Mekanik LET)
} else {
sResult += L"\\u9633*";
}
@ -359,7 +359,7 @@ std::wstring RtfCharSpecial::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nRevised = PROP_DEF;
}
if (m_oProperty.m_nDeleted != PROP_DEF)
@ -369,7 +369,7 @@ std::wstring RtfCharSpecial::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oProperty.m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(m_oProperty.m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oProperty.m_nDeleted = PROP_DEF;
}
sResult += L"<w:r>";
@ -436,7 +436,7 @@ std::wstring RtfCharSpecial::RenderToRtf(RenderParameter oRenderParameter)
//}
if( PROP_DEF != m_nSoftHeight )
{
sResult += L"\\softlheight" + boost::lexical_cast<std::wstring>( m_nSoftHeight );
sResult += L"\\softlheight" + std::to_wstring( m_nSoftHeight );
}
sResult += L"}";
return sResult;

View File

@ -168,7 +168,7 @@ std::wstring RtfField::RenderToOOX(RenderParameter oRenderParameter)
sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_pInsert->m_oCharProperty.m_nRevauth);
sDate = std::wstring(RtfUtility::convertDateTime(m_pInsert->m_oCharProperty.m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_pInsert->m_oCharProperty.m_nRevised = PROP_DEF;
}
if (m_pInsert->m_oCharProperty.m_nDeleted != PROP_DEF)
@ -178,7 +178,7 @@ std::wstring RtfField::RenderToOOX(RenderParameter oRenderParameter)
sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_pInsert->m_oCharProperty.m_nRevauthDel);
sDate = std::wstring(RtfUtility::convertDateTime(m_pInsert->m_oCharProperty.m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_pInsert->m_oCharProperty.m_nDeleted = PROP_DEF;
}
//поверяем на наличие гиперссылки

View File

@ -70,7 +70,7 @@ std::wstring RtfListTable::RenderToOOX(RenderParameter oRenderParameter)
oNewParam.nType = RENDER_TO_OOX_PARAM_SHAPE_WSHAPE;
for( int i = 0; i < (int)m_aPictureList.GetCount(); i++ )
{
sResult += L"<w:numPicBullet w:numPicBulletId=\"" + boost::lexical_cast<std::wstring>(i) + L"\">";
sResult += L"<w:numPicBullet w:numPicBulletId=\"" + std::to_wstring(i) + L"\">";
sResult += m_aPictureList[i]->RenderToOOX(oNewParam);
sResult += L"</w:numPicBullet>";
}

View File

@ -53,7 +53,7 @@ std::wstring RtfOldList::RenderToOOX(RenderParameter oRenderParameter)
oNewParameter.nType = RENDER_TO_OOX_PARAM_PLAIN;
std::wstring sText = m_oLevelText->RenderToOOX( oNewParameter );
sResult += L"<w:abstractNum w:abstractNumId=\"" + boost::lexical_cast<std::wstring>(m_nLs) + L"\">";
sResult += L"<w:abstractNum w:abstractNumId=\"" + std::to_wstring(m_nLs) + L"\">";
sResult += L"<w:multiLevelType w:val=\"singleLevel\" />";
sResult += L"<w:lvl w:ilvl=\"0\">";
sResult += L"<w:numFmt w:val=\"bullet\"/>";
@ -89,13 +89,13 @@ std::wstring RtfOldList::RenderToOOX(RenderParameter oRenderParameter)
sResult += L"</w:abstractNum>";
}
else if( RENDER_TO_OOX_PARAM_OLDLIST_OVR == oRenderParameter.nType )
sResult += L"<w:num w:numId=\"" + boost::lexical_cast<std::wstring>(m_nLs) +
L"\"><w:abstractNumId w:val=\"" + boost::lexical_cast<std::wstring>(m_nLs) + L"\"/></w:num>";
sResult += L"<w:num w:numId=\"" + std::to_wstring(m_nLs) +
L"\"><w:abstractNumId w:val=\"" + std::to_wstring(m_nLs) + L"\"/></w:num>";
else
{
if( PROP_DEF != m_nLs && PROP_DEF != m_nIlvl )
sResult += L"<w:numPr><w:ilvl w:val=\"" + boost::lexical_cast<std::wstring>(m_nLs) +
L"\"/><w:numId w:val=\"%" + boost::lexical_cast<std::wstring>(m_nLs) + L"\"/></w:numPr>";
sResult += L"<w:numPr><w:ilvl w:val=\"" + std::to_wstring(m_nLs) +
L"\"/><w:numId w:val=\"" + std::to_wstring(m_nLs) + L"\"/></w:numPr>";
}
}
return sResult;

View File

@ -63,7 +63,7 @@ std::wstring RtfOle::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(pCharProps->m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(pCharProps->m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
pCharProps->m_nRevised = PROP_DEF;
}
if (pCharProps->m_nDeleted != PROP_DEF)
@ -73,7 +73,7 @@ std::wstring RtfOle::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(pCharProps->m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(pCharProps->m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
pCharProps->m_nDeleted = PROP_DEF;
}
//----------
@ -88,8 +88,8 @@ std::wstring RtfOle::RenderToOOX(RenderParameter oRenderParameter)
sResult += L"</w:rPr>";
}
sResult += L"<w:object w:dxaOrig=\"" + boost::lexical_cast<std::wstring>(m_nWidth) +
L"\" w:dyaOrig=\"" + boost::lexical_cast<std::wstring>(m_nHeight) + L"\">";
sResult += L"<w:object w:dxaOrig=\"" + std::to_wstring(m_nWidth) +
L"\" w:dyaOrig=\"" + std::to_wstring(m_nHeight) + L"\">";
RenderParameter oNewRenderParameter = oRenderParameter;
oNewRenderParameter.nType = RENDER_TO_OOX_PARAM_SHAPE_WSHAPE2;
@ -122,7 +122,7 @@ std::wstring RtfOle::RenderToOOXOnlyOle(RenderParameter oRenderParameter)
default: sResult += L" Type=\"Embed\""; break;
}
sResult += L" ProgID=\"" + m_sOleClass + L"\"";
sResult += L" ShapeID=\"_x0000_s" + boost::lexical_cast<std::wstring>(poDocument->GetShapeId( oRenderParameter.nValue )) + L"\"";
sResult += L" ShapeID=\"_x0000_s" + std::to_wstring(poDocument->GetShapeId( oRenderParameter.nValue )) + L"\"";
sResult += L" DrawAspect=\"Content\"";
sResult += L" ObjectID=\"" + poDocument->m_oIdGenerator.Generate_OleId() + L"\"";
@ -130,7 +130,7 @@ std::wstring RtfOle::RenderToOOXOnlyOle(RenderParameter oRenderParameter)
std::wstring sMime = L"application/vnd.openxmlformats-officedocument.oleObject";
std::wstring sFilenameRels;
sFilenameRels += L"oleObject" + boost::lexical_cast<std::wstring>(poDocument->m_oIdGenerator.Generate_OleIndex()) + L".";
sFilenameRels += L"oleObject" + std::to_wstring(poDocument->m_oIdGenerator.Generate_OleIndex()) + L".";
sFilenameRels += sExtension;
std::wstring sFilenameFull = poOOXWriter->m_sTargetFolder + FILE_SEPARATOR_STR + L"word" + FILE_SEPARATOR_STR + L"embeddings";

View File

@ -134,7 +134,7 @@ std::wstring RtfPicture::RenderToOOX(RenderParameter oRenderParameter)
case dt_macpict:sExtension = L"pct"; sMime = L"image/x-pict"; break;
}
std::wstring sFilenameRels = L"Image" + boost::lexical_cast<std::wstring>(poRtfDocument->m_oIdGenerator.Generate_ImageIndex()) + L".";
std::wstring sFilenameRels = L"Image" + std::to_wstring(poRtfDocument->m_oIdGenerator.Generate_ImageIndex()) + L".";
sFilenameRels += sExtension;
std::wstring sFilenameFull = poOOXWriter->m_sTargetFolder + FILE_SEPARATOR_STR + L"word" + FILE_SEPARATOR_STR +L"media";

View File

@ -57,7 +57,7 @@ std::wstring RtfFont::RenderToRtf(RenderParameter oRenderParameter)
case ft_fdbminor: sResult += L"\\fdbminor"; break;
case ft_fbiminor: sResult += L"\\fbiminor"; break;
}
sResult += L"\\f" + boost::lexical_cast<std::wstring>(m_nID);
sResult += L"\\f" + std::to_wstring(m_nID);
switch( m_eFontFamily )
{
@ -88,7 +88,7 @@ std::wstring RtfFont::RenderToRtf(RenderParameter oRenderParameter)
sResult += L";}";
}
else
sResult += L"\\f" + boost::lexical_cast<std::wstring>(m_nID);
sResult += L"\\f" + std::to_wstring(m_nID);
return sResult;
}
@ -290,9 +290,9 @@ std::wstring RtfColor::RenderToRtf(RenderParameter oRenderParameter )
//if( L"" != sTheme )
//{
// sResult += sTheme;
// sResult += L"\\ctint" + boost::lexical_cast<std::wstring>(m_byteTint) + L"\\cshade" + boost::lexical_cast<std::wstring>(m_byteShade) + L"", , );
// sResult += L"\\ctint" + std::to_wstring(m_byteTint) + L"\\cshade" + std::to_wstring(m_byteShade) + L"", , );
//}
sResult+= L"\\red" + boost::lexical_cast<std::wstring>(m_byteRed) + L"\\green" + boost::lexical_cast<std::wstring>(m_byteGreen) + L"\\blue" + boost::lexical_cast<std::wstring>(m_byteBlue);
sResult+= L"\\red" + std::to_wstring(m_byteRed) + L"\\green" + std::to_wstring(m_byteGreen) + L"\\blue" + std::to_wstring(m_byteBlue);
//важно
sResult += L";";
}
@ -300,7 +300,7 @@ std::wstring RtfColor::RenderToRtf(RenderParameter oRenderParameter )
{
int nColor;
if( true == poRtfDocument->m_oColorTable.GetColor(*this, nColor) )
sResult += L"\\c" + boost::lexical_cast<std::wstring>(nColor); //todo
sResult += L"\\c" + std::to_wstring(nColor); //todo
}
return sResult;
}
@ -402,8 +402,8 @@ std::wstring RtfShadingCell::RenderToRtf(RenderParameter oRenderParameter)
RENDER_RTF_INT( m_nForeColor, sResult, L"clcfpat" )
if( PROP_DEF != m_nBackColor )
{
sResult += L"\\clcbpat" + boost::lexical_cast<std::wstring>(m_nBackColor);
sResult += L"\\clcfpatraw" + boost::lexical_cast<std::wstring>(m_nBackColor);
sResult += L"\\clcbpat" + std::to_wstring(m_nBackColor);
sResult += L"\\clcfpatraw" + std::to_wstring(m_nBackColor);
}
return sResult;
}
@ -564,11 +564,11 @@ std::wstring RtfBorder::RenderToRtf(RenderParameter oRenderParameter)
case bt_brdrnone: sResult = L"\\brdrnone"; break;
}
if( PROP_DEF != m_nWidth && m_nWidth > 0)
sResult += L"\\brdrw" + boost::lexical_cast<std::wstring>(m_nWidth );
sResult += L"\\brdrw" + std::to_wstring(m_nWidth );
if( PROP_DEF != m_nSpace && m_nSpace > 0)
sResult += L"\\brsp" + boost::lexical_cast<std::wstring>(m_nSpace );
sResult += L"\\brsp" + std::to_wstring(m_nSpace );
if( PROP_DEF != m_nColor )
sResult += L"\\brdrcf" + boost::lexical_cast<std::wstring>(m_nColor );
sResult += L"\\brdrcf" + std::to_wstring(m_nColor );
return sResult;
}
std::wstring RtfBorder::RenderToOOX(RenderParameter oRenderParameter)
@ -584,9 +584,9 @@ std::wstring RtfBorder::RenderToOOX(RenderParameter oRenderParameter)
sResult += L" w:color=\"" + oColor.RenderToOOX(oNewParam) + L"\"";
}
if( PROP_DEF != m_nWidth ) //w:sz 1/8 twips (equivalent to 1/576th of an inch)
sResult += L" w:sz=\"" + boost::lexical_cast<std::wstring>(2 * m_nWidth / 5 ) + L"\"";
sResult += L" w:sz=\"" + std::to_wstring(2 * m_nWidth / 5 ) + L"\"";
if( PROP_DEF != m_nSpace )
sResult += L" w:space=\"" + boost::lexical_cast<std::wstring>((int)RtfUtility::Twip2pt( m_nSpace )) + L"\"";
sResult += L" w:space=\"" + std::to_wstring((int)RtfUtility::Twip2pt( m_nSpace )) + L"\"";
switch( m_eType )
{
@ -643,9 +643,9 @@ std::wstring RtfCharProperty::RenderToRtf(RenderParameter oRenderParameter)
RENDER_RTF_INT( m_nCharacterSpacing, sResult, L"expndtw" )
if( PROP_DEF != m_nCharacterSpacing )
sResult += L"\\expnd" + boost::lexical_cast<std::wstring>( m_nCharacterSpacing / 5 );
sResult += L"\\expnd" + std::to_wstring( m_nCharacterSpacing / 5 );
if( PROP_DEF != m_nFitText )
sResult += L"\\fittext" + boost::lexical_cast<std::wstring>( m_nFitText / 5 );
sResult += L"\\fittext" + std::to_wstring( m_nFitText / 5 );
RENDER_RTF_INT( m_nFont, sResult, L"f" )
//RENDER_RTF_INT( m_nFont2, sResult, L"fittext" )
@ -662,7 +662,7 @@ std::wstring RtfCharProperty::RenderToRtf(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nComplexScript )
sResult += L"\\fcs" + boost::lexical_cast<std::wstring>( m_nComplexScript);
sResult += L"\\fcs" + std::to_wstring( m_nComplexScript);
RENDER_RTF_BOOL ( m_bOutline, sResult, L"outl" )
RENDER_RTF_BOOL ( m_bScaps , sResult, L"scaps" )
@ -753,7 +753,7 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime( m_nRevdttm ).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_nRevised = PROP_DEF;
}
if (m_nDeleted != PROP_DEF)
@ -763,7 +763,7 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime( m_nRevdttmDel ).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_nDeleted = PROP_DEF;
}
sResult += L"<w:rPr>";
@ -774,14 +774,14 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
}
if ( PROP_DEF != m_nRevised )
{
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
}
switch( m_nAnimated )
@ -811,7 +811,7 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nDown )
{
sResult += L"<w:position w:val=\"-" + boost::lexical_cast<std::wstring>(m_nDown) + L"\"/>";
sResult += L"<w:position w:val=\"-" + std::to_wstring(m_nDown) + L"\"/>";
}
RENDER_OOX_BOOL( m_bEmbo, sResult, L"w:emboss" )
RENDER_OOX_INT( m_nCharacterSpacing, sResult, L"w:spacing" )
@ -820,13 +820,13 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
{
if( -1 == m_nFitText )
{
sResult += L"<w:fitText w:id=\"" + poOOXWriter->m_nCurFitId + L"\" w:val=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurFitWidth) + L"\"/>";
sResult += L"<w:fitText w:id=\"" + poOOXWriter->m_nCurFitId + L"\" w:val=\"" + std::to_wstring(poOOXWriter->m_nCurFitWidth) + L"\"/>";
}
else
{
poOOXWriter->m_nCurFitId = poRtfDocument->m_oIdGenerator.Generate_FitTextId();
poOOXWriter->m_nCurFitWidth = m_nFitText;
sResult += L"<w:fitText w:id=\"" + poOOXWriter->m_nCurFitId + L"\" w:val=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurFitWidth) + L"\"/>";
sResult += L"<w:fitText w:id=\"" + poOOXWriter->m_nCurFitId + L"\" w:val=\"" + std::to_wstring(poOOXWriter->m_nCurFitWidth) + L"\"/>";
}
}
if( PROP_DEF == m_nFont)
@ -971,7 +971,7 @@ std::wstring RtfCharProperty::RenderToOOX(RenderParameter oRenderParameter)
RenderParameter oRenderParameterNew = oRenderParameter;
oRenderParameterNew.nType = RENDER_TO_OOX_PARAM_UNKNOWN;
sResult += L"<w:rPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:rPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:rPr>";
sResult += m_pOldCharProp->RenderToOOX(oRenderParameterNew);
sResult += L"</w:rPr>";
@ -1039,7 +1039,7 @@ std::wstring RtfListLevelProperty::RenderToOOX2(RenderParameter oRenderParameter
if(PROP_DEF != nLevel)
{
sResult += L"<w:lvl w:ilvl=\"" + boost::lexical_cast<std::wstring>(nLevel) + L"\"";
sResult += L"<w:lvl w:ilvl=\"" + std::to_wstring(nLevel) + L"\"";
RENDER_OOX_BOOL_ATTRIBUTE( m_bTentative, sResult, L"w:tentative")
sResult += L">";
@ -1078,9 +1078,9 @@ std::wstring RtfListLevelProperty::RenderToOOX2(RenderParameter oRenderParameter
if( PROP_DEF != m_nFirstIndent )
{
if( m_nFirstIndent >= 0 )
sIndent += L" w:firstLine=\"" + boost::lexical_cast<std::wstring>(m_nFirstIndent) + L"\"";
sIndent += L" w:firstLine=\"" + std::to_wstring(m_nFirstIndent) + L"\"";
else
sIndent += L" w:hanging=\"" + boost::lexical_cast<std::wstring>(-m_nFirstIndent) + L"\"";
sIndent += L" w:hanging=\"" + std::to_wstring(-m_nFirstIndent) + L"\"";
}
RENDER_OOX_INT_ATTRIBUTE( m_nIndent, sIndent, L"w:left" )
RENDER_OOX_INT_ATTRIBUTE( m_nIndentStart, sIndent, L"w:start" )
@ -1116,7 +1116,7 @@ std::wstring RtfListProperty::RenderToRtf(RenderParameter oRenderParameter)
if( 1 == m_bListHybrid )
sResult += L"\\listhybrid";
else if( 1 == m_nListSimple )
sResult += L"\\listsimple" + boost::lexical_cast<std::wstring>(m_nListSimple);
sResult += L"\\listsimple" + std::to_wstring(m_nListSimple);
for( int i = 0; i < (int)m_aArray.size(); i++ )
{
@ -1134,7 +1134,7 @@ std::wstring RtfListProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sResult;
sResult += L"<w:abstractNum w:abstractNumId=\"" + boost::lexical_cast<std::wstring>(m_nID) + L"\">";
sResult += L"<w:abstractNum w:abstractNumId=\"" + std::to_wstring(m_nID) + L"\">";
if( 1 == m_bListHybrid )
sResult += L"<w:multiLevelType w:val=\"hybridMultilevel\"/>";
@ -1183,8 +1183,8 @@ std::wstring RtfListOverrideProperty::RenderToOOX(RenderParameter oRenderParamet
std::wstring sResult;
if( true == IsValid() )
{
sResult += L"<w:num w:numId=\"" + boost::lexical_cast<std::wstring>(m_nIndex) + L"\">";
sResult += L"<w:abstractNumId w:val=\"" + boost::lexical_cast<std::wstring>(m_nListID) + L"\" />";
sResult += L"<w:num w:numId=\"" + std::to_wstring(m_nIndex) + L"\">";
sResult += L"<w:abstractNumId w:val=\"" + std::to_wstring(m_nListID) + L"\" />";
sResult += m_oOverrideLevels.RenderToOOX( oRenderParameter );
sResult += L"</w:num>";
}
@ -1223,7 +1223,7 @@ std::wstring RtfStyle::RenderToOOXBegin(RenderParameter oRenderParameter)
if( PROP_DEF != m_bReply ) sResult += L"<w:personalReply w:val=\"true\" />";
if( 1 == m_nSemiHidden ) sResult += L"<w:semiHidden/>";
if( PROP_DEF != m_bQFormat ) sResult += L"<w:qformat/>";
if( PROP_DEF != m_nPriority ) sResult += L"<w:uiPriority w:val=\"" + boost::lexical_cast<std::wstring>(m_nPriority) + L"\"/>";
if( PROP_DEF != m_nPriority ) sResult += L"<w:uiPriority w:val=\"" + std::to_wstring(m_nPriority) + L"\"/>";
if( PROP_DEF != m_bUnhiddenWhenUse ) sResult += L"<w:unhideWhenUsed/>";
return sResult;
@ -1572,7 +1572,7 @@ std::wstring RtfTab::RenderToRtf(RenderParameter oRenderParameter)
case tl_hyph: sResult += L"\\tlhyph"; break;
case tl_ul: sResult += L"\\tlul"; break;
}
sResult += L"\\tb" + boost::lexical_cast<std::wstring>( m_nTab );
sResult += L"\\tb" + std::to_wstring( m_nTab );
}
else
{
@ -1589,7 +1589,7 @@ std::wstring RtfTab::RenderToRtf(RenderParameter oRenderParameter)
case tk_tqc: sResult += L"\\tqc"; break;
case tk_tqdec: sResult += L"\\tqdec"; break;
}
sResult += L"\\tx" + boost::lexical_cast<std::wstring>( m_nTab );
sResult += L"\\tx" + std::to_wstring( m_nTab );
}
}
return sResult;
@ -1615,7 +1615,7 @@ std::wstring RtfTab::RenderToOOX(RenderParameter oRenderParameter)
case tk_tqbar: sTab += L" w:val=\"bar\""; break;
}
if( PROP_DEF != m_nTab )
sTab += L" w:pos=\"" + boost::lexical_cast<std::wstring>(m_nTab) + L"\"";
sTab += L" w:pos=\"" + std::to_wstring(m_nTab) + L"\"";
if( false == sTab.empty() )
sResult = L"<w:tab " + sTab + L"/>";
@ -1635,9 +1635,9 @@ std::wstring RtfFrame::RenderToRtf(RenderParameter oRenderParameter)
if( PROP_DEF != m_nHPos )
{
if( m_nHPos > 0 )
sResult += L"\\posx" + boost::lexical_cast<std::wstring>(m_nHPos);
sResult += L"\\posx" + std::to_wstring(m_nHPos);
else
sResult += L"\\posnegx" + boost::lexical_cast<std::wstring>(m_nHPos);
sResult += L"\\posnegx" + std::to_wstring(m_nHPos);
}
switch ( m_eHPos )
{
@ -1657,9 +1657,9 @@ std::wstring RtfFrame::RenderToRtf(RenderParameter oRenderParameter)
if( PROP_DEF != m_nVPos )
{
if( m_nVPos > 0 )
sResult += L"\\posy" + boost::lexical_cast<std::wstring>(m_nVPos);
sResult += L"\\posy" + std::to_wstring(m_nVPos);
else
sResult += L"\\posnegy" + boost::lexical_cast<std::wstring>(m_nVPos);
sResult += L"\\posnegy" + std::to_wstring(m_nVPos);
}
switch ( m_eVPos )
{
@ -1755,11 +1755,11 @@ std::wstring RtfFrame::RenderToOOX(RenderParameter oRenderParameter)
RENDER_OOX_INT_ATTRIBUTE( m_DropcapLines, sFrame, L"w:lines" )
if( PROP_DEF != m_nHorSpace ) sFrame += L" w:hSpace=\"" + boost::lexical_cast<std::wstring>(m_nHorSpace) + L"\"";
else if( PROP_DEF != m_nAllSpace ) sFrame += L" w:hSpace=\"" + boost::lexical_cast<std::wstring>(m_nAllSpace) + L"\"";
if( PROP_DEF != m_nHorSpace ) sFrame += L" w:hSpace=\"" + std::to_wstring(m_nHorSpace) + L"\"";
else if( PROP_DEF != m_nAllSpace ) sFrame += L" w:hSpace=\"" + std::to_wstring(m_nAllSpace) + L"\"";
if( PROP_DEF != m_nVerSpace ) sFrame += L" w:vSpace=\"" + boost::lexical_cast<std::wstring>(m_nVerSpace) + L"\"";
else if( PROP_DEF != m_nAllSpace ) sFrame += L" w:vSpace=\"" + boost::lexical_cast<std::wstring>(m_nAllSpace) + L"\"";
if( PROP_DEF != m_nVerSpace ) sFrame += L" w:vSpace=\"" + std::to_wstring(m_nVerSpace) + L"\"";
else if( PROP_DEF != m_nAllSpace ) sFrame += L" w:vSpace=\"" + std::to_wstring(m_nAllSpace) + L"\"";
if( !sFrame.empty() )
{
@ -1777,7 +1777,7 @@ std::wstring RtfParagraphProperty::RenderToRtf(RenderParameter oRenderParameter)
RENDER_RTF_BOOL ( m_bInTable , sResult, L"intbl" );
if( PROP_DEF != m_nItap && 1 != m_nItap )
sResult += L"\\itap" + boost::lexical_cast<std::wstring>(m_nItap );
sResult += L"\\itap" + std::to_wstring(m_nItap );
RENDER_RTF_BOOL ( m_bKeep , sResult, L"keep" );
RENDER_RTF_BOOL ( m_bKeepNext , sResult, L"keepn" );
@ -1839,8 +1839,8 @@ std::wstring RtfParagraphProperty::RenderToRtf(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nListId && PROP_DEF != m_nListLevel )
{
sResult += L"\\ls" + boost::lexical_cast<std::wstring>( m_nListId );
sResult += L"\\ilvl" + boost::lexical_cast<std::wstring>(m_nListLevel );
sResult += L"\\ls" + std::to_wstring( m_nListId );
sResult += L"\\ilvl" + std::to_wstring(m_nListLevel );
}
if( true == m_oShading.IsValid() )
@ -2025,8 +2025,8 @@ std::wstring RtfParagraphProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sIndent;
if( PROP_DEF != m_nIndFirstLine )
{
if( m_nIndFirstLine >= 0 ) sIndent += L" w:firstLine=\"" + boost::lexical_cast<std::wstring>(m_nIndFirstLine) + L"\"";
else sIndent += L" w:hanging=\"" + boost::lexical_cast<std::wstring>(-m_nIndFirstLine) + L"\"";
if( m_nIndFirstLine >= 0 ) sIndent += L" w:firstLine=\"" + std::to_wstring(m_nIndFirstLine) + L"\"";
else sIndent += L" w:hanging=\"" + std::to_wstring(-m_nIndFirstLine) + L"\"";
}
else if (m_bOldList && PROP_DEF != m_nIndLeft)
sIndent += L" w:firstLine=\"0\"";
@ -2060,9 +2060,9 @@ std::wstring RtfParagraphProperty::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nSpaceBetween && 0 != m_nSpaceBetween )
{
if( m_nSpaceBetween > 0 )
sSpacing += L" w:line=\"" + boost::lexical_cast<std::wstring>(m_nSpaceBetween) + L"\"";
sSpacing += L" w:line=\"" + std::to_wstring(m_nSpaceBetween) + L"\"";
else
sSpacing += L" w:line=\"" + boost::lexical_cast<std::wstring>(-m_nSpaceBetween) + L"\"";
sSpacing += L" w:line=\"" + std::to_wstring(-m_nSpaceBetween) + L"\"";
if( 0 == m_nSpaceMultiLine )
{
if( m_nSpaceBetween > 0 ) sSpacing += L" w:lineRule=\"atLeast\"";
@ -2090,11 +2090,11 @@ std::wstring RtfParagraphProperty::RenderToOOX(RenderParameter oRenderParameter)
case tbw_txbxtwno: sResult += L"<w:textboxTightWrap w:val=\"none\"/>"; break;
case tbw_txbxtwalways: sResult += L"<w:textboxTightWrap w:val=\"allLines\"/>"; break;
case tbw_txbxtwfirstlast: sResult += L"<w:textboxTightWrap w:val=\"firstAndLastLine\"/>"; break;
case tbw_txbxtwfirst: sResult += L"<w:textboxTightWrap w:val=\"firstLineOnly\"/>"; break;
case tbw_txbxtwfirst: sResult += L"<w:textboxTightWrap w:val=\"firstLineOnly\"/>"; break;
case tbw_txbxtwlast: sResult += L"<w:textboxTightWrap w:val=\"lastLineOnly\"/>"; break;
}
if( PROP_DEF != m_nListId && PROP_DEF != m_nListLevel )
sResult += L"<w:numPr><w:ilvl w:val=\"" + boost::lexical_cast<std::wstring>(m_nListLevel) + L"\" /><w:numId w:val=\"" + boost::lexical_cast<std::wstring>(m_nListId) + L"\" /></w:numPr>";
sResult += L"<w:numPr><w:ilvl w:val=\"" + std::to_wstring(m_nListLevel) + L"\" /><w:numId w:val=\"" + std::to_wstring(m_nListId) + L"\" /></w:numPr>";
if( true == m_oShading.IsValid() )
@ -2177,7 +2177,7 @@ std::wstring RtfParagraphProperty::RenderToOOX(RenderParameter oRenderParameter)
RenderParameter oRenderParameterNew = oRenderParameter;
oRenderParameterNew.nType = RENDER_TO_OOX_PARAM_UNKNOWN;
sResult += L"<w:pPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:pPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:pPr>";
sResult += m_pOldParagraphProp->RenderToOOX(oRenderParameterNew);
sResult += L"</w:pPr>";
@ -2273,7 +2273,7 @@ std::wstring RtfCellProperty::RenderToRtf(RenderParameter oRenderParameter)
case mu_Twips: sResult += L"\\clftsWidth3"; break;
}
sResult += L"\\cellx" + boost::lexical_cast<std::wstring>(m_nCellx);
sResult += L"\\cellx" + std::to_wstring(m_nCellx);
return sResult;
}
@ -2290,13 +2290,13 @@ std::wstring RtfCellProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sMargin;
if( 3 == m_nIsPaddingLeft && PROP_DEF != m_nPaddingLeft)
sResult += L"<w:left w:w=\"" + boost::lexical_cast<std::wstring>(m_nPaddingLeft) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:left w:w=\"" + std::to_wstring(m_nPaddingLeft) + L"\" w:type=\"dxa\"/>";
if( 3 == m_nIsPaddingRight && PROP_DEF != m_nPaddingRight)
sResult += L"<w:right w:w=\"" + boost::lexical_cast<std::wstring>(m_nPaddingRight) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:right w:w=\"" + std::to_wstring(m_nPaddingRight) + L"\" w:type=\"dxa\"/>";
if( 3 == m_nIsPaddingTop && PROP_DEF != m_nPaddingTop)
sResult += L"<w:top w:w=\"" + boost::lexical_cast<std::wstring>(m_nPaddingTop) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:top w:w=\"" + std::to_wstring(m_nPaddingTop) + L"\" w:type=\"dxa\"/>";
if( 3 == m_nIsPaddingBottom && PROP_DEF != m_nPaddingBottom)
sResult += L"<w:bottom w:w=\"" + boost::lexical_cast<std::wstring>(m_nPaddingBottom) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:bottom w:w=\"" + std::to_wstring(m_nPaddingBottom) + L"\" w:type=\"dxa\"/>";
if( !sMargin.empty() )
{
@ -2310,32 +2310,32 @@ std::wstring RtfCellProperty::RenderToOOX(RenderParameter oRenderParameter)
//else
// sResult += L"trspdl0");
//if( PROP_DEF != m_nSpacingLeft )
// sResult += L"trspdfl" + boost::lexical_cast<std::wstring>(m_nSpacingLeft) + L"",);
// sResult += L"trspdfl" + std::to_wstring(m_nSpacingLeft) + L"",);
//if( true == m_bIsSpacingRight )
// sResult += L"trspdr3");
//else
// sResult += L"trspdr0");
//if( PROP_DEF != m_nSpacingRight )
// sResult += L"trspdfr" + boost::lexical_cast<std::wstring>(m_nSpacingRight) + L"",);
// sResult += L"trspdfr" + std::to_wstring(m_nSpacingRight) + L"",);
//if( true == m_bIsSpacingTop )
// sResult += L"trspdt3");
//else
// sResult += L"trspdt0");
//if( PROP_DEF != m_nSpacingTop )
// sResult += L"trspdft" + boost::lexical_cast<std::wstring>(m_nSpacingTop) + L"",);
// sResult += L"trspdft" + std::to_wstring(m_nSpacingTop) + L"",);
//if( true == m_bIsSpacingBottom )
// sResult += L"trspdb3");
//else
// sResult += L"trspdb0");
//if( PROP_DEF != m_nSpacingBottom )
// sResult += L"trspdfb" + boost::lexical_cast<std::wstring>(m_nSpacingBottom) + L"",);
// sResult += L"trspdfb" + std::to_wstring(m_nSpacingBottom) + L"",);
if( PROP_DEF != m_nWidth )
{
if( mu_Percent == m_eWidthUnits )
sResult += L"<w:tcW w:type=\"pct\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidth) + L"%\"/>";
sResult += L"<w:tcW w:type=\"pct\" w:w=\"" + std::to_wstring(m_nWidth) + L"%\"/>";
else if( mu_Twips == m_eWidthUnits )
sResult += L"<w:tcW w:type=\"dxa\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidth) + L"\"/>";
sResult += L"<w:tcW w:type=\"dxa\" w:w=\"" + std::to_wstring(m_nWidth) + L"\"/>";
}
RENDER_OOX_BOOL( m_bHideMark, sResult, L"w:hideMark" )
@ -2471,9 +2471,9 @@ std::wstring RtfTableProperty::RenderToRtf(RenderParameter oRenderParameter)
if( PROP_DEF != m_nHPos )
{
if( m_nHPos > 0 )
sResult += L"\\tposx" + boost::lexical_cast<std::wstring>(m_nHPos);
sResult += L"\\tposx" + std::to_wstring(m_nHPos);
else
sResult += L"\\tposnegx" + boost::lexical_cast<std::wstring>(m_nHPos);
sResult += L"\\tposnegx" + std::to_wstring(m_nHPos);
}
switch ( m_eHPos )
{
@ -2493,9 +2493,9 @@ std::wstring RtfTableProperty::RenderToRtf(RenderParameter oRenderParameter)
if( PROP_DEF != m_nVPos )
{
if( m_nVPos > 0 )
sResult += L"\\tposy" + boost::lexical_cast<std::wstring>(m_nVPos);
sResult += L"\\tposy" + std::to_wstring(m_nVPos);
else
sResult += L"\\tposnegy" + boost::lexical_cast<std::wstring>(m_nVPos);
sResult += L"\\tposnegy" + std::to_wstring(m_nVPos);
}
switch ( m_eVPos )
{
@ -2599,9 +2599,9 @@ std::wstring RtfTableProperty::RenderToOOX(RenderParameter oRenderParameter)
switch(nTableIndentUnits)
{
//case 0: sResult += L"<w:tblInd w:w=\"0\" w:type=\"dxa\"/>" );break;
//case 2: sResult += L"<w:tblInd w:w=\"" + boost::lexical_cast<std::wstring>(nTableIndent) + L"%%\" w:type=\"pct\"/>", );break;
case 3: sResult += L"<w:tblInd w:w=\"" + boost::lexical_cast<std::wstring>(nTableIndent) + L"\" w:type=\"dxa\"/>"; break;
//default: sResult += L"<w:tblInd w:w=\"" + boost::lexical_cast<std::wstring>(nTableIndent) + L"\" w:type=\"dxa\"/>", nTableIndent );break;
//case 2: sResult += L"<w:tblInd w:w=\"" + std::to_wstring(nTableIndent) + L"%%\" w:type=\"pct\"/>", );break;
case 3: sResult += L"<w:tblInd w:w=\"" + std::to_wstring(nTableIndent) + L"\" w:type=\"dxa\"/>"; break;
//default: sResult += L"<w:tblInd w:w=\"" + std::to_wstring(nTableIndent) + L"\" w:type=\"dxa\"/>", nTableIndent );break;
}
}
@ -2617,13 +2617,13 @@ std::wstring RtfTableProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sFloatingPosition;
if( PROP_DEF != m_nWrapLeft )
sFloatingPosition += L" w:leftFromText=\"" + boost::lexical_cast<std::wstring>(m_nWrapLeft) + L"\"";
sFloatingPosition += L" w:leftFromText=\"" + std::to_wstring(m_nWrapLeft) + L"\"";
if( PROP_DEF != m_nWrapRight )
sFloatingPosition += L" w:rightFromText=\"" + boost::lexical_cast<std::wstring>(m_nWrapRight) + L"\"";
sFloatingPosition += L" w:rightFromText=\"" + std::to_wstring(m_nWrapRight) + L"\"";
if( PROP_DEF != m_nWrapTop )
sFloatingPosition += L" w:topFromText=\"" + boost::lexical_cast<std::wstring>(m_nWrapTop) + L"\"";
sFloatingPosition += L" w:topFromText=\"" + std::to_wstring(m_nWrapTop) + L"\"";
if( PROP_DEF != m_nWrapBottom )
sFloatingPosition += L" w:bottomFromText=\"" + boost::lexical_cast<std::wstring>(m_nWrapBottom) + L"\"";
sFloatingPosition += L" w:bottomFromText=\"" + std::to_wstring(m_nWrapBottom) + L"\"";
switch ( m_eHRef )
{
@ -2632,7 +2632,7 @@ std::wstring RtfTableProperty::RenderToOOX(RenderParameter oRenderParameter)
case hr_phcol: sFloatingPosition += L" w:horzAnchor=\"text\""; break;
}
if( PROP_DEF != m_nHPos )
sFloatingPosition += L" w:tblpX=\"" + boost::lexical_cast<std::wstring>(m_nHPos) + L"\"";
sFloatingPosition += L" w:tblpX=\"" + std::to_wstring(m_nHPos) + L"\"";
//else
switch ( m_eHPos )
{
@ -2651,7 +2651,7 @@ std::wstring RtfTableProperty::RenderToOOX(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nVPos )
sFloatingPosition += L" w:tblpY=\"" + boost::lexical_cast<std::wstring>(m_nVPos) + L"\"";
sFloatingPosition += L" w:tblpY=\"" + std::to_wstring(m_nVPos) + L"\"";
//else
switch ( m_eVPos )
{
@ -2672,31 +2672,31 @@ std::wstring RtfTableProperty::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nWidth && ( 2 == m_eMUWidth || 3 == m_eMUWidth ))
{
if( 2 == m_eMUWidth )
sResult += L"<w:tblW w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidth) + L"\" w:type=\"pct\"/>";
sResult += L"<w:tblW w:w=\"" + std::to_wstring(m_nWidth) + L"\" w:type=\"pct\"/>";
else
sResult += L"<w:tblW w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidth) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:tblW w:w=\"" + std::to_wstring(m_nWidth) + L"\" w:type=\"dxa\"/>";
}
else
sResult += L"<w:tblW w:w=\"0\" w:type=\"auto\"/>";
std::wstring sDefCellMargins;
if( PROP_DEF != m_nDefCellMarBottom && 3 == m_nDefCellMarBottomUnits )
sDefCellMargins += L"<w:bottom w:w=\"" + boost::lexical_cast<std::wstring>(m_nDefCellMarBottom) + L"\" w:type=\"dxa\"/>";
sDefCellMargins += L"<w:bottom w:w=\"" + std::to_wstring(m_nDefCellMarBottom) + L"\" w:type=\"dxa\"/>";
if( PROP_DEF != m_nDefCellMarLeft && 3 == m_nDefCellMarLeftUnits )
sDefCellMargins += L"<w:left w:w=\"" + boost::lexical_cast<std::wstring>(m_nDefCellMarLeft) + L"\" w:type=\"dxa\"/>";
sDefCellMargins += L"<w:left w:w=\"" + std::to_wstring(m_nDefCellMarLeft) + L"\" w:type=\"dxa\"/>";
if( PROP_DEF != m_nDefCellMarRight && 3 == m_nDefCellMarRightUnits )
sDefCellMargins += L"<w:right w:w=\"" + boost::lexical_cast<std::wstring>(m_nDefCellMarRight) + L"\" w:type=\"dxa\"/>";
sDefCellMargins += L"<w:right w:w=\"" + std::to_wstring(m_nDefCellMarRight) + L"\" w:type=\"dxa\"/>";
if( PROP_DEF != m_nDefCellMarTop && 3 == m_nDefCellMarTopUnits )
sDefCellMargins += L"<w:top w:w=\"" + boost::lexical_cast<std::wstring>(m_nDefCellMarTop) + L"\" w:type=\"dxa\"/>";
sDefCellMargins += L"<w:top w:w=\"" + std::to_wstring(m_nDefCellMarTop) + L"\" w:type=\"dxa\"/>";
if( !sDefCellMargins.empty() )
sResult += L"<w:tblCellMar>" + sDefCellMargins + L"</w:tblCellMar>";
if( PROP_DEF != m_nDefCellSpBottom && 3 == m_nDefCellSpBottomUnits )
sResult += L"<w:tblCellSpacing w:w=\"" + boost::lexical_cast<std::wstring>(m_nDefCellSpBottom) + L"\" w:type=\"dxa\"/>";
sResult += L"<w:tblCellSpacing w:w=\"" + std::to_wstring(m_nDefCellSpBottom) + L"\" w:type=\"dxa\"/>";
//if( PROP_DEF != m_nLeft )
// sResult += L"<w:tblInd w:w=\"" + boost::lexical_cast<std::wstring>(m_nLeft) + L"\" w:type=\"dxa\"/>";
// sResult += L"<w:tblInd w:w=\"" + std::to_wstring(m_nLeft) + L"\" w:type=\"dxa\"/>";
RenderParameter oNewParam = oRenderParameter;
oNewParam.nType = RENDER_TO_OOX_PARAM_BORDER_ATTRIBUTE;
@ -2815,25 +2815,25 @@ std::wstring RtfRowProperty::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nHeight )
{
if( m_nHeight > 0 )
sResult += L"<w:trHeight w:val=\"" + boost::lexical_cast<std::wstring>(m_nHeight) +L"\" w:hRule=\"atLeast\"/>";
sResult += L"<w:trHeight w:val=\"" + std::to_wstring(m_nHeight) +L"\" w:hRule=\"atLeast\"/>";
else if( m_nHeight < 0 )
sResult += L"<w:trHeight w:val=\"" + boost::lexical_cast<std::wstring>(-m_nHeight) +L"\" w:hRule=\"exact\"/>";
sResult += L"<w:trHeight w:val=\"" + std::to_wstring(-m_nHeight) +L"\" w:hRule=\"exact\"/>";
}
if( PROP_DEF != m_nWidthStartInvCell )
{
switch( m_eMUStartInvCell )
{
case mu_Percent: sResult += L"<w:wBefore w:type=\"pct\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidthStartInvCell) + L"%\"/>"; break;
case mu_Twips: sResult += L"<w:wBefore w:type=\"dxa\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidthStartInvCell) + L"\"/>"; break;
case mu_Percent: sResult += L"<w:wBefore w:type=\"pct\" w:w=\"" + std::to_wstring(m_nWidthStartInvCell) + L"%\"/>"; break;
case mu_Twips: sResult += L"<w:wBefore w:type=\"dxa\" w:w=\"" + std::to_wstring(m_nWidthStartInvCell) + L"\"/>"; break;
}
}
if( PROP_DEF != m_nWidthEndInvCell )
{
switch( m_eMUEndInvCell )
{
case mu_Percent: sResult += L"<w:wAfter w:type=\"pct\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidthEndInvCell) + L"%\"/>"; break;
case mu_Twips: sResult += L"<w:wAfter w:type=\"dxa\" w:w=\"" + boost::lexical_cast<std::wstring>(m_nWidthEndInvCell) + L"\"/>"; break;
case mu_Percent: sResult += L"<w:wAfter w:type=\"pct\" w:w=\"" + std::to_wstring(m_nWidthEndInvCell) + L"%\"/>"; break;
case mu_Twips: sResult += L"<w:wAfter w:type=\"dxa\" w:w=\"" + std::to_wstring(m_nWidthEndInvCell) + L"\"/>"; break;
}
}
RENDER_OOX_INT( m_nGridBefore, sResult, L"w:gridBefore" )
@ -2865,14 +2865,14 @@ std::wstring RtfRowProperty::RenderToOOX(RenderParameter oRenderParameter)
// std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(oReader.m_oState->m_oCharProp.m_nRevauthDel);
// std::wstring sDate(RtfUtility::convertDateTime(oReader.m_oState->m_oCharProp.m_nRevdttmDel).c_str());
// sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
// sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
//}
//if ( PROP_DEF != oReader.m_oState->m_oCharProp.m_nRevised )
//{
// std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(oReader.m_oState->m_oCharProp.m_nRevauth);
// std::wstring sDate(RtfUtility::convertDateTime(oReader.m_oState->m_oCharProp.m_nRevdttm).c_str());
//
// sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
// sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
//}
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_nTrAuth);
std::wstring sDate(RtfUtility::convertDateTime(m_nTrDate).c_str());
@ -2883,11 +2883,11 @@ std::wstring RtfRowProperty::RenderToOOX(RenderParameter oRenderParameter)
if (rowChangeProps.empty())
{
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\"/>";
}
else
{
sResult += L"<w:trPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:trPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:trPr>";
sResult += rowChangeProps;
sResult += L"</w:trPr>";
@ -2939,7 +2939,7 @@ std::wstring RtfInformation::RenderToRtf(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nVersion )
sResult += L"{\\version" + boost::lexical_cast<std::wstring>(m_nVersion) + L"}";
sResult += L"{\\version" + std::to_wstring(m_nVersion) + L"}";
if( !m_sDocCom.empty() )
{
@ -2947,7 +2947,7 @@ std::wstring RtfInformation::RenderToRtf(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nInternalVersion )
{
sResult += L"{\\vern" + boost::lexical_cast<std::wstring>(m_nInternalVersion) + L"}";
sResult += L"{\\vern" + std::to_wstring(m_nInternalVersion) + L"}";
}
if( !m_sLinkBase.empty() )
{
@ -2976,27 +2976,27 @@ std::wstring RtfInformation::RenderToRtf(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nEndingTime )
{
sResult += L"{\\edmins" + boost::lexical_cast<std::wstring>(m_nEndingTime) + L"}";
sResult += L"{\\edmins" + std::to_wstring(m_nEndingTime) + L"}";
}
if( PROP_DEF != m_nNumberOfPages )
{
sResult += L"{\\nofpages" + boost::lexical_cast<std::wstring>(m_nNumberOfPages) + L"}";
sResult += L"{\\nofpages" + std::to_wstring(m_nNumberOfPages) + L"}";
}
if( PROP_DEF != m_nNumberOfWords )
{
sResult += L"{\\nofwords" + boost::lexical_cast<std::wstring>(m_nNumberOfWords) + L"}";
sResult += L"{\\nofwords" + std::to_wstring(m_nNumberOfWords) + L"}";
}
if( PROP_DEF != m_nNumberOfCharactersWithSpace )
{
sResult += L"{\\nofchars" + boost::lexical_cast<std::wstring>(m_nNumberOfCharactersWithSpace) + L"}";
sResult += L"{\\nofchars" + std::to_wstring(m_nNumberOfCharactersWithSpace) + L"}";
}
if( PROP_DEF != m_nNumberOfCharactersWithoutSpace )
{
sResult += L"{\\nofcharsws" + boost::lexical_cast<std::wstring>(m_nNumberOfCharactersWithoutSpace) + L"}";
sResult += L"{\\nofcharsws" + std::to_wstring(m_nNumberOfCharactersWithoutSpace) + L"}";
}
if( PROP_DEF != m_nInternalId )
sResult += L"{\\id" + boost::lexical_cast<std::wstring>(m_nInternalId) + L"}";
sResult += L"{\\id" + std::to_wstring(m_nInternalId) + L"}";
if( !sResult.empty() )
sResult = L"{\\info" + sResult + L"}";
@ -3037,19 +3037,19 @@ std::wstring RtfInformation::RenderToOOX(RenderParameter oRenderParameter)
if( PROP_DEF != m_nNumberOfCharactersWithSpace ) pApp->m_nCharactersWithSpaces = m_nNumberOfCharactersWithSpace;
//if( PROP_DEF != m_nNumberOfCharactersWithoutSpace )
// sResult += L"<CharactersWithSpaces>" + boost::lexical_cast<std::wstring>() + L"</CharactersWithSpaces>",m_nNumberOfCharactersWithoutSpace );
// sResult += L"<CharactersWithSpaces>" + std::to_wstring() + L"</CharactersWithSpaces>",m_nNumberOfCharactersWithoutSpace );
}
return L"";
}
std::wstring RtfTime::RenderToRtf(RenderParameter oRenderParameter)
{
std::wstring sResult;
if( PROP_DEF != m_nYear ) sResult += L"\\yr" + boost::lexical_cast<std::wstring>(m_nYear);
if( PROP_DEF != m_nMonth ) sResult += L"\\mo" + boost::lexical_cast<std::wstring>(m_nMonth);
if( PROP_DEF != m_nDay ) sResult += L"\\dy" + boost::lexical_cast<std::wstring>(m_nDay);
if( PROP_DEF != m_nHour ) sResult += L"\\hr" + boost::lexical_cast<std::wstring>(m_nHour);
if( PROP_DEF != m_nMin ) sResult += L"\\min" + boost::lexical_cast<std::wstring>(m_nMin);
if( PROP_DEF != m_nSecond ) sResult += L"\\sec" + boost::lexical_cast<std::wstring>(m_nSecond);
if( PROP_DEF != m_nYear ) sResult += L"\\yr" + std::to_wstring(m_nYear);
if( PROP_DEF != m_nMonth ) sResult += L"\\mo" + std::to_wstring(m_nMonth);
if( PROP_DEF != m_nDay ) sResult += L"\\dy" + std::to_wstring(m_nDay);
if( PROP_DEF != m_nHour ) sResult += L"\\hr" + std::to_wstring(m_nHour);
if( PROP_DEF != m_nMin ) sResult += L"\\min" + std::to_wstring(m_nMin);
if( PROP_DEF != m_nSecond ) sResult += L"\\sec" + std::to_wstring(m_nSecond);
return sResult;
}
std::wstring RtfTime::RenderToOOX(RenderParameter oRenderParameter)
@ -3064,7 +3064,7 @@ std::wstring RtfTime::RenderToOOX(RenderParameter oRenderParameter)
int nDay = 0;
if( PROP_DEF != m_nDay ) nDay = m_nDay;
sResult = boost::lexical_cast<std::wstring>(nYear) + L"-" + boost::lexical_cast<std::wstring>(nMonth) + L"-" + boost::lexical_cast<std::wstring>(nDay) + L"T";
sResult = std::to_wstring(nYear) + L"-" + std::to_wstring(nMonth) + L"-" + std::to_wstring(nDay) + L"T";
}
if( PROP_DEF != m_nHour || PROP_DEF != m_nMin || PROP_DEF != m_nSecond )
{
@ -3075,7 +3075,7 @@ std::wstring RtfTime::RenderToOOX(RenderParameter oRenderParameter)
int nSecond = 0;
if( PROP_DEF != m_nSecond ) nSecond = m_nSecond;
sResult = boost::lexical_cast<std::wstring>(nHour) + L":" + boost::lexical_cast<std::wstring>(nMin) + L":" + boost::lexical_cast<std::wstring>(nSecond) + L"Z";
sResult = std::to_wstring(nHour) + L":" + std::to_wstring(nMin) + L":" + std::to_wstring(nSecond) + L"Z";
}
return sResult;
}

View File

@ -75,14 +75,14 @@
{\
sResult += L"<";\
sResult += sName;\
sResult += L" w:val=\"" + boost::lexical_cast<std::wstring>(prop) + L"\"/>";\
sResult += L" w:val=\"" + std::to_wstring(prop) + L"\"/>";\
}
#define RENDER_OOX_INT_ATTRIBUTE( prop, sResult, sName)\
if ( PROP_DEF != prop )\
{\
sResult += L" ";\
sResult += sName;\
sResult += L"=\"" + boost::lexical_cast<std::wstring>(prop) + L"\"";\
sResult += L"=\"" + std::to_wstring(prop) + L"\"";\
}
#define RENDER_OOX_BOOL_ATTRIBUTE( prop, sResult, sName)\
if ( 0 == prop )\
@ -116,11 +116,11 @@
{\
sResult += L"\\";\
sResult += sName;\
sResult += boost::lexical_cast<std::wstring>( prop );\
sResult += std::to_wstring( prop );\
}
#define RENDER_RTF_SHAPE_PROP( sName, sResult, prop)\
if ( PROP_DEF != prop )\
sResult += L"{\\sp{\\sn " + std::wstring(sName) + L"}{\\sv " + boost::lexical_cast<std::wstring>( prop ) + L"}}";
sResult += L"{\\sp{\\sn " + std::wstring(sName) + L"}{\\sv " + std::to_wstring( prop ) + L"}}";
class RtfSection;
typedef boost::shared_ptr<RtfSection> RtfSectionPtr;
@ -629,8 +629,8 @@ private:
if ( true == GetStringByTheme( sTheme, m_eTheme ) )
{
sResult += L"theme" + sParam + L"Color=\"" + sTheme +L"\"";
sResult += L" theme" + sParam + L"Shade=\"" + boost::lexical_cast<std::wstring>(m_byteShade) + L"\"";
sResult += L" theme" + sParam + L"Tint=\"" + boost::lexical_cast<std::wstring>(m_byteTint) + L"\"";
sResult += L" theme" + sParam + L"Shade=\"" + std::to_wstring(m_byteShade) + L"\"";
sResult += L" theme" + sParam + L"Tint=\"" + std::to_wstring(m_byteTint) + L"\"";
}
}
return sResult;
@ -1415,7 +1415,7 @@ public:
nReplaceNumber++;
nLevel = sResult[ nReplaceNumber];
}
std::wstring sExt = L"%" + boost::lexical_cast<std::wstring>(nLevel);
std::wstring sExt = L"%" + std::to_wstring(nLevel);
sResult.erase( nReplaceNumber, 1 );
sResult.insert(sResult.begin() + nReplaceNumber, sExt.begin(), sExt.end());
@ -1529,7 +1529,7 @@ public:
for( int i = 0; i < nOverrideCount; i++ )
if ( PROP_DEF == m_aOverrideLevels[i].m_nLevelIndex )
nOverrideCount--;
sResult += L"\\listoverridecount" + boost::lexical_cast<std::wstring>( nOverrideCount );
sResult += L"\\listoverridecount" + std::to_wstring( nOverrideCount );
for( int i = 0; i < nOverrideCount; i++ )
{
if ( PROP_DEF != m_aOverrideLevels[i].m_nLevelIndex )
@ -1537,9 +1537,9 @@ public:
sResult += L"{\\lfolevel";
if ( PROP_DEF != m_aOverrideLevels[i].m_nLevelIndex )
sResult += L"\\listoverrideformat" + boost::lexical_cast<std::wstring>( m_aOverrideLevels[i].m_nLevelIndex );
sResult += L"\\listoverrideformat" + std::to_wstring( m_aOverrideLevels[i].m_nLevelIndex );
if ( PROP_DEF != m_aOverrideLevels[i].m_nStart )
sResult += L"\\listoverridestartat" + boost::lexical_cast<std::wstring>( m_aOverrideLevels[i].m_nStart );
sResult += L"\\listoverridestartat" + std::to_wstring( m_aOverrideLevels[i].m_nStart );
sResult += m_aOverrideLevels[i].m_oLevel.RenderToRtf(oRenderParameter);
sResult += L"}";
@ -1555,9 +1555,9 @@ public:
ListOverrideLevel& OverrideLevel = m_aOverrideLevels[i];
if ( PROP_DEF != OverrideLevel.m_nLevelIndex )
{
sResult += L"<w:lvlOverride w:ilvl=\"" + boost::lexical_cast<std::wstring>(OverrideLevel.m_nLevelIndex) + L"\">";
sResult += L"<w:lvlOverride w:ilvl=\"" + std::to_wstring(OverrideLevel.m_nLevelIndex) + L"\">";
if ( PROP_DEF != OverrideLevel.m_nStart )
sResult += L"<w:startOverride w:val=\"" + boost::lexical_cast<std::wstring>(OverrideLevel.m_nStart) + L"\"/>";
sResult += L"<w:startOverride w:val=\"" + std::to_wstring(OverrideLevel.m_nStart) + L"\"/>";
sResult += OverrideLevel.m_oLevel.RenderToOOX2(oRenderParameter, OverrideLevel.m_nLevelIndex);
sResult += L"</w:lvlOverride>";
}
@ -1699,10 +1699,10 @@ public:
std::wstring sResult;
switch( m_eType )
{
case stParagraph : sResult += L"{\\s" + boost::lexical_cast<std::wstring>( m_nID); break;
case stCharacter : sResult += L"{\\*\\cs" + boost::lexical_cast<std::wstring>( m_nID); break;
case stSection : sResult += L"{\\*\\ds" + boost::lexical_cast<std::wstring>( m_nID); break;
case stTable : sResult += L"{\\*\\ts" + boost::lexical_cast<std::wstring>( m_nID) + L"\\tsrowd"; break;
case stParagraph : sResult += L"{\\s" + std::to_wstring( m_nID); break;
case stCharacter : sResult += L"{\\*\\cs" + std::to_wstring( m_nID); break;
case stSection : sResult += L"{\\*\\ds" + std::to_wstring( m_nID); break;
case stTable : sResult += L"{\\*\\ts" + std::to_wstring( m_nID) + L"\\tsrowd"; break;
}
return sResult;
}

View File

@ -41,7 +41,7 @@ std::wstring RtfDocumentProperty::RenderToRtf(RenderParameter oRenderParameter)
{
sResult += L"\\ansi";
if( PROP_DEF != m_nAnsiCodePage )
sResult += L"\\ansicpg" + boost::lexical_cast<std::wstring>( m_nAnsiCodePage );
sResult += L"\\ansicpg" + std::to_wstring( m_nAnsiCodePage );
break;
}
@ -158,7 +158,7 @@ std::wstring RtfDocumentProperty::RenderToOOX(RenderParameter oRenderParameter)
RENDER_OOX_INT( m_nTabWidth, sResult, L"w:defaultTabStop" )
if( PROP_DEF != m_nZoom )
sResult += L"<w:zoom w:percent=\"" + boost::lexical_cast<std::wstring>(m_nZoom) + L"\" />";
sResult += L"<w:zoom w:percent=\"" + std::to_wstring(m_nZoom) + L"\" />";
//Page Borders
if( PROP_DEF != m_bDorderSurroundHeader )
{
@ -188,7 +188,7 @@ std::wstring RtfDocumentProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sFootnoteProp;
for( int i = 0; i < m_aSpecialFootnotes.size(); i++ )
{
sFootnoteProp += L"<w:footnote w:id=\"" + boost::lexical_cast<std::wstring>(m_aSpecialFootnotes[i]) + L"\" />";
sFootnoteProp += L"<w:footnote w:id=\"" + std::to_wstring(m_aSpecialFootnotes[i]) + L"\" />";
}
if( PROP_DEF != m_nFootnoteNumberingFormat )
@ -225,7 +225,7 @@ std::wstring RtfDocumentProperty::RenderToOOX(RenderParameter oRenderParameter)
//todooo проверить id
for( int i = 0; i < m_aSpecialEndnotes.size(); i++ )
{
sEndnoteProp += L"<w:endnote w:id=\"" + boost::lexical_cast<std::wstring>(m_aSpecialEndnotes[i]) + L"\"/>";
sEndnoteProp += L"<w:endnote w:id=\"" + std::to_wstring(m_aSpecialEndnotes[i]) + L"\"/>";
}
if( PROP_DEF != m_nFootnoteNumberingFormat )
{
@ -313,7 +313,7 @@ std::wstring RtfSectionProperty::RenderToRtf(RenderParameter oRenderParameter)
{
for( int i = 0; i < nCollFormCount; i++ )
{
sResult += L"\\colno" + boost::lexical_cast<std::wstring>( i + 1 );
sResult += L"\\colno" + std::to_wstring( i + 1 );
RENDER_RTF_INT( m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnSpaceToRightOfCol, sResult, L"colsr" )
RENDER_RTF_INT( m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnWidth, sResult, L"colw" )
}
@ -536,9 +536,9 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sPaperSource;
if( PROP_DEF != m_nPaperSourceFirst )
sPaperSource += L" w:first=\"" + boost::lexical_cast<std::wstring>(m_nPaperSourceFirst) + L"\"";
sPaperSource += L" w:first=\"" + std::to_wstring(m_nPaperSourceFirst) + L"\"";
if( PROP_DEF != m_nPaperSourceFirst )
sPaperSource += L" w:other=\"" + boost::lexical_cast<std::wstring>(m_nPaperSourceOther) + L"\"";
sPaperSource += L" w:other=\"" + std::to_wstring(m_nPaperSourceOther) + L"\"";
if( !sPaperSource.empty() )
sResult += L"<w:paperSrc " + sPaperSource + L"/>";
@ -572,9 +572,9 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
bEqualWidth = true;
break;
}
sCollumnFormating += L"<w:cols w:num=\"" + boost::lexical_cast<std::wstring>(m_nColumnNumber) + L"\"";
sCollumnFormating += L"<w:cols w:num=\"" + std::to_wstring(m_nColumnNumber) + L"\"";
if( PROP_DEF != m_nColumnSpace )
sCollumnFormating += L" w:space=\"" + boost::lexical_cast<std::wstring>(m_nColumnSpace) + L"\"";
sCollumnFormating += L" w:space=\"" + std::to_wstring(m_nColumnSpace) + L"\"";
if( true == bEqualWidth )
sCollumnFormating += L" w:equalWidth=\"true\"/>";
else
@ -584,9 +584,9 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
{
sCollumnFormating += L"<w:col";
if( PROP_DEF != m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnWidth )
sCollumnFormating += L" w:w=\"" + boost::lexical_cast<std::wstring>(m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnWidth) + L"\"";
sCollumnFormating += L" w:w=\"" + std::to_wstring(m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnWidth) + L"\"";
if( PROP_DEF != m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnSpaceToRightOfCol )
sCollumnFormating += L" w:space=\"" + boost::lexical_cast<std::wstring>(m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnSpaceToRightOfCol ) + L"\"";
sCollumnFormating += L" w:space=\"" + std::to_wstring(m_oCollumnProperty.m_aCollumnProperty[i].m_nColumnSpaceToRightOfCol ) + L"\"";
sCollumnFormating += L"/>";
}
sCollumnFormating += L"</w:cols>";
@ -674,11 +674,11 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
//Line Numbering
std::wstring sLineNumbering;
if( PROP_DEF != m_nLineModulus )
sLineNumbering += L" w:countBy=\"" + boost::lexical_cast<std::wstring>(m_nLineModulus) + L"\"";
sLineNumbering += L" w:countBy=\"" + std::to_wstring(m_nLineModulus) + L"\"";
if( PROP_DEF != m_nLineX && 0 != m_nLineX)
sLineNumbering += L" w:distance=\"" + boost::lexical_cast<std::wstring>(m_nLineX) + L"\"";
sLineNumbering += L" w:distance=\"" + std::to_wstring(m_nLineX) + L"\"";
if( PROP_DEF != m_nLineStart )
sLineNumbering += L" w:start=\"" + boost::lexical_cast<std::wstring>(m_nLineStart) + L"\"";
sLineNumbering += L" w:start=\"" + std::to_wstring(m_nLineStart) + L"\"";
switch( m_eLineNumberRestart )
{
case lnr_linerestart: sLineNumbering += L" w:restart=\"newSection\""; break;
@ -691,9 +691,9 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
//Page Information
std::wstring sPageSize;
if( PROP_DEF != m_nPageWidth )
sPageSize += L" w:w=\"" + boost::lexical_cast<std::wstring>(m_nPageWidth) + L"\"";
sPageSize += L" w:w=\"" + std::to_wstring(m_nPageWidth) + L"\"";
if( PROP_DEF != m_nPageHeight )
sPageSize += L" w:h=\"" + boost::lexical_cast<std::wstring>(m_nPageHeight) + L"\"";
sPageSize += L" w:h=\"" + std::to_wstring(m_nPageHeight) + L"\"";
if( 1 == m_bLandscapeFormat )
sPageSize += L" w:orient=\"landscape\"";
if( false == sPageSize.empty() )
@ -701,19 +701,19 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
std::wstring sMargin;
if( PROP_DEF != m_nMarginLeft )
sMargin += L" w:left=\"" + boost::lexical_cast<std::wstring>(m_nMarginLeft) + L"\"";
sMargin += L" w:left=\"" + std::to_wstring(m_nMarginLeft) + L"\"";
if( PROP_DEF != m_nMarginRight )
sMargin += L" w:right=\"" + boost::lexical_cast<std::wstring>(m_nMarginRight) + L"\"";
sMargin += L" w:right=\"" + std::to_wstring(m_nMarginRight) + L"\"";
if( PROP_DEF != m_nMarginTop )
sMargin += L" w:top=\"" + boost::lexical_cast<std::wstring>(m_nMarginTop) + L"\"";
sMargin += L" w:top=\"" + std::to_wstring(m_nMarginTop) + L"\"";
if( PROP_DEF != m_nMarginBottom )
sMargin += L" w:bottom=\"" + boost::lexical_cast<std::wstring>(m_nMarginBottom) + L"\"";
sMargin += L" w:bottom=\"" + std::to_wstring(m_nMarginBottom) + L"\"";
if( PROP_DEF != m_nGutterMarginWidth )
sMargin += L" w:gutter=\"" + boost::lexical_cast<std::wstring>(m_nGutterMarginWidth) + L"\"";
sMargin += L" w:gutter=\"" + std::to_wstring(m_nGutterMarginWidth) + L"\"";
if( PROP_DEF != m_nHeaderTop )
sMargin += L" w:header=\"" + boost::lexical_cast<std::wstring>(m_nHeaderTop) + L"\"";
sMargin += L" w:header=\"" + std::to_wstring(m_nHeaderTop) + L"\"";
if( PROP_DEF != m_nFooterBottom )
sMargin += L" w:footer=\"" + boost::lexical_cast<std::wstring>(m_nFooterBottom) + L"\"";
sMargin += L" w:footer=\"" + std::to_wstring(m_nFooterBottom) + L"\"";
if( false == sMargin.empty() )
sResult += L"<w:pgMar " + sMargin + L"/>";
if( 1 == m_bTitlePage )
@ -722,7 +722,7 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
//Page Numbers
std::wstring sPageNumber;
if( PROP_DEF != m_nPageNumberStart )
sPageNumber += L" w:start=\"" + boost::lexical_cast<std::wstring>(m_nPageNumberStart) + L"\"";
sPageNumber += L" w:start=\"" + std::to_wstring(m_nPageNumberStart) + L"\"";
if( false == sPageNumber.empty() )
sResult += L"<w:pgNumType " + sPageNumber + L"/>";
//Vertical Alignment
@ -829,7 +829,7 @@ std::wstring RtfSectionProperty::RenderToOOX(RenderParameter oRenderParameter)
RenderParameter oRenderParameterNew = oRenderParameter;
oRenderParameterNew.nType = RENDER_TO_OOX_PARAM_UNKNOWN;
sResult += L"<w:sectPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:sectPrChange w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += m_pOldSectionProp->RenderToOOX(oRenderParameterNew);
sResult += L"</w:sectPrChange>";
}
@ -843,9 +843,9 @@ std::wstring RtfSectionProperty::SaveFile( TextItemContainerPtr oTarget, RenderP
std::wstring sFilename;
if( true == bHeader )
sFilename += L"header" + boost::lexical_cast<std::wstring>(poRtfDocument->m_oIdGenerator.Generate_HeaderNumber()) + L".xml";
sFilename += L"header" + std::to_wstring(poRtfDocument->m_oIdGenerator.Generate_HeaderNumber()) + L".xml";
else
sFilename += L"footer" + boost::lexical_cast<std::wstring>(poRtfDocument->m_oIdGenerator.Generate_FooterNumber()) + L".xml";
sFilename += L"footer" + std::to_wstring(poRtfDocument->m_oIdGenerator.Generate_FooterNumber()) + L".xml";
std::wstring sContent;
std::wstring sRootName;

View File

@ -391,54 +391,54 @@ std::wstring RtfShape::RenderToRtfShapeProperty(RenderParameter oRenderParameter
std::wstring sResult;
//Position absolute
RENDER_RTF_SHAPE_PROP(L"posh", sResult, m_nPositionH);
RENDER_RTF_SHAPE_PROP(L"posrelh", sResult, m_nPositionHRelative);
RENDER_RTF_SHAPE_PROP(L"posv", sResult, m_nPositionV);
RENDER_RTF_SHAPE_PROP(L"posh", sResult, m_nPositionH);
RENDER_RTF_SHAPE_PROP(L"posrelh", sResult, m_nPositionHRelative);
RENDER_RTF_SHAPE_PROP(L"posv", sResult, m_nPositionV);
RENDER_RTF_SHAPE_PROP(L"posrelv", sResult, m_nPositionVRelative);
RENDER_RTF_SHAPE_PROP(L"fLayoutInCell", sResult, m_bLayoutInCell);
RENDER_RTF_SHAPE_PROP(L"fAllowOverlap", sResult, m_bAllowOverlap);
RENDER_RTF_SHAPE_PROP(L"posrelv", sResult, m_nPositionVRelative);
RENDER_RTF_SHAPE_PROP(L"fLayoutInCell", sResult, m_bLayoutInCell);
RENDER_RTF_SHAPE_PROP(L"fAllowOverlap", sResult, m_bAllowOverlap);
//Position relative
RENDER_RTF_SHAPE_PROP(L"pctHorizPos", sResult, m_nPositionHPct);
RENDER_RTF_SHAPE_PROP(L"pctVertPos", sResult, m_nPositionVPct);
RENDER_RTF_SHAPE_PROP(L"pctHoriz", sResult, m_nPctWidth);
RENDER_RTF_SHAPE_PROP(L"pctVert", sResult, m_nPctHeight);
RENDER_RTF_SHAPE_PROP(L"sizerelh", sResult, m_nPctWidthRelative);
RENDER_RTF_SHAPE_PROP(L"sizerelv", sResult, m_nPctHeightRelative);
RENDER_RTF_SHAPE_PROP(L"colStart", sResult, m_nColStart);
RENDER_RTF_SHAPE_PROP(L"colSpan", sResult, m_nColSpan);
RENDER_RTF_SHAPE_PROP(L"pctHorizPos", sResult, m_nPositionHPct);
RENDER_RTF_SHAPE_PROP(L"pctVertPos", sResult, m_nPositionVPct);
RENDER_RTF_SHAPE_PROP(L"pctHoriz", sResult, m_nPctWidth);
RENDER_RTF_SHAPE_PROP(L"pctVert", sResult, m_nPctHeight);
RENDER_RTF_SHAPE_PROP(L"sizerelh", sResult, m_nPctWidthRelative);
RENDER_RTF_SHAPE_PROP(L"sizerelv", sResult, m_nPctHeightRelative);
RENDER_RTF_SHAPE_PROP(L"colStart", sResult, m_nColStart);
RENDER_RTF_SHAPE_PROP(L"colSpan", sResult, m_nColSpan);
//Rehydration
//RENDER_RTF_SHAPE_PROP(L"metroBlob", sResult, m_sMetroBlob);
//Object Type
RENDER_RTF_SHAPE_PROP(L"fIsBullet", sResult, m_bIsBullet);
RENDER_RTF_SHAPE_PROP(L"rotation", sResult, m_nRotation);
RENDER_RTF_SHAPE_PROP(L"fFlipV", sResult, m_bFlipV);
RENDER_RTF_SHAPE_PROP(L"fFlipH", sResult, m_bFlipH);
RENDER_RTF_SHAPE_PROP(L"shapeType", sResult, m_nShapeType);
RENDER_RTF_SHAPE_PROP(L"fBehindDocument", sResult, m_nZOrderRelative);
RENDER_RTF_SHAPE_PROP(L"fHidden", sResult, m_bHidden);
RENDER_RTF_SHAPE_PROP(L"fIsBullet", sResult, m_bIsBullet);
RENDER_RTF_SHAPE_PROP(L"rotation", sResult, m_nRotation);
RENDER_RTF_SHAPE_PROP(L"fFlipV", sResult, m_bFlipV);
RENDER_RTF_SHAPE_PROP(L"fFlipH", sResult, m_bFlipH);
RENDER_RTF_SHAPE_PROP(L"shapeType", sResult, m_nShapeType);
RENDER_RTF_SHAPE_PROP(L"fBehindDocument",sResult, m_nZOrderRelative);
RENDER_RTF_SHAPE_PROP(L"fHidden", sResult, m_bHidden);
//Text
//sResult += L"{\\sp{\\sn fLockText}{\\sv 0}}";
RENDER_RTF_SHAPE_PROP(L"dxTextLeft", sResult, m_nTexpLeft);
RENDER_RTF_SHAPE_PROP(L"dyTextTop", sResult, m_nTexpTop);
RENDER_RTF_SHAPE_PROP(L"dxTextRight", sResult, m_nTexpRight);
RENDER_RTF_SHAPE_PROP(L"dyTextBottom", sResult, m_nTexpBottom);
RENDER_RTF_SHAPE_PROP(L"dxTextLeft", sResult, m_nTexpLeft);
RENDER_RTF_SHAPE_PROP(L"dyTextTop", sResult, m_nTexpTop);
RENDER_RTF_SHAPE_PROP(L"dxTextRight", sResult, m_nTexpRight);
RENDER_RTF_SHAPE_PROP(L"dyTextBottom", sResult, m_nTexpBottom);
RENDER_RTF_SHAPE_PROP(L"anchorText", sResult, m_nAnchorText);
//else
{
RENDER_RTF_SHAPE_PROP(L"dxWrapDistLeft", sResult, RtfUtility::Twips2Emu( m_nWrapDistLeft ));
RENDER_RTF_SHAPE_PROP(L"dyWrapDistTop", sResult, RtfUtility::Twips2Emu( m_nWrapDistTop ));
RENDER_RTF_SHAPE_PROP(L"dxWrapDistRight", sResult, RtfUtility::Twips2Emu( m_nWrapDistRight ));
RENDER_RTF_SHAPE_PROP(L"dyWrapDistBottom", sResult, RtfUtility::Twips2Emu( m_nWrapDistBottom ));
RENDER_RTF_SHAPE_PROP(L"dxWrapDistLeft", sResult, RtfUtility::Twips2Emu( m_nWrapDistLeft ));
RENDER_RTF_SHAPE_PROP(L"dyWrapDistTop", sResult, RtfUtility::Twips2Emu( m_nWrapDistTop ));
RENDER_RTF_SHAPE_PROP(L"dxWrapDistRight", sResult, RtfUtility::Twips2Emu( m_nWrapDistRight ));
RENDER_RTF_SHAPE_PROP(L"dyWrapDistBottom", sResult, RtfUtility::Twips2Emu( m_nWrapDistBottom ));
}
RENDER_RTF_SHAPE_PROP(L"fFitShapeToText", sResult, m_bFitShapeToText);
RENDER_RTF_SHAPE_PROP(L"fFitTextToShape", sResult, m_bFitTextToShape);
RENDER_RTF_SHAPE_PROP(L"ccol", sResult, m_nCcol);
RENDER_RTF_SHAPE_PROP(L"txdir", sResult, m_nTxdir);
RENDER_RTF_SHAPE_PROP(L"fFitShapeToText", sResult, m_bFitShapeToText);
RENDER_RTF_SHAPE_PROP(L"fFitTextToShape", sResult, m_bFitTextToShape);
RENDER_RTF_SHAPE_PROP(L"ccol", sResult, m_nCcol);
RENDER_RTF_SHAPE_PROP(L"txdir", sResult, m_nTxdir);
RENDER_RTF_SHAPE_PROP(L"WrapText", sResult, m_nWrapText);
//Geometry
RENDER_RTF_SHAPE_PROP(L"adjustValue", sResult, m_nAdjustValue[0] );
@ -452,54 +452,61 @@ std::wstring RtfShape::RenderToRtfShapeProperty(RenderParameter oRenderParameter
RENDER_RTF_SHAPE_PROP(L"adjust9Value", sResult, m_nAdjustValue[8] );
RENDER_RTF_SHAPE_PROP(L"adjust10Value", sResult, m_nAdjustValue[9] );
//custom
RENDER_RTF_SHAPE_PROP(L"geoLeft", sResult, m_nGeoLeft );
RENDER_RTF_SHAPE_PROP(L"geoTop", sResult, m_nGeoTop);
RENDER_RTF_SHAPE_PROP(L"geoRight", sResult, m_nGeoRight );
RENDER_RTF_SHAPE_PROP(L"geoBottom", sResult, m_nGeoBottom );
RENDER_RTF_SHAPE_PROP(L"shapePath", sResult, m_nShapePath );
RENDER_RTF_SHAPE_PROP(L"geoLeft", sResult, m_nGeoLeft );
RENDER_RTF_SHAPE_PROP(L"geoTop", sResult, m_nGeoTop);
RENDER_RTF_SHAPE_PROP(L"geoRight", sResult, m_nGeoRight );
RENDER_RTF_SHAPE_PROP(L"geoBottom", sResult, m_nGeoBottom );
RENDER_RTF_SHAPE_PROP(L"shapePath", sResult, m_nShapePath );
if( !m_aPVerticles.empty())
{
sResult += L"{\\sp{\\sn pVerticies}{\\sv 8;" + boost::lexical_cast<std::wstring>( m_aPVerticles.size() );
sResult += L"{\\sp{\\sn pVerticies}{\\sv 8;" + std::to_wstring( m_aPVerticles.size() );
for( int i = 0; i < m_aPVerticles.size(); i ++ )
sResult += L";(" + boost::lexical_cast<std::wstring>(m_aPVerticles[i].first) + L","+ boost::lexical_cast<std::wstring>(m_aPVerticles[i].second) + L")";
{
sResult += L";(" + std::to_wstring(m_aPVerticles[i].first) + L","+ std::to_wstring(m_aPVerticles[i].second) + L")";
}
sResult += L"}}";
}
if( !m_aPSegmentInfo.empty())
{
sResult += L"{\\sp{\\sn pSegmentInfo}{\\sv ";
sResult += L"{\\sp{\\sn pSegmentInfo}{\\sv 2;" + boost::lexical_cast<std::wstring>( m_aPSegmentInfo.size() );
sResult += L"{\\sp{\\sn pSegmentInfo}{\\sv 2;" + std::to_wstring( m_aPSegmentInfo.size() );
for( int i = 0; i < m_aPSegmentInfo.size(); i ++ )
sResult += L";" + boost::lexical_cast<std::wstring>( m_aPSegmentInfo[i] );
sResult += L";" + std::to_wstring( m_aPSegmentInfo[i] );
sResult += L"}}";
}
//Connectors
RENDER_RTF_SHAPE_PROP(L"cxk", sResult, m_nConnectionType );
RENDER_RTF_SHAPE_PROP(L"cxstyle", sResult, m_nConnectorStyle );
RENDER_RTF_SHAPE_PROP(L"cxk", sResult, m_nConnectionType );
RENDER_RTF_SHAPE_PROP(L"cxstyle", sResult, m_nConnectorStyle );
//Picture Effects
RENDER_RTF_SHAPE_PROP(L"cropFromTop", sResult, m_nCropFromTop );
RENDER_RTF_SHAPE_PROP(L"cropFromBottom", sResult, m_nCropFromBottom );
RENDER_RTF_SHAPE_PROP(L"cropFromLeft", sResult, m_nCropFromLeft );
RENDER_RTF_SHAPE_PROP(L"cropFromRight", sResult, m_nCropFromRight );
RENDER_RTF_SHAPE_PROP(L"cropFromTop", sResult, m_nCropFromTop );
RENDER_RTF_SHAPE_PROP(L"cropFromBottom", sResult, m_nCropFromBottom );
RENDER_RTF_SHAPE_PROP(L"cropFromLeft", sResult, m_nCropFromLeft );
RENDER_RTF_SHAPE_PROP(L"cropFromRight", sResult, m_nCropFromRight );
//Grouped Shapes
RENDER_RTF_SHAPE_PROP(L"groupBottom", sResult, m_nGroupBottom );
RENDER_RTF_SHAPE_PROP(L"groupLeft", sResult, m_nGroupLeft );
RENDER_RTF_SHAPE_PROP(L"groupRight", sResult, m_nGroupRight );
RENDER_RTF_SHAPE_PROP(L"groupTop", sResult, m_nGroupTop );
RENDER_RTF_SHAPE_PROP(L"relBottom", sResult, m_nRelBottom );
RENDER_RTF_SHAPE_PROP(L"relLeft", sResult, m_nRelLeft );
RENDER_RTF_SHAPE_PROP(L"relRight", sResult, m_nRelRight );
RENDER_RTF_SHAPE_PROP(L"relTop", sResult, m_nRelTop );
RENDER_RTF_SHAPE_PROP(L"relRotation", sResult, m_nRelRotation );
RENDER_RTF_SHAPE_PROP(L"dhgt", sResult, m_nRelZOrder );
RENDER_RTF_SHAPE_PROP(L"groupBottom", sResult, m_nGroupBottom );
RENDER_RTF_SHAPE_PROP(L"groupLeft", sResult, m_nGroupLeft );
RENDER_RTF_SHAPE_PROP(L"groupRight", sResult, m_nGroupRight );
RENDER_RTF_SHAPE_PROP(L"groupTop", sResult, m_nGroupTop );
RENDER_RTF_SHAPE_PROP(L"relBottom", sResult, m_nRelBottom );
RENDER_RTF_SHAPE_PROP(L"relLeft", sResult, m_nRelLeft );
RENDER_RTF_SHAPE_PROP(L"relRight", sResult, m_nRelRight );
RENDER_RTF_SHAPE_PROP(L"relTop", sResult, m_nRelTop );
RENDER_RTF_SHAPE_PROP(L"relRotation", sResult, m_nRelRotation );
RENDER_RTF_SHAPE_PROP(L"dhgt", sResult, m_nRelZOrder );
//Fill
if( 0 == m_bFilled )
sResult += L"{\\sp{\\sn fFilled}{\\sv 0}}";
RENDER_RTF_SHAPE_PROP(L"fillType", sResult, m_nFillType );
RENDER_RTF_SHAPE_PROP(L"fillColor", sResult, m_nFillColor );
RENDER_RTF_SHAPE_PROP(L"fillBackColor", sResult, m_nFillColor2 );
RENDER_RTF_SHAPE_PROP(L"fillOpacity", sResult, ( m_nFillOpacity * 65536 /100 ) );
RENDER_RTF_SHAPE_PROP(L"fillFocus", sResult, m_nFillFocus );
RENDER_RTF_SHAPE_PROP(L"fillAngle", sResult, m_nFillAngle * 65536 );
RENDER_RTF_SHAPE_PROP(L"fillType", sResult, m_nFillType );
RENDER_RTF_SHAPE_PROP(L"fillColor", sResult, m_nFillColor );
RENDER_RTF_SHAPE_PROP(L"fillBackColor", sResult, m_nFillColor2 );
if (PROP_DEF != m_nFillOpacity)
RENDER_RTF_SHAPE_PROP(L"fillOpacity", sResult, ( m_nFillOpacity * 65536 /100 ) );
RENDER_RTF_SHAPE_PROP(L"fillFocus", sResult, m_nFillFocus );
if (PROP_DEF != m_nFillAngle)
RENDER_RTF_SHAPE_PROP(L"fillAngle", sResult, m_nFillAngle * 65536 );
//Line
if( 0 == m_bLine )
sResult += L"{\\sp{\\sn fLine}{\\sv 0}}";
@ -516,9 +523,9 @@ std::wstring RtfShape::RenderToRtfShapeProperty(RenderParameter oRenderParameter
//pWrapPolygonVertices Points of the text wrap polygon.
if( !m_aWrapPoints.empty())
{
sResult += L"{\\sp{\\sn pWrapPolygonVertices}{\\sv 8;" + boost::lexical_cast<std::wstring>(m_aWrapPoints.size());
sResult += L"{\\sp{\\sn pWrapPolygonVertices}{\\sv 8;" + std::to_wstring(m_aWrapPoints.size());
for( int i = 0; i < m_aWrapPoints.size(); i ++ )
sResult += L";(" + boost::lexical_cast<std::wstring>(m_aWrapPoints[i].first) + L"," + boost::lexical_cast<std::wstring>(m_aWrapPoints[i].second) + L")";
sResult += L";(" + std::to_wstring(m_aWrapPoints[i].first) + L"," + std::to_wstring(m_aWrapPoints[i].second) + L")";
sResult += L"}}";
}
//WordArt
@ -551,12 +558,12 @@ std::wstring RtfShape::RenderToRtfShapeProperty(RenderParameter oRenderParameter
sResult += L"}}";
}
RENDER_RTF_SHAPE_PROP(L"gtextSize", sResult, m_nGtextSize );
RENDER_RTF_SHAPE_PROP(L"gtextFVertical", sResult, m_bGtextFVertical);
RENDER_RTF_SHAPE_PROP(L"gtextFKern", sResult, m_bGtextFKern);
RENDER_RTF_SHAPE_PROP(L"gtextFStretch", sResult, m_bGtextFStretch);
RENDER_RTF_SHAPE_PROP(L"gtextFShrinkFit", sResult, m_bGtextFShrinkFit);
RENDER_RTF_SHAPE_PROP(L"gtextFBestFit", sResult, m_bGtextFBestFit);
RENDER_RTF_SHAPE_PROP(L"gtextSize", sResult, m_nGtextSize );
RENDER_RTF_SHAPE_PROP(L"gtextFVertical", sResult, m_bGtextFVertical);
RENDER_RTF_SHAPE_PROP(L"gtextFKern", sResult, m_bGtextFKern);
RENDER_RTF_SHAPE_PROP(L"gtextFStretch", sResult, m_bGtextFStretch);
RENDER_RTF_SHAPE_PROP(L"gtextFShrinkFit", sResult, m_bGtextFShrinkFit);
RENDER_RTF_SHAPE_PROP(L"gtextFBestFit", sResult, m_bGtextFBestFit);
}
return sResult;
@ -647,6 +654,7 @@ std::wstring RtfShape::GetShapeNodeName(int type)
default: return L"v:shape";
}
}
std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
{
if( !IsValid() ) return L"";
@ -674,7 +682,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oCharProperty.m_nRevauth);
std::wstring sDate(RtfUtility::convertDateTime(m_oCharProperty.m_nRevdttm).c_str());
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:ins w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oCharProperty.m_nRevised = PROP_DEF;
}
if (m_oCharProperty.m_nDeleted != PROP_DEF)
@ -684,7 +692,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
std::wstring sAuthor = poRtfDocument->m_oRevisionTable.GetAuthor(m_oCharProperty.m_nRevauthDel);
std::wstring sDate(RtfUtility::convertDateTime(m_oCharProperty.m_nRevdttmDel).c_str());
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + boost::lexical_cast<std::wstring>(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
sResult += L"<w:del w:date=\"" + sDate + L"\" w:author=\"" + sAuthor + L"\" w:id=\"" + std::to_wstring(poOOXWriter->m_nCurTrackChangesId++).c_str() + L"\">";
m_oCharProperty.m_nDeleted = PROP_DEF;
}
std::wstring sCharProp = m_oCharProperty.RenderToOOX(oRenderParameter);
@ -706,14 +714,14 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
if (m_sName.empty())
{
RtfDocument* poDocument = static_cast<RtfDocument*>( oRenderParameter.poDocument );
m_sName += L"_x0000_s " + boost::lexical_cast<std::wstring>(poDocument->GetShapeId( m_nID )) + L"";
m_sName += L"_x0000_s " + std::to_wstring(poDocument->GetShapeId( m_nID )) + L"";
}
sResult += L" id=\"" + m_sName + L"\"";
if( PROP_DEF != m_nShapeType && 0 != m_nShapeType)
{
sResult += L" type=\"#_x0000_t " + boost::lexical_cast<std::wstring>(m_nShapeType) + L"\"";
sResult += L" o:spt=\" " + boost::lexical_cast<std::wstring>(m_nShapeType) + L"\"";
sResult += L" type=\"#_x0000_t " + std::to_wstring(m_nShapeType) + L"\"";
sResult += L" o:spt=\" " + std::to_wstring(m_nShapeType) + L"\"";
}
if( 0 == m_bFilled) sResult += L" filled=\"f\"";
@ -781,11 +789,11 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
int nHeight = m_nRelBottom - m_nRelTop;
sStyle += L"position:absolute;";
sStyle += L"left: " + boost::lexical_cast<std::wstring>(m_nRelLeft) + L";";
sStyle += L"top: " + boost::lexical_cast<std::wstring>(m_nRelTop) + L";";
//sStyle += L"bottom: " + boost::lexical_cast<std::wstring>() + L";" , m_nRelBottom );
//sStyle += L"right: " + boost::lexical_cast<std::wstring>() + L";" , m_nRelRight);
sStyle += L"width: " + boost::lexical_cast<std::wstring>(nWidth) + L";height: " + boost::lexical_cast<std::wstring>(nHeight) + L";";
sStyle += L"left: " + std::to_wstring(m_nRelLeft) + L";";
sStyle += L"top: " + std::to_wstring(m_nRelTop) + L";";
//sStyle += L"bottom: " + std::to_wstring() + L";" , m_nRelBottom );
//sStyle += L"right: " + std::to_wstring() + L";" , m_nRelRight);
sStyle += L"width: " + std::to_wstring(nWidth) + L";height: " + std::to_wstring(nHeight) + L";";
}
else if( 0 != m_oPicture && PROP_DEF != m_oPicture->m_nWidthGoal && PROP_DEF != m_oPicture->m_nHeightGoal && PROP_DEF != (int)m_oPicture->m_dScaleX && PROP_DEF != (int)m_oPicture->m_dScaleY )
{
@ -818,7 +826,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nPositionHPct )//todo
{
sStyle += L"mso-left-percent: " + boost::lexical_cast<std::wstring>(m_nPositionHPct) + L";";
sStyle += L"mso-left-percent: " + std::to_wstring(m_nPositionHPct) + L";";
}
if( PROP_DEF != m_nPositionH && PROP_DEF == m_nPositionHRelative )
m_nPositionHRelative = 2;
@ -856,7 +864,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
case 5: sStyle += L"mso-position-vertical:outside;"; break;
}
if( PROP_DEF != m_nPositionVPct )
sStyle += L"mso-top-percent: " + boost::lexical_cast<std::wstring>(m_nPositionVPct) + L";";
sStyle += L"mso-top-percent: " + std::to_wstring(m_nPositionVPct) + L";";
if( PROP_DEF != m_nPositionV && PROP_DEF == m_nPositionVRelative )
m_nPositionVRelative =2;
@ -884,7 +892,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
}
}
if( PROP_DEF != m_nPctWidth )
sStyle += L"mso-width-percent: " + boost::lexical_cast<std::wstring>(m_nPctWidth) + L";";
sStyle += L"mso-width-percent: " + std::to_wstring(m_nPctWidth) + L";";
switch( m_nPctWidthRelative )
{
case 0: sStyle += L"mso-width-relative:margin;"; break;
@ -896,7 +904,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nPctHeight )
sStyle += L"mso-height-percent: " + boost::lexical_cast<std::wstring>(m_nPctHeight) + L";";
sStyle += L"mso-height-percent: " + std::to_wstring(m_nPctHeight) + L";";
switch( m_nPctHeightRelative )
{
@ -909,9 +917,9 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
}
if( PROP_DEF != m_nRotation )
sStyle += L"rotation: " + boost::lexical_cast<std::wstring>(m_nRotation / 65536) + L";";
sStyle += L"rotation: " + std::to_wstring(m_nRotation / 65536) + L";";
else if( PROP_DEF != m_nRelRotation )
sStyle += L"rotation: " + boost::lexical_cast<std::wstring>(m_nRelRotation / 65536) + L";";
sStyle += L"rotation: " + std::to_wstring(m_nRelRotation / 65536) + L";";
int nZIndex = PROP_DEF;
if( PROP_DEF != m_nRelZOrder )
@ -928,7 +936,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
else nZIndex -= 10000;
}
if (PROP_DEF != nZIndex)
sStyle += L"z-index: " + boost::lexical_cast<std::wstring>(nZIndex) + L";";
sStyle += L"z-index: " + std::to_wstring(nZIndex) + L";";
if( PROP_DEF != m_nWrapDistLeft )
sStyle += L"mso-wrap-distance-left:" + XmlUtils::DoubleToString(RtfUtility::Twip2pt( m_nWrapDistLeft ), L"%.2f") + L"pt;";
@ -963,12 +971,12 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
if( true == m_bIsOle ) sResult += L" o:ole=\"\"";
if( PROP_DEF != m_nGroupLeft && PROP_DEF != m_nGroupTop )
sResult += L" coordorigin=\" " + boost::lexical_cast<std::wstring>(m_nGroupLeft) + L", " + boost::lexical_cast<std::wstring>(m_nGroupTop) + L"\"";
sResult += L" coordorigin=\" " + std::to_wstring(m_nGroupLeft) + L", " + std::to_wstring(m_nGroupTop) + L"\"";
if( PROP_DEF != m_nGroupLeft && PROP_DEF != m_nGroupTop && PROP_DEF != m_nGroupRight && PROP_DEF != m_nGroupBottom)
sResult += L" coordsize=\" " + boost::lexical_cast<std::wstring>(m_nGroupRight - m_nGroupLeft) + L", " + boost::lexical_cast<std::wstring>(m_nGroupBottom - m_nGroupTop) + L"\"";
sResult += L" coordsize=\" " + std::to_wstring(m_nGroupRight - m_nGroupLeft) + L", " + std::to_wstring(m_nGroupBottom - m_nGroupTop) + L"\"";
else if ( PROP_DEF != m_nGeoLeft && PROP_DEF != m_nGeoTop && PROP_DEF != m_nGeoRight && PROP_DEF != m_nGeoBottom)
sResult += L" coordsize=\" " + boost::lexical_cast<std::wstring>(m_nGeoRight - m_nGeoLeft) + L", " + boost::lexical_cast<std::wstring>(m_nGeoBottom - m_nGeoTop) + L"\"";
sResult += L" coordsize=\" " + std::to_wstring(m_nGeoRight - m_nGeoLeft) + L", " + std::to_wstring(m_nGeoBottom - m_nGeoTop) + L"\"";
if (oRenderParameter.nType != RENDER_TO_OOX_PARAM_SHAPE_WSHAPE2)
{
@ -991,11 +999,11 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
if( PROP_DEF != m_nAdjustValue[0] )
{
std::wstring sAdjust;
sAdjust += L" " + boost::lexical_cast<std::wstring>(m_nAdjustValue[0]) + L"";
sAdjust += L" " + std::to_wstring(m_nAdjustValue[0]) + L"";
for (int i = 1 ; i < 10; i++)
{
if (PROP_DEF != m_nAdjustValue[i])
sAdjust += L", " + boost::lexical_cast<std::wstring>(m_nAdjustValue[i]) + L"";
sAdjust += L", " + std::to_wstring(m_nAdjustValue[i]) + L"";
else
sAdjust += L",";
}
@ -1032,11 +1040,11 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
if( !m_aWrapPoints.empty())
{
sResult += L" wrapcoords=\"";
sResult += L" " + boost::lexical_cast<std::wstring>(m_aWrapPoints[0].first) + L", " + boost::lexical_cast<std::wstring>(m_aWrapPoints[0].second) + L"";
sResult += L" " + std::to_wstring(m_aWrapPoints[0].first) + L", " + std::to_wstring(m_aWrapPoints[0].second) + L"";
for( int i = 0; i < (int)m_aWrapPoints.size(); i++ )
{
sResult += L", " + boost::lexical_cast<std::wstring>(m_aWrapPoints[i].first) + L", " + boost::lexical_cast<std::wstring>(m_aWrapPoints[i].second) + L"";
sResult += L", " + std::to_wstring(m_aWrapPoints[i].first) + L", " + std::to_wstring(m_aWrapPoints[i].second) + L"";
}
sResult += L"\"";
@ -1144,10 +1152,10 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
sResult += L"<v:textbox";
if (m_nTexpLeft != PROP_DEF && m_nTexpTop != PROP_DEF && m_nTexpRight != PROP_DEF && m_nTexpBottom != PROP_DEF)
{
sResult += L" inset=\" " + boost::lexical_cast<std::wstring>((int)RtfUtility::Emu2Pt(m_nTexpLeft)) + L"pt, "
+ boost::lexical_cast<std::wstring>((int)RtfUtility::Emu2Pt(m_nTexpTop)) + L"pt, "
+ boost::lexical_cast<std::wstring>((int)RtfUtility::Emu2Pt(m_nTexpRight)) + L"pt, "
+ boost::lexical_cast<std::wstring>((int)RtfUtility::Emu2Pt(m_nTexpBottom)) + L"pt\">";
sResult += L" inset=\" " + std::to_wstring((int)RtfUtility::Emu2Pt(m_nTexpLeft)) + L"pt, "
+ std::to_wstring((int)RtfUtility::Emu2Pt(m_nTexpTop)) + L"pt, "
+ std::to_wstring((int)RtfUtility::Emu2Pt(m_nTexpRight)) + L"pt, "
+ std::to_wstring((int)RtfUtility::Emu2Pt(m_nTexpBottom)) + L"pt\">";
}
else
sResult += L">";
@ -1193,13 +1201,13 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
sResult += L"<v:imagedata r:id=\"" + sPicture + L"\"";
if( PROP_DEF != nCropLeft )
sResult += L" cropleft=\" " + boost::lexical_cast<std::wstring>(nCropLeft) + L"f\"";
sResult += L" cropleft=\" " + std::to_wstring(nCropLeft) + L"f\"";
if( PROP_DEF != nCropTop )
sResult += L" croptop=\" " + boost::lexical_cast<std::wstring>(nCropTop) + L"f\"";
sResult += L" croptop=\" " + std::to_wstring(nCropTop) + L"f\"";
if( PROP_DEF != nCropRight )
sResult += L" cropright=\" " + boost::lexical_cast<std::wstring>(nCropRight) + L"f\"";
sResult += L" cropright=\" " + std::to_wstring(nCropRight) + L"f\"";
if( PROP_DEF != nCropBottom )
sResult += L" cropbottom=\" " + boost::lexical_cast<std::wstring>(nCropBottom) + L"f\"";
sResult += L" cropbottom=\" " + std::to_wstring(nCropBottom) + L"f\"";
sResult += L" o:title=\"\"/>";
}
@ -1230,9 +1238,9 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
if ( PROP_DEF != m_nFillOpacity)
{
std::wstring sOpacity = boost::lexical_cast<std::wstring>( /*100 - */m_nFillOpacity);
std::wstring sOpacity = std::to_wstring( /*100 - */m_nFillOpacity);
sResult += L" opacity=\"" + sOpacity +L"%\"";
//sResult += L" opacity=\" " + boost::lexical_cast<std::wstring>(m_nFillOpacity) + L"f\"";
//sResult += L" opacity=\" " + std::to_wstring(m_nFillOpacity) + L"f\"";
}
if ( PROP_DEF != m_nFillColor2)
{
@ -1241,11 +1249,11 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
}
if ( PROP_DEF != m_nFillFocus)
{
sResult += L" focus=\""+ boost::lexical_cast<std::wstring>(m_nFillFocus) + L"%\"";
sResult += L" focus=\""+ std::to_wstring(m_nFillFocus) + L"%\"";
}
if ( PROP_DEF != m_nFillAngle)
sResult += L" angle=\"" + boost::lexical_cast<std::wstring>(m_nFillAngle) + L"\"";
sResult += L" angle=\"" + std::to_wstring(m_nFillAngle) + L"\"";
sResult += L"/>";
}
@ -1265,7 +1273,7 @@ std::wstring RtfShape::RenderToOOXBegin(RenderParameter oRenderParameter)
sResult += L" style=\"" + sTextStyle + L"\"";
if ( PROP_DEF != m_nGtextSize )
sTextStyle += L"font-size: " + boost::lexical_cast<std::wstring>(m_nGtextSize) + L"pt;";
sTextStyle += L"font-size: " + std::to_wstring(m_nGtextSize) + L"pt;";
sResult += L" string=\"" + XmlUtils::EncodeXmlString(m_sGtextUNICODE) + L"\"";
sResult += L"/>";
@ -1294,6 +1302,7 @@ std::wstring RtfShape::RenderToOOXEnd(RenderParameter oRenderParameter)
}
return sResult;
}
std::wstring RtfShapeGroup::RenderToRtf(RenderParameter oRenderParameter)
{
std::wstring sResult;
@ -1325,7 +1334,7 @@ std::wstring RtfShapeGroup::RenderToRtf(RenderParameter oRenderParameter)
sResult += L"{\\shpgrp";
sResult += L"{\\*\\shpinst";
RENDER_RTF_INT( m_nID , sResult, L"shplid" );
RENDER_RTF_INT( m_nID, sResult, L"shplid" );
if (!m_bInGroup)
{
@ -1361,7 +1370,7 @@ std::wstring RtfShapeGroup::RenderToRtf(RenderParameter oRenderParameter)
sResult += L"{\\shpgrp";
sResult += L"{\\*\\shpinst";
RENDER_RTF_INT( m_nID , sResult, L"shplid" );
RENDER_RTF_INT( m_nID, sResult, L"shplid" );
if (!m_bInGroup)
{
@ -1438,3 +1447,28 @@ std::wstring RtfShapeGroup::RenderToOOX(RenderParameter oRenderParameter)
sResult += RenderToOOXEnd( oNewParamGroup );
return sResult;
}
void RtfShape::SetNotSupportShape()
{
m_nShapeType = 1;
m_bFilled = 0;
m_bLine = 1;
m_aTextItems = TextItemContainerPtr( new TextItemContainer() );
if (m_aTextItems)
{
RtfParagraphPtr oParagraph ( new RtfParagraph() );
//oParagraph->m_oProperty = oParam.oRtf->m_oDefaultParagraphProp;
//oParagraph->m_oProperty.m_oCharProperty = oParam.oRtf->m_oDefaultCharProp;
oParagraph->m_oProperty.m_nItap = 0;
RtfCharPtr oChar ( new RtfChar() );
//oChar->m_oProperty = oParam.oRtf->m_oDefaultCharProp;
oChar->setText( L"The element is not supported in RTF format." );
oParagraph->AddItem( oChar );
m_aTextItems->AddItem( oParagraph );
}
}

View File

@ -180,17 +180,17 @@ public:
int m_nLineDashing;
//WordArt
std::wstring m_sGtextUNICODE;
std::wstring m_sGtextFont;
int m_nGtextSize;
int m_bGtext;
int m_bGtextFVertical;
int m_bGtextFKern;
int m_bGtextFStretch;
int m_bGtextFShrinkFit;
int m_bGtextFBestFit;
std::wstring m_sGtextUNICODE;
std::wstring m_sGtextFont;
int m_nGtextSize;
int m_bGtext;
int m_bGtextFVertical;
int m_bGtextFKern;
int m_bGtextFStretch;
int m_bGtextFShrinkFit;
int m_bGtextFBestFit;
RtfCharProperty m_oCharProperty; // тут могут быть track changes ....
RtfCharProperty m_oCharProperty; // тут могут быть track changes ....
//pWrapPolygonVertices Points of the text wrap polygon.
std::vector< std::pair<int, int> > m_aWrapPoints;
@ -217,11 +217,13 @@ public:
}
void SetDefault();
void SetNotSupportShape();
std::wstring RenderToRtf (RenderParameter oRenderParameter);
std::wstring RenderToOOX (RenderParameter oRenderParameter);
std::wstring RenderToOOXBegin(RenderParameter oRenderParameter);
std::wstring RenderToOOXEnd (RenderParameter oRenderParameter);
std::wstring RenderToOOXBegin (RenderParameter oRenderParameter);
std::wstring RenderToOOXEnd (RenderParameter oRenderParameter);
void ToRtfRotation( int nAngel , int &nLeft, int &nTop, int& nRight, int& nBottom )
{
@ -258,6 +260,9 @@ typedef boost::shared_ptr<RtfShape> RtfShapePtr;
class RtfShapeGroup : public RtfShape, public ItemContainer<RtfShapePtr>
{
public:
RtfShapeGroup() {}
RtfShapeGroup(const RtfShape & shape) : RtfShape(shape) {}
std::wstring RenderToRtf(RenderParameter oRenderParameter);
std::wstring RenderToOOX(RenderParameter oRenderParameter);
bool IsValid()

View File

@ -65,7 +65,7 @@ public:
for( int i = 0; i < (int)m_aTableGrid.size(); i++ )
{
sResult += L"<w:gridCol w:w=\"" + boost::lexical_cast<std::wstring>(m_aTableGrid[i]) + L"\"/>";
sResult += L"<w:gridCol w:w=\"" + std::to_wstring(m_aTableGrid[i]) + L"\"/>";
}
sResult += L"</w:tblGrid>";

View File

@ -36,9 +36,7 @@
#include "../../../Common/FileWriter.h"
#include "../../../Common/DocxFormat/Source/XML/Utils.h"
#ifdef _ASC_USE_UNICODE_CONVERTER_
#include "../../../UnicodeConverter/UnicodeConverter.h"
#endif
#include "../../../UnicodeConverter/UnicodeConverter.h"
#include "UniversalConverterUtils.h"
@ -119,12 +117,6 @@ namespace Strings
nG = 16 * ToDigit(color[4]) + ToDigit(color[5]);
nB = 16 * ToDigit(color[6]) + ToDigit(color[7]);
}
static bool ToBoolean(const std::wstring& strValue)
{
std::wstring s = boost::algorithm::to_lower_copy(strValue);
return (s == L"true");
}
static int ToInteger(const std::wstring& strValue)
{
return _ttoi(strValue.c_str());
@ -139,27 +131,7 @@ namespace Strings
#endif
return d;
}
static std::wstring FromInteger(int Value, int Base = 10)
{
std::wstring str = boost::lexical_cast<std::wstring>(Value);
return str;
}
static std::wstring FromDouble(double Value)
{
std::wstring str = boost::lexical_cast<std::wstring>(Value);
return str;
}
static std::wstring FromBoolean(bool Value)
{
if (Value)
return L"true";
return L"false";
}
}
class Convert
@ -167,7 +139,7 @@ class Convert
public:
static std::wstring ToString(int i)
{
return boost::lexical_cast<std::wstring>( i );
return std::to_wstring( i );
}
static std::wstring ToStringHex( int i, int nLen )
{
@ -394,15 +366,11 @@ public:
int Year = GETBITS(dt, 20, 28) + 1900;
//to 1899-12-31T05:37:46.66569 - iso_extended_string
std::wstring date_str = boost::lexical_cast<std::wstring>(Year)
+ L"-"
+ (Month < 10 ? L"0": L"") + boost::lexical_cast<std::wstring>(Month)
+ L"-"
+ (Day < 10 ? L"0": L"") + boost::lexical_cast<std::wstring>(Day)
+ L"T"
+ (Hour < 10 ? L"0": L"") + boost::lexical_cast<std::wstring>(Hour)
+ L":"
+ (Min < 10 ? L"0": L"") + boost::lexical_cast<std::wstring>(Min)
std::wstring date_str = std::to_wstring(Year)
+ L"-" + (Month < 10 ? L"0": L"") + std::to_wstring(Month)
+ L"-" + (Day < 10 ? L"0": L"") + std::to_wstring(Day)
+ L"T" + (Hour < 10 ? L"0": L"") + std::to_wstring(Hour)
+ L":" + (Min < 10 ? L"0": L"") + std::to_wstring(Min)
+ L":00Z";
return date_str;
@ -725,7 +693,7 @@ public:
return 1252;//ANSI
}
#ifdef _ASC_USE_UNICODE_CONVERTER_
static std::wstring convert_string(std::string::const_iterator start, std::string::const_iterator end, int nCodepage = 0)
{
std::string sCodePage;
@ -767,100 +735,6 @@ public:
return oConverter.fromUnicode(inptr, insize, sCodePage.c_str());
}
#else
static std::wstring convert_string(std::string::const_iterator start, std::string::const_iterator end, int nCodepage = 0)
{
std::wstring w_out;
bool ansi = true;
size_t insize = end - start;
char *inptr = (char*)start.operator ->();
if (nCodepage > 0)
{
#if defined (_WIN32) || defined (_WIN64)
int insize = MultiByteToWideChar(nCodepage, 0, inptr, -1, NULL, NULL);
wchar_t *out = new wchar_t[insize];
if (out && MultiByteToWideChar(nCodepage, 0, inptr, -1, out, insize) > 0)
{
w_out = std::wstring(out);
ansi = false;
}
if (out) delete []out;
#else
std::string sCodepage = "CP" + std::to_string(nCodepage);
iconv_t ic= iconv_open("WCHAR_T", sCodepage.c_str());
if (ic != (iconv_t) -1)
{
size_t nconv = 0, avail = (insize) * sizeof(wchar_t);
wchar_t *out = new wchar_t[insize];
nconv = iconv (ic, &inptr, &insize, (char**)&out, &avail);
if (nconv == 0)
{
w_out = std::wstring(out);
ansi = false;
}
if (out) delete []out;
iconv_close(ic);
}
#endif
}
if (ansi)
w_out = std::wstring(start, end);
return w_out;
}
static std::string convert_string(std::wstring::const_iterator start, std::wstring::const_iterator end, int nCodepage = 0)
{
std::string out;
bool ansi = true;
size_t insize = end - start;
char *inptr = (char*)start.operator ->();
char* outptr = (char*)out.c_str();
if (nCodepage > 0)
{
#if defined (_WIN32) || defined (_WIN64)
insize = WideCharToMultiByte(nCodepage, 0, (LPCWSTR)inptr, -1, NULL, 0, NULL, NULL);
out.reserve(insize);
if (WideCharToMultiByte(nCodepage, 0, (LPCWSTR)inptr, -1, outptr, (int)insize, NULL, NULL) > 0)
{
out.resize(insize);
ansi = false;
}
#else
out.reserve(insize);
std::string sCodepage = "CP" + std::to_string(nCodepage);
iconv_t ic= iconv_open(sCodepage.c_str(), "WCHAR_T");
if (ic != (iconv_t) -1)
{
size_t nconv = 0, avail = insize * sizeof(wchar_t);
nconv = iconv (ic, &inptr, &insize, &outptr, &avail);
if (nconv == 0)
{
out.resize(insize);
ansi = false;
}
iconv_close(ic);
}
#endif
}
if (ansi)
out = std::string(start, end);
return out;
}
#endif
static int CodepageToCharset( int nCodepage )
{
#if defined (_WIN32) || defined(_WIN64)

View File

@ -54,7 +54,7 @@ public:
}
if( PROP_DEF != nID )
sFootnote += L" w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sFootnote += L" w:id=\"" + std::to_wstring(nID) + L"\"";
sFootnote += _T(">");
sFootnote += sText;
sFootnote += _T("</w:footnote>");
@ -71,7 +71,7 @@ public:
m_sFootnotes += _T("\"");
}
if( PROP_DEF != nID )
m_sFootnotes += L" w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
m_sFootnotes += L" w:id=\"" + std::to_wstring(nID) + L"\"";
m_sFootnotes += _T(">");
m_sFootnotes += sText;
m_sFootnotes += _T("</w:footnote>");
@ -133,7 +133,7 @@ public:
sEndnote += _T("\"");
}
if( -2 != nID )
sEndnote += L" w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
sEndnote += L" w:id=\"" + std::to_wstring(nID) + L"\"";
sEndnote += _T(">");
sEndnote += sText;
sEndnote += _T("</w:endnote>");
@ -151,7 +151,7 @@ public:
}
if( -2 != nID )
m_sEndnotes += L" w:id=\"" + boost::lexical_cast<std::wstring>(nID) + L"\"";
m_sEndnotes += L" w:id=\"" + std::to_wstring(nID) + L"\"";
m_sEndnotes += _T(">");
m_sEndnotes += sText;
m_sEndnotes += _T("</w:endnote>");

View File

@ -42,16 +42,19 @@
int _tmain(int argc, _TCHAR* argv[])
{
if (argc < 2) return 1;
std::wstring srcFileName = argv[1];
int n1 = srcFileName.rfind(_T('.'));
std::wstring ext_1 = n1 >= 0 ? srcFileName.substr(n1+1, srcFileName.length() - n1) : _T(""); //ext_1.MakeLower();
std::wstring ext_1 = n1 >= 0 ? srcFileName.substr(n1+1, srcFileName.length() - n1) : _T("");
std::transform(ext_1.begin(), ext_1.end(), ext_1.begin(), ::tolower);
std::wstring dstFileName = argc > 2 ? argv[2] : srcFileName + L"_my." + (ext_1 == L"rtf" ? L"docx" : L"rtf");
std::wstring outputDir = NSDirectory::GetFolderPath(dstFileName);
std::wstring dstTempPath = NSDirectory::CreateDirectoryWithUniqueName(outputDir);
std::transform(ext_1.begin(), ext_1.end(), ext_1.begin(), ::tolower);
RtfConvertationManager rtfConvert;

View File

@ -3,7 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RtfFormatLib", "..\RtfFormatLib\Win32\RtfFormatLib.vcproj", "{AF2D00A7-A351-4700-AE88-C1D9ADE29345}"
ProjectSection(ProjectDependencies) = postProject
{A100103A-353E-45E8-A9B8-90B87CC5C0B0} = {A100103A-353E-45E8-A9B8-90B87CC5C0B0}
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540} = {9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}
EndProjectSection
EndProject
@ -14,21 +13,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DocxFormat", "..\..\Common\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raster", "..\..\DesktopEditor\raster\raster_vs2005.vcproj", "{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}"
ProjectSection(ProjectDependencies) = postProject
{0588563C-F05C-428C-B21A-DD74756628B3} = {0588563C-F05C-428C-B21A-DD74756628B3}
{BC52A07C-A797-423D-8C4F-8678805BBB36} = {BC52A07C-A797-423D-8C4F-8678805BBB36}
{0588563C-F05C-428C-B21A-DD74756628B3} = {0588563C-F05C-428C-B21A-DD74756628B3}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cximage", "..\..\DesktopEditor\cximage\CxImage\cximage_vs2005.vcproj", "{BC52A07C-A797-423D-8C4F-8678805BBB36}"
ProjectSection(ProjectDependencies) = postProject
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7} = {43A0E60E-5C4A-4C09-A29B-7683F503BBD7}
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239} = {764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}
{DF861D33-9BC1-418C-82B1-581F590FE169} = {DF861D33-9BC1-418C-82B1-581F590FE169}
{0588563C-F05C-428C-B21A-DD74756628B3} = {0588563C-F05C-428C-B21A-DD74756628B3}
{40A69F40-063E-43FD-8543-455495D8733E} = {40A69F40-063E-43FD-8543-455495D8733E}
{9A037A69-D1DF-4505-AB2A-6CB3641C476E} = {9A037A69-D1DF-4505-AB2A-6CB3641C476E}
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1} = {EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D} = {FFDA5DA1-BB65-4695-B678-BE59B4A1355D}
{818753F2-DBB9-4D3B-898A-A604309BE470} = {818753F2-DBB9-4D3B-898A-A604309BE470}
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D} = {FFDA5DA1-BB65-4695-B678-BE59B4A1355D}
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1} = {EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}
{9A037A69-D1DF-4505-AB2A-6CB3641C476E} = {9A037A69-D1DF-4505-AB2A-6CB3641C476E}
{40A69F40-063E-43FD-8543-455495D8733E} = {40A69F40-063E-43FD-8543-455495D8733E}
{0588563C-F05C-428C-B21A-DD74756628B3} = {0588563C-F05C-428C-B21A-DD74756628B3}
{DF861D33-9BC1-418C-82B1-581F590FE169} = {DF861D33-9BC1-418C-82B1-581F590FE169}
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239} = {764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7} = {43A0E60E-5C4A-4C09-A29B-7683F503BBD7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "jasper", "..\..\DesktopEditor\cximage\jasper\jasper_vs2005.vcproj", "{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}"
@ -53,15 +52,15 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OfficeUtilsLib", "..\..\Off
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RtfFormatTest", "RtfFormatTest.vcproj", "{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}"
ProjectSection(ProjectDependencies) = postProject
{21663823-DE45-479B-91D0-B4FEF4916EF0} = {21663823-DE45-479B-91D0-B4FEF4916EF0}
{F8274B05-168E-4D6E-B843-AA7510725363} = {F8274B05-168E-4D6E-B843-AA7510725363}
{C739151F-5384-41DF-A1A6-F089E2C1AD56} = {C739151F-5384-41DF-A1A6-F089E2C1AD56}
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2} = {37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}
{A100103A-353E-45E8-A9B8-90B87CC5C0B0} = {A100103A-353E-45E8-A9B8-90B87CC5C0B0}
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD} = {617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}
{36636678-AE25-4BE6-9A34-2561D1BCF302} = {36636678-AE25-4BE6-9A34-2561D1BCF302}
{AF2D00A7-A351-4700-AE88-C1D9ADE29345} = {AF2D00A7-A351-4700-AE88-C1D9ADE29345}
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B} = {78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}
{AF2D00A7-A351-4700-AE88-C1D9ADE29345} = {AF2D00A7-A351-4700-AE88-C1D9ADE29345}
{36636678-AE25-4BE6-9A34-2561D1BCF302} = {36636678-AE25-4BE6-9A34-2561D1BCF302}
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD} = {617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}
{A100103A-353E-45E8-A9B8-90B87CC5C0B0} = {A100103A-353E-45E8-A9B8-90B87CC5C0B0}
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2} = {37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}
{C739151F-5384-41DF-A1A6-F089E2C1AD56} = {C739151F-5384-41DF-A1A6-F089E2C1AD56}
{F8274B05-168E-4D6E-B843-AA7510725363} = {F8274B05-168E-4D6E-B843-AA7510725363}
{21663823-DE45-479B-91D0-B4FEF4916EF0} = {21663823-DE45-479B-91D0-B4FEF4916EF0}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PPTXFormat", "..\..\ASCOfficePPTXFile\PPTXLib\PPTXFormat.vcproj", "{36636678-AE25-4BE6-9A34-2561D1BCF302}"
@ -81,575 +80,180 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libxml2", "..\..\DesktopEdi
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug Multithreaded|Win32 = Debug Multithreaded|Win32
Debug Multithreaded|x64 = Debug Multithreaded|x64
Debug Singlethreaded|Win32 = Debug Singlethreaded|Win32
Debug Singlethreaded|x64 = Debug Singlethreaded|x64
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release Multithreaded|Win32 = Release Multithreaded|Win32
Release Multithreaded|x64 = Release Multithreaded|x64
Release Singlethreaded|Win32 = Release Singlethreaded|Win32
Release Singlethreaded|x64 = Release Singlethreaded|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
ReleaseASC|Win32 = ReleaseASC|Win32
ReleaseASC|x64 = ReleaseASC|x64
ReleaseOpenSource|Win32 = ReleaseOpenSource|Win32
ReleaseOpenSource|x64 = ReleaseOpenSource|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Multithreaded|x64.Build.0 = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug|Win32.ActiveCfg = Debug|Win32
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug|Win32.Build.0 = Debug|Win32
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug|x64.ActiveCfg = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Debug|x64.Build.0 = Debug|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Multithreaded|x64.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Multithreaded|x64.Build.0 = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release Singlethreaded|x64.Build.0 = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release|Win32.ActiveCfg = Release|Win32
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release|Win32.Build.0 = Release|Win32
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release|x64.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.Release|x64.Build.0 = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseASC|Win32.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseASC|x64.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseASC|x64.Build.0 = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{AF2D00A7-A351-4700-AE88-C1D9ADE29345}.ReleaseOpenSource|x64.Build.0 = Release|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Multithreaded|x64.Build.0 = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug|Win32.ActiveCfg = Debug|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug|Win32.Build.0 = Debug|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug|x64.ActiveCfg = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Debug|x64.Build.0 = Debug|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Multithreaded|Win32.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Multithreaded|x64.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Multithreaded|x64.Build.0 = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Singlethreaded|Win32.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Singlethreaded|x64.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release Singlethreaded|x64.Build.0 = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release|Win32.ActiveCfg = Release|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release|Win32.Build.0 = Release|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release|x64.ActiveCfg = Release|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.Release|x64.Build.0 = Release|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseASC|Win32.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseASC|x64.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseASC|x64.Build.0 = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseOpenSource|Win32.ActiveCfg = ReleaseOpenSource|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseOpenSource|Win32.Build.0 = ReleaseOpenSource|Win32
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseOpenSource|x64.ActiveCfg = ReleaseOpenSource|x64
{A100103A-353E-45E8-A9B8-90B87CC5C0B0}.ReleaseOpenSource|x64.Build.0 = ReleaseOpenSource|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Multithreaded|x64.Build.0 = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug|Win32.ActiveCfg = Debug|Win32
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug|Win32.Build.0 = Debug|Win32
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug|x64.ActiveCfg = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Debug|x64.Build.0 = Debug|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Multithreaded|x64.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Multithreaded|x64.Build.0 = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release Singlethreaded|x64.Build.0 = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release|Win32.ActiveCfg = Release|Win32
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release|Win32.Build.0 = Release|Win32
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release|x64.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.Release|x64.Build.0 = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseASC|Win32.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseASC|x64.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseASC|x64.Build.0 = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{9CAA294E-58C3-4CEB-ABA0-CB9786CA5540}.ReleaseOpenSource|x64.Build.0 = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Multithreaded|x64.Build.0 = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug|Win32.ActiveCfg = Debug|Win32
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug|Win32.Build.0 = Debug|Win32
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug|x64.ActiveCfg = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Debug|x64.Build.0 = Debug|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Multithreaded|x64.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Multithreaded|x64.Build.0 = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release Singlethreaded|x64.Build.0 = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release|Win32.ActiveCfg = Release|Win32
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release|Win32.Build.0 = Release|Win32
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release|x64.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.Release|x64.Build.0 = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseASC|Win32.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseASC|x64.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseASC|x64.Build.0 = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{BC52A07C-A797-423D-8C4F-8678805BBB36}.ReleaseOpenSource|x64.Build.0 = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Multithreaded|x64.Build.0 = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug|Win32.ActiveCfg = Debug|Win32
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug|Win32.Build.0 = Debug|Win32
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug|x64.ActiveCfg = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Debug|x64.Build.0 = Debug|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Multithreaded|x64.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Multithreaded|x64.Build.0 = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release Singlethreaded|x64.Build.0 = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release|Win32.ActiveCfg = Release|Win32
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release|Win32.Build.0 = Release|Win32
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release|x64.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.Release|x64.Build.0 = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseASC|Win32.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseASC|x64.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseASC|x64.Build.0 = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{FFDA5DA1-BB65-4695-B678-BE59B4A1355D}.ReleaseOpenSource|x64.Build.0 = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Multithreaded|x64.Build.0 = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug|Win32.ActiveCfg = Debug|Win32
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug|Win32.Build.0 = Debug|Win32
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug|x64.ActiveCfg = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Debug|x64.Build.0 = Debug|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Multithreaded|x64.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Multithreaded|x64.Build.0 = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release Singlethreaded|x64.Build.0 = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release|Win32.ActiveCfg = Release|Win32
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release|Win32.Build.0 = Release|Win32
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release|x64.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.Release|x64.Build.0 = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseASC|Win32.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseASC|x64.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseASC|x64.Build.0 = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{764C3A2D-FB0F-428E-B1C7-62D1DD2CE239}.ReleaseOpenSource|x64.Build.0 = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Multithreaded|x64.Build.0 = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug|Win32.ActiveCfg = Debug|Win32
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug|Win32.Build.0 = Debug|Win32
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug|x64.ActiveCfg = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Debug|x64.Build.0 = Debug|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Multithreaded|x64.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Multithreaded|x64.Build.0 = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release Singlethreaded|x64.Build.0 = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release|Win32.ActiveCfg = Release|Win32
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release|Win32.Build.0 = Release|Win32
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release|x64.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.Release|x64.Build.0 = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseASC|Win32.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseASC|x64.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseASC|x64.Build.0 = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{818753F2-DBB9-4D3B-898A-A604309BE470}.ReleaseOpenSource|x64.Build.0 = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Multithreaded|x64.Build.0 = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug|Win32.ActiveCfg = Debug|Win32
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug|Win32.Build.0 = Debug|Win32
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug|x64.ActiveCfg = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Debug|x64.Build.0 = Debug|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Multithreaded|x64.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Multithreaded|x64.Build.0 = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release Singlethreaded|x64.Build.0 = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release|Win32.ActiveCfg = Release|Win32
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release|Win32.Build.0 = Release|Win32
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release|x64.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.Release|x64.Build.0 = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseASC|Win32.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseASC|x64.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseASC|x64.Build.0 = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{9A037A69-D1DF-4505-AB2A-6CB3641C476E}.ReleaseOpenSource|x64.Build.0 = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Multithreaded|x64.Build.0 = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug|Win32.ActiveCfg = Debug|Win32
{40A69F40-063E-43FD-8543-455495D8733E}.Debug|Win32.Build.0 = Debug|Win32
{40A69F40-063E-43FD-8543-455495D8733E}.Debug|x64.ActiveCfg = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Debug|x64.Build.0 = Debug|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Multithreaded|x64.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Multithreaded|x64.Build.0 = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release Singlethreaded|x64.Build.0 = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release|Win32.ActiveCfg = Release|Win32
{40A69F40-063E-43FD-8543-455495D8733E}.Release|Win32.Build.0 = Release|Win32
{40A69F40-063E-43FD-8543-455495D8733E}.Release|x64.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.Release|x64.Build.0 = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseASC|Win32.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseASC|x64.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseASC|x64.Build.0 = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{40A69F40-063E-43FD-8543-455495D8733E}.ReleaseOpenSource|x64.Build.0 = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Multithreaded|x64.Build.0 = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug|Win32.ActiveCfg = Debug|Win32
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug|Win32.Build.0 = Debug|Win32
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug|x64.ActiveCfg = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Debug|x64.Build.0 = Debug|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Multithreaded|x64.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Multithreaded|x64.Build.0 = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release Singlethreaded|x64.Build.0 = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release|Win32.ActiveCfg = Release|Win32
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release|Win32.Build.0 = Release|Win32
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release|x64.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.Release|x64.Build.0 = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseASC|Win32.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseASC|x64.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseASC|x64.Build.0 = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{43A0E60E-5C4A-4C09-A29B-7683F503BBD7}.ReleaseOpenSource|x64.Build.0 = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Multithreaded|x64.Build.0 = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug|Win32.ActiveCfg = Debug|Win32
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug|Win32.Build.0 = Debug|Win32
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug|x64.ActiveCfg = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Debug|x64.Build.0 = Debug|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Multithreaded|x64.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Multithreaded|x64.Build.0 = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release Singlethreaded|x64.Build.0 = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release|Win32.ActiveCfg = Release|Win32
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release|Win32.Build.0 = Release|Win32
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release|x64.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.Release|x64.Build.0 = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseASC|Win32.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseASC|x64.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseASC|x64.Build.0 = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{DF861D33-9BC1-418C-82B1-581F590FE169}.ReleaseOpenSource|x64.Build.0 = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Multithreaded|x64.Build.0 = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug|Win32.ActiveCfg = Debug|Win32
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug|Win32.Build.0 = Debug|Win32
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug|x64.ActiveCfg = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Debug|x64.Build.0 = Debug|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Multithreaded|x64.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Multithreaded|x64.Build.0 = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release Singlethreaded|x64.Build.0 = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release|Win32.ActiveCfg = Release|Win32
{0588563C-F05C-428C-B21A-DD74756628B3}.Release|Win32.Build.0 = Release|Win32
{0588563C-F05C-428C-B21A-DD74756628B3}.Release|x64.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.Release|x64.Build.0 = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseASC|Win32.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseASC|x64.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseASC|x64.Build.0 = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{0588563C-F05C-428C-B21A-DD74756628B3}.ReleaseOpenSource|x64.Build.0 = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Multithreaded|x64.Build.0 = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug|Win32.ActiveCfg = Debug|Win32
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug|Win32.Build.0 = Debug|Win32
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug|x64.ActiveCfg = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Debug|x64.Build.0 = Debug|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Multithreaded|x64.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Multithreaded|x64.Build.0 = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release Singlethreaded|x64.Build.0 = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release|Win32.ActiveCfg = Release|Win32
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release|Win32.Build.0 = Release|Win32
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release|x64.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.Release|x64.Build.0 = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseASC|Win32.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseASC|x64.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseASC|x64.Build.0 = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{EE1B576A-07C5-4ACC-920F-81C41DD0C8C1}.ReleaseOpenSource|x64.Build.0 = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Multithreaded|x64.Build.0 = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug|Win32.ActiveCfg = Debug|Win32
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug|Win32.Build.0 = Debug|Win32
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug|x64.ActiveCfg = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Debug|x64.Build.0 = Debug|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Multithreaded|x64.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Multithreaded|x64.Build.0 = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release Singlethreaded|x64.Build.0 = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release|Win32.ActiveCfg = Release|Win32
{F8274B05-168E-4D6E-B843-AA7510725363}.Release|Win32.Build.0 = Release|Win32
{F8274B05-168E-4D6E-B843-AA7510725363}.Release|x64.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.Release|x64.Build.0 = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseASC|Win32.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseASC|x64.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseASC|x64.Build.0 = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{F8274B05-168E-4D6E-B843-AA7510725363}.ReleaseOpenSource|x64.Build.0 = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Multithreaded|x64.Build.0 = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug|Win32.ActiveCfg = Debug|Win32
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug|Win32.Build.0 = Debug|Win32
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug|x64.ActiveCfg = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Debug|x64.Build.0 = Debug|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Multithreaded|x64.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Multithreaded|x64.Build.0 = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release Singlethreaded|x64.Build.0 = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release|Win32.ActiveCfg = Release|Win32
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release|Win32.Build.0 = Release|Win32
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release|x64.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.Release|x64.Build.0 = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseASC|Win32.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseASC|x64.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseASC|x64.Build.0 = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{0F49D5D1-A8D3-4F97-8BC1-E2F65BB00C10}.ReleaseOpenSource|x64.Build.0 = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Multithreaded|x64.Build.0 = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug|Win32.ActiveCfg = Debug|Win32
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug|Win32.Build.0 = Debug|Win32
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug|x64.ActiveCfg = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Debug|x64.Build.0 = Debug|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Multithreaded|x64.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Multithreaded|x64.Build.0 = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release Singlethreaded|x64.Build.0 = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release|Win32.ActiveCfg = Release|Win32
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release|Win32.Build.0 = Release|Win32
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release|x64.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.Release|x64.Build.0 = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseASC|Win32.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseASC|x64.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseASC|x64.Build.0 = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{36636678-AE25-4BE6-9A34-2561D1BCF302}.ReleaseOpenSource|x64.Build.0 = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Multithreaded|x64.Build.0 = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug|Win32.ActiveCfg = Debug|Win32
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug|Win32.Build.0 = Debug|Win32
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug|x64.ActiveCfg = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Debug|x64.Build.0 = Debug|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Multithreaded|x64.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Multithreaded|x64.Build.0 = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release Singlethreaded|x64.Build.0 = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release|Win32.ActiveCfg = Release|Win32
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release|Win32.Build.0 = Release|Win32
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release|x64.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.Release|x64.Build.0 = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseASC|Win32.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseASC|x64.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseASC|x64.Build.0 = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{37CA072A-5BDE-498B-B3A7-5E404F5F9BF2}.ReleaseOpenSource|x64.Build.0 = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Multithreaded|x64.Build.0 = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug|Win32.ActiveCfg = Debug|Win32
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug|Win32.Build.0 = Debug|Win32
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug|x64.ActiveCfg = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Debug|x64.Build.0 = Debug|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Multithreaded|x64.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Multithreaded|x64.Build.0 = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release Singlethreaded|x64.Build.0 = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release|Win32.ActiveCfg = Release|Win32
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release|Win32.Build.0 = Release|Win32
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release|x64.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.Release|x64.Build.0 = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseASC|Win32.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseASC|x64.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseASC|x64.Build.0 = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{C739151F-5384-41DF-A1A6-F089E2C1AD56}.ReleaseOpenSource|x64.Build.0 = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Multithreaded|x64.Build.0 = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug|Win32.ActiveCfg = Debug|Win32
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug|Win32.Build.0 = Debug|Win32
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug|x64.ActiveCfg = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Debug|x64.Build.0 = Debug|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Multithreaded|x64.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Multithreaded|x64.Build.0 = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release Singlethreaded|x64.Build.0 = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release|Win32.ActiveCfg = Release|Win32
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release|Win32.Build.0 = Release|Win32
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release|x64.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.Release|x64.Build.0 = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseASC|Win32.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseASC|x64.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseASC|x64.Build.0 = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{617F9069-5E37-4B80-9A3A-E77AFC4CC7AD}.ReleaseOpenSource|x64.Build.0 = Release|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.Build.0 = Debug Multithreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|x64.ActiveCfg = Debug Multithreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|x64.Build.0 = Debug Multithreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|Win32.ActiveCfg = Debug Singlethreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|Win32.Build.0 = Debug Singlethreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|x64.ActiveCfg = Debug Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Singlethreaded|x64.Build.0 = Debug Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.ActiveCfg = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|Win32.Build.0 = Debug|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.ActiveCfg = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug|x64.Build.0 = Debug|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|Win32.ActiveCfg = Release Multithreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|Win32.Build.0 = Release Multithreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|x64.ActiveCfg = Release Multithreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Multithreaded|x64.Build.0 = Release Multithreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|Win32.ActiveCfg = Release Singlethreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|Win32.Build.0 = Release Singlethreaded|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|x64.ActiveCfg = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release Singlethreaded|x64.Build.0 = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.ActiveCfg = Release|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|Win32.Build.0 = Release|Win32
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.ActiveCfg = Release|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Release|x64.Build.0 = Release|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseASC|Win32.ActiveCfg = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseASC|x64.ActiveCfg = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseASC|x64.Build.0 = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseOpenSource|Win32.ActiveCfg = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseOpenSource|x64.ActiveCfg = Release Singlethreaded|x64
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.ReleaseOpenSource|x64.Build.0 = Release Singlethreaded|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Multithreaded|Win32.ActiveCfg = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Multithreaded|x64.ActiveCfg = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Multithreaded|x64.Build.0 = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Singlethreaded|Win32.ActiveCfg = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Singlethreaded|x64.ActiveCfg = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug Singlethreaded|x64.Build.0 = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug|Win32.ActiveCfg = Debug|Win32
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug|Win32.Build.0 = Debug|Win32
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug|x64.ActiveCfg = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Debug|x64.Build.0 = Debug|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Multithreaded|Win32.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Multithreaded|x64.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Multithreaded|x64.Build.0 = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Singlethreaded|Win32.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Singlethreaded|x64.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release Singlethreaded|x64.Build.0 = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release|Win32.ActiveCfg = Release|Win32
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release|Win32.Build.0 = Release|Win32
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release|x64.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.Release|x64.Build.0 = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseASC|Win32.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseASC|x64.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseASC|x64.Build.0 = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseOpenSource|Win32.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseOpenSource|x64.ActiveCfg = Release|x64
{21663823-DE45-479B-91D0-B4FEF4916EF0}.ReleaseOpenSource|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Some files were not shown because too many files have changed in this diff Show More