From 626b1a569bb1a6a3fa8c03324c8066fe81332d17 Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Cenoz Date: Sun, 8 May 2016 09:06:24 +0200 Subject: fix-bug-734201. stroke-to-path doesn't scale stroke width used in markers Fixed bugs: - https://launchpad.net/bugs/734201 (bzr r14875) --- src/splivarot.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/splivarot.cpp') diff --git a/src/splivarot.cpp b/src/splivarot.cpp index 461445ee0..c37df151c 100644 --- a/src/splivarot.cpp +++ b/src/splivarot.cpp @@ -862,7 +862,7 @@ void sp_selected_path_outline_add_marker( SPObject *marker_object, Geom::Affine if (marker->markerUnits == SP_MARKER_UNITS_STROKEWIDTH) { tr = stroke_scale * tr; } - + // total marker transform tr = marker_item->transform * marker->c2p * tr * transform; @@ -1153,7 +1153,9 @@ sp_selected_path_outline(SPDesktop *desktop) desktop->messageStack()->flash(Inkscape::WARNING_MESSAGE, _("Select stroked path(s) to convert stroke to path.")); return; } - + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + bool scale_stroke = prefs->getBool("/options/transform/stroke", true); + prefs->setBool("/options/transform/stroke", true); bool did = false; std::vector il(selection->itemList()); for (std::vector::const_iterator l = il.begin(); l != il.end(); l++){ @@ -1503,7 +1505,7 @@ sp_selected_path_outline(SPDesktop *desktop) delete res; delete orig; } - + prefs->setBool("/options/transform/stroke", scale_stroke); if (did) { DocumentUndo::done(desktop->getDocument(), SP_VERB_SELECTION_OUTLINE, _("Convert stroke to path")); -- cgit v1.2.3 From b24b02a0474d6bdaba2e5a77fe91e285217abccd Mon Sep 17 00:00:00 2001 From: Adrian Boguszewski Date: Sun, 15 May 2016 21:47:09 +0200 Subject: Added normalized path to flowtext Fixed bugs: - https://launchpad.net/bugs/1555152 (bzr r14889) --- src/splivarot.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/splivarot.cpp') diff --git a/src/splivarot.cpp b/src/splivarot.cpp index c37df151c..1bc6da3e1 100644 --- a/src/splivarot.cpp +++ b/src/splivarot.cpp @@ -1776,11 +1776,14 @@ sp_selected_path_do_offset(SPDesktop *desktop, bool expand, double prefOffset) SPItem *item = *l; SPCurve *curve = NULL; - if (!SP_IS_SHAPE(item) && !SP_IS_TEXT(item)) + if (!SP_IS_SHAPE(item) && !SP_IS_TEXT(item) && !SP_IS_FLOWTEXT(item)) continue; else if (SP_IS_SHAPE(item)) { curve = SP_SHAPE(item)->getCurve(); } + else if (SP_IS_FLOWTEXT(item)) { + curve = SP_FLOWTEXT(item)->getNormalizedBpath(); + } else { // Item must be SP_TEXT curve = SP_TEXT(item)->getNormalizedBpath(); } -- cgit v1.2.3