mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-07-11 05:24:10 +08:00
метрики для конвертации размеров, завязанных на количество символов
заливки, линии в элементах диаграмм git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@56133 954022d7-b5bf-4e40-9824-e11837661b57
This commit is contained in:
committed by
Alexander Trofimov
parent
20575099a2
commit
5dbdda7630
@ -1291,6 +1291,10 @@
|
||||
RelativePath=".\ReadMe.txt"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\utils.h"
|
||||
>
|
||||
</File>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
|
||||
@ -48,7 +48,7 @@ namespace odf
|
||||
class odf_chart_context::Impl
|
||||
{
|
||||
public:
|
||||
Impl(odf_conversion_context *odf_context) :odf_context_(odf_context), drawing_context_(odf_context), text_context_(odf_context)
|
||||
Impl(odf_conversion_context *odf_context) :odf_context_(odf_context)/*, drawing_context_(odf_context)*/, text_context_(odf_context)
|
||||
{
|
||||
styles_context_ = NULL;
|
||||
|
||||
@ -62,12 +62,10 @@ public:
|
||||
odf_style_context *styles_context_;
|
||||
odf_conversion_context *odf_context_;
|
||||
|
||||
odf_drawing_context drawing_context_; //<2F><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
||||
odf_text_context text_context_;
|
||||
|
||||
style_chart_properties *current_chart_properties;
|
||||
chart_chart *current_chart_;
|
||||
|
||||
};
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////
|
||||
@ -83,13 +81,13 @@ odf_chart_context::~odf_chart_context()
|
||||
void odf_chart_context::set_styles_context(odf_style_context * style_context)
|
||||
{
|
||||
impl_->styles_context_ = style_context;
|
||||
impl_->drawing_context_.set_styles_context(style_context);
|
||||
impl_->odf_context_->drawing_context()->set_styles_context(style_context);
|
||||
impl_->text_context_.set_styles_context(style_context);
|
||||
}
|
||||
|
||||
odf_drawing_context * odf_chart_context::drawing_context()
|
||||
{
|
||||
return &impl_->drawing_context_;
|
||||
return impl_->odf_context_->drawing_context();
|
||||
}
|
||||
odf_text_context * odf_chart_context::text_context()
|
||||
{
|
||||
|
||||
@ -135,6 +135,7 @@ void odf_conversion_context::end_chart()
|
||||
chart_context_.end_chart();
|
||||
|
||||
end_object();
|
||||
chart_context_.set_styles_context(styles_context());
|
||||
}
|
||||
void odf_conversion_context::end_spreadsheet()
|
||||
{
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
#include "precompiled_cpodf.h"
|
||||
|
||||
#include "../utils.h"
|
||||
|
||||
#include "ods_conversion_context.h"
|
||||
#include "office_spreadsheet.h"
|
||||
@ -73,11 +74,24 @@ void parsing_ref (const std::wstring & ref, int & col,int & row)
|
||||
col = getColAddressInv(strCol)+1;
|
||||
row = getRowAdderssInv(strRow)+1;
|
||||
|
||||
}
|
||||
void calculate_size_font_symbols(_font_metrix & metrix)
|
||||
{
|
||||
double appr_px = _gdi_graphics_::calculate_size_symbol(metrix.font_name,metrix.font_size,metrix.italic,metrix.bold);
|
||||
|
||||
if (appr_px > 0)
|
||||
{
|
||||
//pixels to pt
|
||||
metrix.approx_symbol_size = appr_px * 72./96. ;///1.1;//"1.2" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><>
|
||||
metrix.IsCalc = true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
ods_conversion_context::ods_conversion_context(package::odf_document * outputDocument)
|
||||
: odf_conversion_context(outputDocument), table_context_(*this), current_text_context_(NULL)
|
||||
{
|
||||
font_metrix_ = _font_metrix();
|
||||
}
|
||||
|
||||
|
||||
@ -313,6 +327,19 @@ void ods_conversion_context::end_cell()
|
||||
current_table().end_cell();
|
||||
end_text_context();
|
||||
}
|
||||
void ods_conversion_context::calculate_font_metrix(std::wstring name, double size, bool italic, bool bold)
|
||||
{
|
||||
if (font_metrix_.IsCalc)return;
|
||||
|
||||
font_metrix_.font_size = size;
|
||||
font_metrix_.italic = italic;
|
||||
font_metrix_.bold = bold;
|
||||
font_metrix_.font_name = name;
|
||||
|
||||
////////////////////////////////////////////
|
||||
utils::calculate_size_font_symbols(font_metrix_);
|
||||
}
|
||||
|
||||
void ods_conversion_context::start_columns()
|
||||
{
|
||||
}
|
||||
@ -334,7 +361,7 @@ void ods_conversion_context::start_rows()
|
||||
void ods_conversion_context::end_rows()
|
||||
{
|
||||
//add default last row
|
||||
int repeat = std::max(current_table().dimension_row,1024) - current_table().current_row();
|
||||
int repeat = max(current_table().dimension_row,1024) - current_table().current_row();
|
||||
if (repeat < 0) repeat = 1;
|
||||
|
||||
start_row(current_table().current_row()+1,repeat,0,true);
|
||||
|
||||
@ -9,10 +9,23 @@ namespace odf {
|
||||
class office_spreadsheet;
|
||||
class odf_text_context;
|
||||
|
||||
struct _font_metrix
|
||||
{
|
||||
_font_metrix(){IsCalc = italic = bold = false; font_size = approx_symbol_size =0;}
|
||||
bool IsCalc;
|
||||
|
||||
std::wstring font_name;
|
||||
double font_size;
|
||||
bool italic;
|
||||
bool bold;
|
||||
|
||||
double approx_symbol_size;//in pt
|
||||
};
|
||||
|
||||
class ods_conversion_context : public odf_conversion_context
|
||||
{
|
||||
public:
|
||||
ods_conversion_context(package::odf_document * outputDocument);// : odf_conversion_context(outputDocument){}
|
||||
ods_conversion_context(package::odf_document * outputDocument);
|
||||
|
||||
virtual void start_document();
|
||||
|
||||
@ -24,6 +37,8 @@ public:
|
||||
void add_column(int start_column, int repeated, int level = 0, bool _default = false);
|
||||
void end_columns();
|
||||
|
||||
void calculate_font_metrix(std::wstring name, double size, bool italic, bool bold);
|
||||
|
||||
void start_rows();
|
||||
void start_row(int _start_row, int repeated, int level = 0, bool _default = false);
|
||||
void end_row();
|
||||
@ -57,7 +72,10 @@ public:
|
||||
void start_image(std::wstring & image_file_name);
|
||||
void end_image(){drawing_context()->end_image();}
|
||||
|
||||
double convert_symbol_width(double val) {return val * font_metrix_.approx_symbol_size;}
|
||||
|
||||
private:
|
||||
_font_metrix font_metrix_;
|
||||
ods_table_context table_context_;
|
||||
|
||||
odf_text_context* current_text_context_;
|
||||
|
||||
@ -194,7 +194,7 @@ void ods_table_state::set_column_default_cell_style(std::wstring & style_name)
|
||||
column->table_table_column_attlist_.table_default_cell_style_name_ = style_ref(style_name);
|
||||
}
|
||||
|
||||
void ods_table_state::set_column_width(int width)//cm, pt ???
|
||||
void ods_table_state::set_column_width(double width)//cm, pt ???
|
||||
{
|
||||
odf::style* style = dynamic_cast<odf::style*>(columns_.back().style_elm.get());
|
||||
if (!style)return;
|
||||
@ -204,7 +204,7 @@ void ods_table_state::set_column_width(int width)//cm, pt ???
|
||||
|
||||
columns_.back().size = width; //pt
|
||||
|
||||
column_properties->style_table_column_properties_attlist_.style_column_width_ = length(width/4.35,length::cm);
|
||||
column_properties->style_table_column_properties_attlist_.style_column_width_ = length(length(width,length::pt).get_value_unit(length::cm),length::cm);
|
||||
}
|
||||
void ods_table_state::set_column_optimal_width(bool val)
|
||||
{
|
||||
@ -279,7 +279,7 @@ void ods_table_state::set_row_height(double height)
|
||||
|
||||
rows_.back().size = height;//pt
|
||||
|
||||
row_properties->style_table_row_properties_attlist_.style_row_height_ = length(height/22.85,length::cm);
|
||||
row_properties->style_table_row_properties_attlist_.style_row_height_ = length(length(height,length::pt).get_value_unit(length::cm),length::cm);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -84,7 +84,7 @@ public:
|
||||
void set_table_dimension(int col, int row);
|
||||
|
||||
void add_column(office_element_ptr & elm, int repeated ,office_element_ptr & style);
|
||||
void set_column_width(int width);
|
||||
void set_column_width(double width);
|
||||
void set_column_optimal_width(bool val);
|
||||
void set_column_default_cell_style(std::wstring & style_name);
|
||||
|
||||
|
||||
@ -186,10 +186,6 @@
|
||||
Filter="h;hpp;hxx;hm;inl;inc;xsd"
|
||||
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\Oox2OdfConverter\Additional.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\Oox2OdfConverter\Converter.h"
|
||||
>
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#include "stdAfx.h"
|
||||
|
||||
#include "Converter.h"
|
||||
#include "Additional.h"
|
||||
#include "../utils.h"
|
||||
|
||||
#include "XlsxConverter.h"
|
||||
#include "DocxConverter.h"
|
||||
@ -297,7 +297,7 @@ void OoxConverter::convert(OOX::Drawing::CBlipFillProperties *oox_bitmap_fill)
|
||||
if (pathImage.GetLength() > 0)
|
||||
{
|
||||
odf_context()->drawing_context()->set_bitmap_link(string2std_string(pathImage));
|
||||
_image_file_::GetResolution(pathImage, Width, Height);
|
||||
_gdi_graphics_::GetResolution(pathImage, Width, Height);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -821,6 +821,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CChartSpace *oox_chart)
|
||||
if ((!oox_chart) && (!oox_chart->m_oChartSpace.m_chart))return;
|
||||
|
||||
odf_context()->start_chart();
|
||||
convert(oox_chart->m_oChartSpace.m_oSpPr.GetPointer());
|
||||
|
||||
convert(oox_chart->m_oChartSpace.m_chart->m_title);
|
||||
convert(oox_chart->m_oChartSpace.m_chart->m_legend);
|
||||
@ -838,7 +839,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Title* ct_title)
|
||||
if (ct_title == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_title();
|
||||
|
||||
convert(ct_title->m_oSpPr.GetPointer());
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
void OoxConverter::convert(OOX::Spreadsheet::CT_Legend* ct_legend)
|
||||
@ -846,7 +847,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_Legend* ct_legend)
|
||||
if (ct_legend == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_legend();
|
||||
|
||||
convert(ct_legend->m_oSpPr.GetPointer());
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
void OoxConverter::convert(OOX::Spreadsheet::CT_PlotArea* ct_plotArea)
|
||||
@ -854,12 +855,11 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_PlotArea* ct_plotArea)
|
||||
if (ct_plotArea == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_plot_area();
|
||||
convert(ct_plotArea->m_oSpPr.GetPointer());
|
||||
|
||||
if (ct_plotArea->m_layout)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
{
|
||||
}
|
||||
if (ct_plotArea->m_spPr)
|
||||
{
|
||||
}
|
||||
for (long i=0; i< ct_plotArea->m_Items.GetCount(); i++)//
|
||||
{
|
||||
if (!ct_plotArea->m_ItemsElementName0[i]) continue;
|
||||
@ -905,6 +905,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_CatAx* ct_catAx)
|
||||
if (ct_catAx == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_axis();
|
||||
convert(ct_catAx->m_oSpPr.GetPointer());
|
||||
convert(ct_catAx->m_title);
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
@ -913,6 +914,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_DateAx* ct_dateAx)
|
||||
if (ct_dateAx == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_axis();
|
||||
convert(ct_dateAx->m_oSpPr.GetPointer());
|
||||
convert(ct_dateAx->m_title);
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
@ -921,6 +923,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_SerAx* ct_serAx)
|
||||
if (ct_serAx == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_axis();
|
||||
convert(ct_serAx->m_oSpPr.GetPointer());
|
||||
convert(ct_serAx->m_title);
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
@ -929,6 +932,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_ValAx* ct_valAx)
|
||||
if (ct_valAx == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_axis();
|
||||
convert(ct_valAx->m_oSpPr.GetPointer());
|
||||
convert(ct_valAx->m_title);
|
||||
odf_context()->chart_context()->end_element();
|
||||
}
|
||||
@ -1115,6 +1119,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_OfPieChart *chart)
|
||||
void OoxConverter::convert(OOX::Spreadsheet::CT_AreaSer* ser)
|
||||
{
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1124,6 +1129,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_BubbleSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_xVal, 1);
|
||||
convert(ser->m_yVal, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1133,6 +1139,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_SurfaceSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1142,6 +1149,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_PieSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1151,6 +1159,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_BarSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1160,6 +1169,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_ScatterSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_xVal, 1);
|
||||
convert(ser->m_yVal, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1169,6 +1179,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_RadarSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
@ -1178,6 +1189,7 @@ void OoxConverter::convert(OOX::Spreadsheet::CT_LineSer* ser)
|
||||
if (ser == NULL)return;
|
||||
|
||||
odf_context()->chart_context()->start_series();
|
||||
convert(ser->m_oSpPr.GetPointer());
|
||||
convert(ser->m_cat, 1);
|
||||
convert(ser->m_val, 2);
|
||||
odf_context()->chart_context()->end_element();
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
#include "stdAfx.h"
|
||||
|
||||
#include "XlsxConverter.h"
|
||||
#include "Additional.h"
|
||||
#include "../utils.h"
|
||||
|
||||
#include <boost/foreach.hpp>
|
||||
|
||||
@ -484,6 +484,7 @@ void XlsxConverter::convert(OOX::Spreadsheet::CCol *oox_column)
|
||||
else if (oox_column->m_oCustomWidth.IsInit() == false ||
|
||||
(oox_column->m_oCustomWidth.IsInit() == true && oox_column->m_oCustomWidth->GetValue() == 1))
|
||||
{
|
||||
width = ods_context->convert_symbol_width(width);
|
||||
ods_context->current_table().set_column_width(width);
|
||||
ods_context->current_table().set_column_optimal_width(false);
|
||||
// <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> !!!
|
||||
@ -628,10 +629,18 @@ void XlsxConverter::convert(OOX::Spreadsheet::CFont * font, odf::style_text_prop
|
||||
if (font == NULL)return;
|
||||
if (text_properties == NULL)return;
|
||||
|
||||
std::wstring font_name;
|
||||
double font_size = 0;
|
||||
bool font_bold = false;
|
||||
bool font_italic = false;
|
||||
|
||||
if (font->m_oBold.IsInit())
|
||||
{
|
||||
if (font->m_oBold->m_oVal.ToBool() ==true)
|
||||
{
|
||||
font_bold = true;
|
||||
text_properties->content().fo_font_weight_ = odf::font_weight(odf::font_weight::WBold);
|
||||
}
|
||||
else
|
||||
text_properties->content().fo_font_weight_ = odf::font_weight(odf::font_weight::WNormal);
|
||||
}
|
||||
@ -644,13 +653,17 @@ void XlsxConverter::convert(OOX::Spreadsheet::CFont * font, odf::style_text_prop
|
||||
if (font->m_oItalic.IsInit())
|
||||
{
|
||||
if (font->m_oItalic->m_oVal.ToBool() ==true)
|
||||
{
|
||||
font_italic = true;
|
||||
text_properties->content().fo_font_style_ = odf::font_style(odf::font_style::Italic);
|
||||
}
|
||||
else
|
||||
text_properties->content().fo_font_style_ = odf::font_style(odf::font_style::Normal);
|
||||
}
|
||||
if (font->m_oSz.IsInit())
|
||||
{
|
||||
OoxConverter::convert(font->m_oSz->m_oVal->GetValue(), text_properties->content().fo_font_size_);
|
||||
font_size = font->m_oSz->m_oVal->GetValue();
|
||||
OoxConverter::convert(font_size, text_properties->content().fo_font_size_);
|
||||
}
|
||||
if (font->m_oFamily.IsInit())
|
||||
{
|
||||
@ -658,9 +671,11 @@ void XlsxConverter::convert(OOX::Spreadsheet::CFont * font, odf::style_text_prop
|
||||
|
||||
if (font->m_oRFont.IsInit())
|
||||
{
|
||||
font_name = string2std_string(font->m_oRFont->m_sVal.get());
|
||||
//text_properties->content().style_font_name_ = string2std_string(font->m_oRFont->m_sVal.get());
|
||||
text_properties->content().fo_font_family_ = string2std_string(font->m_oRFont->m_sVal.get());
|
||||
text_properties->content().fo_font_family_ = font_name;
|
||||
}
|
||||
ods_context->calculate_font_metrix(font_name,font_size,font_italic,font_bold);
|
||||
/////
|
||||
//...
|
||||
/////
|
||||
@ -1228,7 +1243,7 @@ void XlsxConverter::convert(OOX::Spreadsheet::CPic* oox_picture)
|
||||
sID = oox_picture->m_oBlipFill->m_oBlip->m_oLink.GetValue();
|
||||
//???
|
||||
}
|
||||
_image_file_::GetResolution(pathImage, Width, Height);
|
||||
_gdi_graphics_::GetResolution(pathImage, Width, Height);
|
||||
}
|
||||
ods_context->start_image(string2std_string(pathImage));
|
||||
{
|
||||
|
||||
75
ASCOfficeOdfFileW/source/utils.h
Normal file
75
ASCOfficeOdfFileW/source/utils.h
Normal file
@ -0,0 +1,75 @@
|
||||
#pragma once
|
||||
|
||||
#include <Windows.h>
|
||||
#include <gdiplus.h>
|
||||
#pragma comment(lib, "gdiplus.lib")
|
||||
|
||||
namespace _gdi_graphics_
|
||||
{
|
||||
bool static GetResolution(const WCHAR* fileName, double & Width, double &Height) //pt
|
||||
{
|
||||
bool result =false;
|
||||
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
|
||||
ULONG_PTR gdiplusToken=0;
|
||||
Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
|
||||
|
||||
Gdiplus::Bitmap *file = new Gdiplus::Bitmap(fileName,false);
|
||||
if ((file) && (file->GetLastStatus()==Gdiplus::Ok))
|
||||
{
|
||||
Height = file->GetHeight();
|
||||
Width = file->GetWidth();
|
||||
|
||||
double dpi_x = file->GetHorizontalResolution();
|
||||
double dpi_y = file->GetVerticalResolution();
|
||||
|
||||
if (dpi_x <1 )dpi_x = 96;
|
||||
if (dpi_y <1 )dpi_y = 96;
|
||||
|
||||
Height = Height *72. / dpi_y;
|
||||
Width = Width * 72. /dpi_x;
|
||||
|
||||
result = true;
|
||||
delete file;
|
||||
}
|
||||
Gdiplus::GdiplusShutdown(gdiplusToken);
|
||||
return result;
|
||||
}
|
||||
double static calculate_size_symbol(std::wstring name, double size, bool italic, bool bold)
|
||||
{
|
||||
double result =0;
|
||||
Gdiplus::GdiplusStartupInput gdiplusStartupInput;
|
||||
ULONG_PTR gdiplusToken=0;
|
||||
Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);
|
||||
////
|
||||
std::wstring test_string = L"0123456789";
|
||||
|
||||
int style = Gdiplus::FontStyleRegular;
|
||||
if (bold && italic) style = Gdiplus::FontStyleBoldItalic;
|
||||
else if (bold) style = Gdiplus::FontStyleBold;
|
||||
else if (italic) style = Gdiplus::FontStyleItalic;
|
||||
|
||||
Gdiplus::Graphics * gr = new Gdiplus::Graphics(GetWindowDC(NULL));
|
||||
if (gr)
|
||||
{
|
||||
Gdiplus::Font *font = new Gdiplus::Font(name.c_str(),size,style);
|
||||
if (font)
|
||||
{
|
||||
Gdiplus::SizeF layout;
|
||||
Gdiplus::RectF bound;
|
||||
Gdiplus::Status res = gr->MeasureString(test_string.c_str(),test_string.length(),font,layout,&bound);
|
||||
|
||||
if (res==0)result = bound.Width / test_string.length();
|
||||
//normalize to dpi = 96;
|
||||
|
||||
double dpi = gr->GetDpiX();
|
||||
|
||||
result = result * 96./dpi;
|
||||
|
||||
delete font;
|
||||
}
|
||||
delete gr;
|
||||
}
|
||||
Gdiplus::GdiplusShutdown(gdiplusToken);
|
||||
return result;
|
||||
}
|
||||
};
|
||||
@ -2,6 +2,6 @@
|
||||
//1
|
||||
//2
|
||||
//0
|
||||
//34
|
||||
#define INTVER 1,2,0,34
|
||||
#define STRVER "1,2,0,34\0"
|
||||
//35
|
||||
#define INTVER 1,2,0,35
|
||||
#define STRVER "1,2,0,35\0"
|
||||
|
||||
@ -785,12 +785,14 @@ namespace OOX
|
||||
m_eEffectType = effecttypeUnknown;
|
||||
|
||||
CWCharWrapper sName = oReader.GetName();
|
||||
if ( _T("a:spPr") == sName )
|
||||
if ( _T("a:spPr") == sName )
|
||||
m_eType = et_a_spPr;
|
||||
else if ( _T("pic:spPr") == sName )
|
||||
m_eType = et_pic_spPr;
|
||||
else if ( _T("xdr:spPr") == sName )
|
||||
m_eType = et_xdr_spPr;
|
||||
else if ( _T("c:spPr") == sName )
|
||||
m_eType = et_c_spPr;
|
||||
else
|
||||
return;
|
||||
|
||||
@ -875,6 +877,8 @@ namespace OOX
|
||||
sResult = _T("<pic:spPr ");
|
||||
else if ( et_xdr_spPr == m_eType )
|
||||
sResult = _T("<xdr:spPr ");
|
||||
else if ( et_c_spPr == m_eType )
|
||||
sResult = _T("<c:spPr ");
|
||||
else
|
||||
return _T("");
|
||||
|
||||
@ -976,6 +980,8 @@ namespace OOX
|
||||
sResult = _T("</pic:spPr>");
|
||||
else if ( et_xdr_spPr == m_eType )
|
||||
sResult = _T("</xdr:spPr>");
|
||||
else if ( et_c_spPr == m_eType )
|
||||
sResult = _T("</c:spPr>");
|
||||
return sResult;
|
||||
}
|
||||
virtual EElementType getType() const
|
||||
|
||||
@ -468,6 +468,7 @@ namespace OOX
|
||||
et_xdr_spPr, // <xdr:spPr>
|
||||
|
||||
et_c_chart, // <c:chart>
|
||||
et_c_spPr,
|
||||
|
||||
et_sl_schema, // <sl:shema>
|
||||
et_sl_schemaLibrary, // <sl:schemaLibrary>
|
||||
|
||||
@ -2,6 +2,33 @@
|
||||
#include "ChartSerialize.h"
|
||||
namespace OOX{
|
||||
namespace Spreadsheet{
|
||||
|
||||
nullable<OOX::Drawing::CShapeProperties> FromString_spPr(CString *spPr)
|
||||
{
|
||||
nullable<OOX::Drawing::CShapeProperties> oSpPr;
|
||||
XmlUtils::CXmlLiteReader oShapeReader;
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> xml-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
CString xmlString = L"<?xml version=\"1.0\" encoding=\"UTF-16\"?>";
|
||||
xmlString += L"<c:chart ";
|
||||
xmlString += L"xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" ";
|
||||
xmlString += L"xmlns:a14=\"http://schemas.microsoft.com/office/drawing/2010/main\" ";
|
||||
xmlString += L"xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\" ";
|
||||
xmlString += L"xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" ";
|
||||
xmlString += L"xmlns:c=\"http://schemas.openxmlformats.org/drawingml/2006/chart\" ";
|
||||
xmlString += L">";
|
||||
xmlString += *spPr;
|
||||
xmlString += L"</c:chart>";
|
||||
BOOL result =oShapeReader.FromString(xmlString);
|
||||
|
||||
result = oShapeReader.ReadNextNode();//root ... skiping
|
||||
result = oShapeReader.ReadNextNode();
|
||||
|
||||
CWCharWrapper sName = oShapeReader.GetName();
|
||||
|
||||
if (_T("c:spPr") == sName)
|
||||
oSpPr = oShapeReader;
|
||||
return oSpPr;
|
||||
}
|
||||
bool FromXml_ST_PageSetupOrientation(CString& val, ST_PageSetupOrientation& eOut)
|
||||
{
|
||||
bool bRes = true;
|
||||
@ -1070,6 +1097,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -2399,6 +2427,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -2848,6 +2877,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -3043,6 +3073,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -3407,6 +3438,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3478,6 +3510,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -4209,6 +4242,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -4666,6 +4700,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -4880,6 +4915,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -5223,6 +5259,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -5539,6 +5576,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("invertIfNegative") == sName)
|
||||
{
|
||||
@ -5810,6 +5848,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("pictureOptions") == sName)
|
||||
{
|
||||
@ -5909,6 +5948,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("extLst") == sName)
|
||||
{
|
||||
@ -6986,6 +7026,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("trendlineType") == sName)
|
||||
{
|
||||
@ -7297,6 +7338,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
@ -7434,6 +7476,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("extLst") == sName)
|
||||
{
|
||||
@ -8520,6 +8563,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("cat") == sName)
|
||||
{
|
||||
@ -8609,6 +8653,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -9138,6 +9183,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("explosion") == sName)
|
||||
{
|
||||
@ -9600,6 +9646,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("invertIfNegative") == sName)
|
||||
{
|
||||
@ -10429,6 +10476,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("marker") == sName)
|
||||
{
|
||||
@ -10779,6 +10827,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("marker") == sName)
|
||||
{
|
||||
@ -11223,6 +11272,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("marker") == sName)
|
||||
{
|
||||
@ -11447,6 +11497,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -12026,6 +12077,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("pictureOptions") == sName)
|
||||
{
|
||||
@ -12504,6 +12556,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("extLst") == sName)
|
||||
{
|
||||
@ -12833,6 +12886,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("pictureOptions") == sName)
|
||||
{
|
||||
@ -13246,6 +13300,7 @@ namespace OOX{
|
||||
CString sVal = oReader.GetOuterXml();
|
||||
*pNewElem = sVal;
|
||||
m_spPr = pNewElem;
|
||||
m_oSpPr = FromString_spPr(m_spPr);
|
||||
}
|
||||
else if(_T("txPr") == sName)
|
||||
{
|
||||
|
||||
@ -451,6 +451,7 @@ namespace OOX{
|
||||
CT_Chart* m_chart;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -672,6 +673,7 @@ namespace OOX{
|
||||
CT_Boolean* m_overlay;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -770,6 +772,7 @@ namespace OOX{
|
||||
CT_Boolean* m_showKeys;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -807,6 +810,7 @@ namespace OOX{
|
||||
CT_TickLblPos* m_tickLblPos;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -884,6 +888,7 @@ namespace OOX{
|
||||
public:
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
CT_ChartLines();
|
||||
~CT_ChartLines();
|
||||
void fromXML(XmlUtils::CXmlLiteReader& oReader);
|
||||
@ -901,6 +906,7 @@ namespace OOX{
|
||||
CT_Boolean* m_overlay;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -1062,6 +1068,7 @@ namespace OOX{
|
||||
CT_TickLblPos* m_tickLblPos;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -1152,6 +1159,7 @@ namespace OOX{
|
||||
CT_TickLblPos* m_tickLblPos;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -1189,6 +1197,7 @@ namespace OOX{
|
||||
CT_Tx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
CT_DispUnitsLbl();
|
||||
@ -1263,6 +1272,7 @@ namespace OOX{
|
||||
CT_TickLblPos* m_tickLblPos;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -1320,6 +1330,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_Boolean* m_invertIfNegative;
|
||||
//Member
|
||||
@ -1374,6 +1385,7 @@ namespace OOX{
|
||||
CT_UnsignedInt* m_explosion;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_PictureOptions* m_pictureOptions;
|
||||
//Member
|
||||
@ -1393,6 +1405,7 @@ namespace OOX{
|
||||
CT_MarkerSize* m_size;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_extLst* m_extLst;
|
||||
CT_Marker();
|
||||
@ -1518,6 +1531,7 @@ namespace OOX{
|
||||
CString* m_name;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_TrendlineType* m_trendlineType;
|
||||
//Member
|
||||
@ -1588,6 +1602,7 @@ namespace OOX{
|
||||
CT_NumFmt* m_numFmt;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
@ -1617,6 +1632,7 @@ namespace OOX{
|
||||
CT_Double* m_val;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_extLst* m_extLst;
|
||||
CT_ErrBars();
|
||||
@ -1846,6 +1862,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_AxDataSource* m_cat;
|
||||
//Member
|
||||
@ -1865,6 +1882,7 @@ namespace OOX{
|
||||
CT_UnsignedInt* m_idx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
CT_BandFmt();
|
||||
~CT_BandFmt();
|
||||
void fromXML(XmlUtils::CXmlLiteReader& oReader);
|
||||
@ -1976,6 +1994,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_UnsignedInt* m_explosion;
|
||||
//Member
|
||||
@ -2067,6 +2086,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_Boolean* m_invertIfNegative;
|
||||
//Member
|
||||
@ -2234,6 +2254,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_Marker* m_marker;
|
||||
//Member
|
||||
@ -2301,6 +2322,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_Marker* m_marker;
|
||||
//Member
|
||||
@ -2385,6 +2407,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_Marker* m_marker;
|
||||
//Member
|
||||
@ -2431,6 +2454,7 @@ namespace OOX{
|
||||
public:
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
CT_UpDownBar();
|
||||
~CT_UpDownBar();
|
||||
void fromXML(XmlUtils::CXmlLiteReader& oReader);
|
||||
@ -2540,6 +2564,7 @@ namespace OOX{
|
||||
CT_SerTx* m_tx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_PictureOptions* m_pictureOptions;
|
||||
//Member
|
||||
@ -2602,6 +2627,7 @@ namespace OOX{
|
||||
CT_DTable* m_dTable;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_extLst* m_extLst;
|
||||
CT_PlotArea();
|
||||
@ -2630,6 +2656,7 @@ namespace OOX{
|
||||
CT_Thickness* m_thickness;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CT_PictureOptions* m_pictureOptions;
|
||||
//Member
|
||||
@ -2725,6 +2752,7 @@ namespace OOX{
|
||||
CT_UnsignedInt* m_idx;
|
||||
//Member
|
||||
CString* m_spPr;
|
||||
nullable<OOX::Drawing::CShapeProperties> m_oSpPr;
|
||||
//Member
|
||||
CString* m_txPr;
|
||||
//Member
|
||||
|
||||
Reference in New Issue
Block a user