comment changes anchor() , in element()

This commit is contained in:
sukoi26 2017-02-06 23:00:45 +01:00
parent 26eacce248
commit d7486830a6
2 changed files with 42 additions and 11 deletions

View File

@ -528,15 +528,15 @@ std::pair<int, int> cell::anchor() const
for (column_t column_index = 1; column_index <= d_->column_ - 1; column_index++)
{
left += worksheet().cell(column_index, row()).width();
left += worksheet().column_width(column_index);
}
double top = 0;
for (row_t row_index = 1; row_index <= d_->row_ - 1; row_index++)
{
top += worksheet().cell(column(), row_index).height();
}
top += worksheet().row_height(row_index);
}
return {static_cast<int>(left), static_cast<int>(top)};
}

View File

@ -1345,6 +1345,28 @@ void xlsx_consumer::read_stylesheet()
new_font.strikethrough(true);
}
}
else if (font_property_element == qn("spreadsheetml", "outline"))
{
if (parser().attribute_present("val"))
{
new_font.outlinethrough(is_true(parser().attribute("val")));
}
else
{
new_font.outlinethrough(true);
}
}
else if (font_property_element == qn("spreadsheetml", "shadow"))
{
if (parser().attribute_present("val"))
{
new_font.shadowthrough(is_true(parser().attribute("val")));
}
else
{
new_font.shadowthrough(true);
}
}
else if (font_property_element == qn("spreadsheetml", "i"))
{
if (parser().attribute_present("val"))
@ -1575,11 +1597,11 @@ void xlsx_consumer::read_stylesheet()
auto count = parser().attribute<std::size_t>("count");
std::size_t processed = 0;
while (in_element(qn("spreadsheetml", "dxfs")))
while (in_element(current_style_element))
{
auto current_element = expect_start_element(xml::content::complex);
auto current_element = expect_start_element(xml::content::mixed);
skip_remaining_content(current_element);
expect_end_element(current_element);
++processed;
}
@ -1600,7 +1622,7 @@ void xlsx_consumer::read_stylesheet()
{
auto current_element = expect_start_element(xml::content::complex);
skip_remaining_content(current_element);
expect_end_element(current_element);
++processed;
}
@ -2627,11 +2649,11 @@ std::vector<std::string> xlsx_consumer::read_namespaces()
bool xlsx_consumer::in_element(const xml::qname &name)
{
if (parser().peek() == xml::parser::event_type::end_element || stack_.back() != name)
if ((parser().peek() == xml::parser::event_type::end_element ) && (stack_.back() == name ))
{
return false;
}
return true;
}
@ -2717,6 +2739,10 @@ rich_text xlsx_consumer::read_rich_text(const xml::qname &parent)
{
run.second.get().family(parser().attribute<std::size_t>("val"));
}
else if (current_run_property_element == xml::qname(xmlns, "charset"))
{
run.second.get().charset(parser().attribute<std::size_t>("val"));
}
else if (current_run_property_element == xml::qname(xmlns, "scheme"))
{
run.second.get().scheme(parser().attribute("val"));
@ -2726,6 +2752,11 @@ rich_text xlsx_consumer::read_rich_text(const xml::qname &parent)
run.second.get().bold(
parser().attribute_present("val") ? is_true(parser().attribute("val")) : true);
}
else if (current_run_property_element == xml::qname(xmlns, "i"))
{
run.second.get().bold(
parser().attribute_present("val") ? is_true(parser().attribute("val")) : true);
}
else if (current_run_property_element == xml::qname(xmlns, "u"))
{
if (parser().attribute_present("val"))