On 25/8/11 21:26, Krzysztof KosiĆski wrote:
I committed the rendering cache work in revision 10579 of trunk.
If you encounter serious problems, you can turn off caching completely by defining the environment variable _INKSCAPE_DISABLE_CACHE. For example, run inkscape as: $ _INKSCAPE_DISABLE_CACHE=1 inkscape
By default, each drawing will use up to 64 MB of memory for rendering data. It can be set in the "Rendering" page of the preferences (renamed from "Filters").
A) Rendering artifacts with text objects (regular text, Sans, 40px) [0]:
1) When moving text objects with the arrow keys (select tool), sometimes old remnants stay behind and are not cleared on-canvas. Often triggered by zooming in/out (closer than 100%) while the text object is selected with the select tool and subsequently moving it (or a duplicate) e.g. with 'Shift+arrow key' (default steps).
2) Create a (multi-line) regular text: Delete the last letters of a line or the paragraph with backspace: the letters remain visible on the canvas though no longer part of the text. Zooming in /out removes the remnant parts. Insert a newline into a long word: the text moved to the next line appears duplicated because the canvas at the prior position is not fully cleared/updated.
Disabling caching as described does not prevent the rendering errors.
B) Questions not specific to the merge (style, color-interpolation, "superfluous" markup):
1) While testing above artifacts with the latest builds from trunk, I noticed that when removing a newline in a regular text object with backspace (<tspan> gets deleted?), as well as e.g. when copying a selection to the clipboard, recent builds give these console warnings:
WARNING **: Inkscape currently only supports color-interpolation-filters = sRGB
These messages seem harmless (and not related to any of the operations at all), but I wonder why they occur when manipulating text objects without any filter effects in use.
The new warning reminded me of this question: 2) Why is the number of style attributes added to a path created by converting a simple black stroke to path increasingly longer [1] and adds a lot of apparently unrelated attributes (text, filters, etc)? Similarly, additional style attributes are added when pasting a style from the clipboard (Shift+Ctrl+V) - though pasting does not add the text-related attributes:
Why are e.g. the attributes
"color-interpolation:sRGB;color-interpolation-filters:linearRGB;"
added each time when pasting a style (e.g. red fill, black stroke, width 1px) or converting a stroke to path, without any filter effects in use in the current document? Are they required for each individual object or could they be removed [2]?
~suv
[0] Tested on Mac OS X 10.5.8 (i386) with r10579-10600 GTK+/X11 2.24.4 with cairo 1.10.2 GTK+/Quartz 2.24.4 with cairo 1.11.2
[1] these 32 style attributes are created in r10799 each time a black stroke (fill:none; stroke:#000000) is converted to path (Ctrl+Alt+C): font-size:xx-small; font-style:normal; font-variant:normal; font-weight:normal; font-stretch:normal; text-indent:0; text-align:start; text-decoration:none; line-height:normal; letter-spacing:normal; word-spacing:normal; text-transform:none; direction:ltr; block-progression:tb; writing-mode:lr-tb; text-anchor:start; baseline-shift:baseline; color:#000000; color-interpolation:sRGB; color-interpolation-filters:linearRGB; fill:#000000; fill-opacity:1; stroke:none; stroke-width:10; marker:none; visibility:visible; display:inline; overflow:visible; enable-background:accumulate; clip-rule:nonzero; font-family:Sans; -inkscape-font-specification:Sans
[2] related reports ("superfluous" markup) in the bug tracker: https://bugs.launchpad.net/inkscape/+bug/212077 https://bugs.launchpad.net/inkscape/+bug/171983 https://bugs.launchpad.net/inkscape/+bug/170184