diff --git a/src/sp-text.cpp b/src/sp-text.cpp
index ceb8dc5a5639dec86a57cd233217b7daabb7e817..0390df6bfa7901646c55470a47dda7a8c1f6b18c 100644 (file)
--- a/src/sp-text.cpp
+++ b/src/sp-text.cpp
// the baseline anchor of the first char
Inkscape::Text::Layout const *layout = te_get_layout((SPItem *) item);
if(layout != NULL) {
// the baseline anchor of the first char
Inkscape::Text::Layout const *layout = te_get_layout((SPItem *) item);
if(layout != NULL) {
- *p = layout->characterAnchorPoint(layout->begin()) * sp_item_i2d_affine(item);
+ *p = layout->characterAnchorPoint(layout->begin()) * from_2geom(sp_item_i2d_affine(item));
}
}
}
}
dbox.y0 = 0.0;
dbox.x1 = sp_document_width (SP_OBJECT_DOCUMENT (item));
dbox.y1 = sp_document_height (SP_OBJECT_DOCUMENT (item));
dbox.y0 = 0.0;
dbox.x1 = sp_document_width (SP_OBJECT_DOCUMENT (item));
dbox.y1 = sp_document_height (SP_OBJECT_DOCUMENT (item));
- NR::Matrix const ctm = sp_item_i2d_affine(item);
+ NR::Matrix const ctm = from_2geom(sp_item_i2d_affine(item));
group->layout.print(ctx,&pbox,&dbox,&bbox,ctm);
}
group->layout.print(ctx,&pbox,&dbox,&bbox,ctm);
}
@@ -553,7 +553,7 @@ unsigned SPText::_buildLayoutInput(SPObject *root, Inkscape::Text::Layout::Optio
Glib::ustring const &string = SP_STRING(child)->string;
layout.appendText(string, root->style, child, &optional_attrs, child_attrs_offset + length);
length += string.length();
Glib::ustring const &string = SP_STRING(child)->string;
layout.appendText(string, root->style, child, &optional_attrs, child_attrs_offset + length);
length += string.length();
- } else {
+ } else if (!sp_repr_is_meta_element(child->repr)) {
length += _buildLayoutInput(child, optional_attrs, child_attrs_offset + length, in_textpath);
}
}
length += _buildLayoutInput(child, optional_attrs, child_attrs_offset + length, in_textpath);
}
}