Text objects with fill and stroke 'None' are invisible in outline mode

Bug #941597 reported by su_v on 2012-02-26
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Medium
zcgucas

Bug Description

Follow-up report to Bug #941174 “latex+pdf export text duplicated”:

This question by the reporter of bug #941174:
> Is there a possibility to make this invisible texts
> visible within inkscape

reveals a bug in outline view mode in Inkscape stable and trunk: normally, invisible objects due to fill and stroke set to 'None' are visible and selectable in outline view mode (menu 'View > Display Mode > Outline'). This unexpectedly does not apply to text objects with fill and stroke set to 'None' (be it by an explicit style attribute of the text, or by an inherited style of the parent container (group)).

Due to this bug (not related to the latex export), it is not possible to quickly detect such invisible text objects by switching to outline mode (see attached reduced test case).

su_v (suv-lp) wrote :
tags: added: renderer text
tags: added: easy-fix
jazzynico (jazzynico) wrote :

Confirmed on Windows XP, Inkscape 0.46, 0.48.2 and trunk revision 10972.

Changed in inkscape:
importance: Undecided → Medium
status: New → Confirmed
zcgucas (zcgucas) wrote :

I am a student who want to apply GSOC project. Following the two bug fixing rule, here I tried to fix this bug and provide a patch. Hope it will work. :D

Johan Engelen (johanengelen) wrote :

Your patch fixes the bug, but there may be a dangerous bug: the patch removes the check if _font==NULL, but then later on in code *_font is used. Can you add a check for this?

Thanks.

zcgucas (zcgucas) wrote :

Hi, Johan, in fact the code still checks whether _font is null after those lines I changed. In the member function _pickItem, the original line "if (!_font || !_bbox) return NULL;" is replaced by "if (!_font || !_bbox || (!_drawing.outline() && invisible) ) return NULL;". We could see that it still checks whether _font is NULL. The added code is to ensure texts are not selectable when it is not in outline mode when they are set to be invisible(This is what inkscape does before I changed any code).

Kris (kris-degussem) wrote :

Patch committed in revision 11359. Thanks for sharing it.

Changed in inkscape:
status: Confirmed → Fix Committed
assignee: nobody → zcgucas (zcgucas)
milestone: none → 0.49
tags: removed: easy-fix
Kris (kris-degussem) on 2012-05-14
tags: added: backport-proposed
ScislaC (scislac) wrote :

There is no easily found corresponding code in 0.48.x, removing tag

tags: removed: backport-proposed
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers