History log of /inkscape/src/display/nr-style.cpp
Revision Date Author Comments Expand
07697c208fea6a18b6f8706c4b35396b272bac14 28-Oct-2015 tavmjong-free <tavmjong@free.fr>

Implement 'text-orientation' with user interface. Update 'writing-mode', adding 'vertical-lr'. Overhaul vertical text. Eliminate any use of "internal" leading in glyph metrics. Etc.

6ddcb13312b093232ab98de91a9d064d5e57a79d 23-Dec-2014 tavmjong-free <tavmjong@free.fr>

Use gray for 'context-fill' and 'context-stroke' in marker selector. Fix rendering bug when elements with 'context-fill' and 'context-stroke' are inside groups.

280aacbbe34a383b9a53217d5f66efdd67a9fbee 21-Dec-2014 tavmjong-free <tavmjong@free.fr>

Implement rendering for 'context-fill' and 'context-stroke' (text not handled yet).

fddea07bd2f78b9f07eed940ff2a2645d2e68ec2 16-Dec-2014 tavmjong-free <tavmjong@free.fr>

Read 'context-fill' and 'context-stroke' keywords.

c1847fccd49cd8cb15eda87f98a7423969acac07 14-Oct-2014 Tomasz Boczkowski <penginsbacon@gmail.com>

Merged src/display folder from svg-paints-support branch

f5c649a1cb88ab13fe7abd4d1f178a773425b820 16-May-2014 Tomasz Boczkowski <penginsbacon@gmail.com>

fix compliance test pservers-pattern-03-f - using fallback when pattern is empty

44985a70f73e2b441900574f6bad338ba39df5fd 13-May-2014 tavmjong-free <tavmjong@free.fr>

CSS2 and CSS3 text decoration rendering, most code from David Mathog.

81dc9a498b1587bfda81c12264d9e9dbb9ac884d 11-May-2014 tavmjong-free <tavmjong@free.fr>

CSS2 and CSS3 text decoration rendering, most code from David Mathog.

ddab522edc000b4622460f0ca99a2bf152f953fc 01-May-2014 tavmjong-free <tavmjong@free.fr>

Enable 'paint-order', (rendering only)... missing changes.

302c2f134d7a0f8afeee1c1625d81386f06d34af 23-Apr-2014 tavmjong-free <tavmjong@free.fr>

Clean up of style code, converting structures to C++ classes. Step 1.

a2220686e6f3bc4aedd8140090696151d6cf1a00 11-Mar-2014 tavmjong-free <tavmjong@free.fr>

Change stroke-dasharray and stroke-dashoffset handling to match other properties. Split style.h into more manageable size files.

894312be5f82a758f1a711f52fa4d5edb1d9c253 18-Feb-2014 tavmjong-free <tavmjong@free.fr>

Copy 'paint-order' property data for Cairo rendering.

58ba7163a5ee19414f3357a7c84d93989cb7498c 08-Feb-2014 mathog <mathog@caltech.edu>

DrawingContext: change variable names ct to dc (bug #1272073)

78b879113fc2eb8281b9f637719275ced0693ac2 29-Sep-2013 buliabyak <>

clear paints on delete to release reffed paintservers, fixes leaking of gradients

8a31b1115420f4d615668373e436a2e4be1cbf51 03-Aug-2013 Markus Engel <markus.engel@tum.de>

Cleaned up.

nr-style.cpp /inkscape/src/extension/internal/odf.cpp /inkscape/src/gradient-chemistry.cpp /inkscape/src/gradient-context.cpp /inkscape/src/select-context.cpp /inkscape/src/select-context.h /inkscape/src/sp-clippath.cpp /inkscape/src/sp-clippath.h /inkscape/src/sp-gradient.h /inkscape/src/sp-item.cpp /inkscape/src/sp-linear-gradient.cpp /inkscape/src/sp-linear-gradient.h /inkscape/src/sp-mask.cpp /inkscape/src/sp-mask.h /inkscape/src/sp-mesh-gradient.cpp /inkscape/src/sp-mesh-gradient.h /inkscape/src/sp-mesh-patch.cpp /inkscape/src/sp-mesh-patch.h /inkscape/src/sp-mesh-row.h /inkscape/src/sp-metadata.cpp /inkscape/src/sp-metadata.h /inkscape/src/sp-missing-glyph.cpp /inkscape/src/sp-missing-glyph.h /inkscape/src/sp-namedview.cpp /inkscape/src/sp-namedview.h /inkscape/src/sp-object-group.cpp /inkscape/src/sp-object-group.h /inkscape/src/sp-paint-server.cpp /inkscape/src/sp-paint-server.h /inkscape/src/sp-pattern.cpp /inkscape/src/sp-pattern.h /inkscape/src/sp-radial-gradient.cpp /inkscape/src/sp-radial-gradient.h /inkscape/src/sp-script.cpp /inkscape/src/sp-script.h /inkscape/src/sp-stop.cpp /inkscape/src/sp-stop.h /inkscape/src/spray-context.cpp /inkscape/src/spray-context.h /inkscape/src/tweak-context.cpp /inkscape/src/tweak-context.h /inkscape/src/widgets/gradient-toolbar.cpp /inkscape/src/widgets/gradient-vector.cpp /inkscape/src/widgets/stroke-style.cpp /inkscape/src/widgets/swatch-selector.cpp
9a8ade3834e2a67c1d95bcfc900ab36be37a03a5 19-Jun-2013 David Mathog <>

changes_2013_05_22a.patch: 1. Resolves issue of bug #988601 message 170 (Support of 'Unset' styles in EMF export). 2. Implements CSS 3 (and CSS 2) text-decoration support. Note that it does not yet provide any method of adding these features - at present it just shows whatever is in the SVG. This new code is also used to display EMF/WMF strike-through and underline text decorations when these files are read in. Those decorations may also be written out to EMF/WMF. Other text decoration features, like overline, or dotted lines, are dropped. For SVG text-decoration -line, -style, -color are all implemented. CSS3 provides two ways to represent the same state, this code uses the compound text-decoration method rather than the 3 fields method. Also it leaves out keywords that are not needed and would break backwards compatibility. For instance: text-decoration: underline solid is valid, but would break CSS2. Solid is the default, so that sort of case is written as: text-decoration: underline If the state is CSS3 specific all of the needed fields are of course include, like text-decoration: underline wavy red 3. It incorporates the fix for bug 1181326 (Text edit mishandles span of just colored spaces) 4. It incorporates further changes to text editing so that style can be changed on spans consisting of only spaces when text decorations are present in the span. 5. It incorporates code to disable text decorations when text so marked is mapped onto a path. 6. Fixed more bugs in Hebrew language support than I can remember. Hebrew language export/import to EMF now works quite well. (See the examples in libTERE v 0.7.) WMF does not support unicode and for all intents and purposes Inkscape has no way to read or write Hebrew to it. Some of more important things that now work that didn't (or didn't always): Hebrew diacritical marks, R/L/center justification, and bidirectional text. The Hebrew fonts "Ezra SIL" and "EZRA SIL SR" should be installed before viewing the libTERE examples, otherwise font substitutions will cause some text shifts. 7. Implemented font failover in Text Reassemble, which makes the process more robust. (Again, see the examples in libTERE. )

/inkscape/src/2geom/generic-rect.h /inkscape/src/attributes-test.h /inkscape/src/attributes.cpp /inkscape/src/attributes.h drawing-context.h drawing-text.cpp drawing-text.h nr-style.cpp nr-style.h /inkscape/src/extension/internal/emf-inout.cpp /inkscape/src/extension/internal/emf-print.cpp /inkscape/src/extension/internal/emf-print.h /inkscape/src/extension/internal/text_reassemble.c /inkscape/src/extension/internal/text_reassemble.h /inkscape/src/extension/internal/wmf-inout.cpp /inkscape/src/extension/internal/wmf-print.cpp /inkscape/src/extension/internal/wmf-print.h /inkscape/src/libnrtype/FontInstance.cpp /inkscape/src/libnrtype/Layout-TNG-Compute.cpp /inkscape/src/libnrtype/Layout-TNG-Output.cpp /inkscape/src/libnrtype/Layout-TNG.h /inkscape/src/libnrtype/font-instance.h /inkscape/src/sp-image.cpp /inkscape/src/style.cpp /inkscape/src/style.h /inkscape/src/text-editing.cpp
2a233c0f7e1ddd1c973ff5fb1f4225d7fe48da43 11-Apr-2013 Alex Valavanis <valavanisalex@gmail.com>

Fix some broken Vim modelines

fa685ea9d7e3f8cd48234395e1e1e45d24899933 03-Oct-2012 Kris <Kris.De.Gussem@hotmail.com>

fixing memory release issue (valgrind reported; bug #1043571 , comment 16 issue 2)

28f74a03fc1d9ebe507ee0c8f6c361c06c2ea27e 02-Oct-2011 Jon A. Cruz <jon@joncruz.org>

Removing redundant doxygen @brief tag.

edf415bfa81ef3be799bb0d740a9ca54553ff091 27-Aug-2011 Krzysztof Kosinski <tweenk.pl@gmail.com>

Completely remove NRRect, NRRectL, in-svg-plane.h

canvas-axonomgrid.cpp canvas-grid.cpp drawing-group.cpp drawing-item.cpp drawing-shape.cpp nr-filter-convolve-matrix.h nr-filter-diffuselighting.cpp nr-filter-displacement-map.h nr-filter-image.cpp nr-filter-offset.cpp nr-filter-offset.h nr-filter-specularlighting.cpp nr-filter-tile.cpp nr-filter-turbulence.cpp nr-filter-turbulence.h nr-filter-units.cpp nr-filter-units.h nr-filter.h nr-style.cpp sodipodi-ctrl.h sp-canvas.h /inkscape/src/extension/internal/cairo-renderer.cpp /inkscape/src/extension/internal/pdfinput/svg-builder.cpp /inkscape/src/helper/geom.cpp /inkscape/src/inkview.cpp /inkscape/src/libnr/Makefile_insert /inkscape/src/libnr/in-svg-plane-test.h /inkscape/src/libnr/in-svg-plane.h /inkscape/src/libnr/nr-convert2geom.h /inkscape/src/libnr/nr-rect-l.cpp /inkscape/src/libnr/nr-rect-l.h /inkscape/src/libnr/nr-rect.cpp /inkscape/src/libnr/nr-rect.h /inkscape/src/libnr/nr-values.cpp /inkscape/src/libnr/nr-values.h /inkscape/src/libnrtype/FontInstance.cpp /inkscape/src/libnrtype/Layout-TNG.h /inkscape/src/libnrtype/font-instance.h /inkscape/src/libnrtype/nr-type-primitives.cpp /inkscape/src/livarot/Path.h /inkscape/src/livarot/PathConversion.cpp /inkscape/src/livarot/PathCutting.cpp /inkscape/src/live_effects/lpe-curvestitch.cpp /inkscape/src/live_effects/lpe-rough-hatches.cpp /inkscape/src/live_effects/parameter/parameter.cpp /inkscape/src/live_effects/parameter/random.cpp /inkscape/src/marker.cpp /inkscape/src/pencil-context.cpp /inkscape/src/selection-chemistry.cpp /inkscape/src/seltrans.cpp /inkscape/src/snap.cpp /inkscape/src/sp-guide.cpp /inkscape/src/sp-item.cpp /inkscape/src/sp-item.h /inkscape/src/sp-pattern.h /inkscape/src/sp-symbol.h /inkscape/src/star-context.cpp /inkscape/src/ui/clipboard.cpp /inkscape/src/ui/dialog/align-and-distribute.h /inkscape/src/ui/widget/style-subject.h /inkscape/src/ui/widget/zoom-status.cpp
f82648a60317274da892e5eccbaf3e8123b19fcb 27-Aug-2011 Krzysztof Kosinski <tweenk.pl@gmail.com>

Remove NRRect from paint servers and temporary calculations

ed422cc32e064690397f1e4aeb526ebda5fbca77 22-Jul-2011 Krzysztof Kosiński <tweenk.pl@gmail.com>

Replace direct use of Cairo contexts and surfaces in the rendering tree with wrappers which keep some extra information about the surface, amd NRRect and NRRectL use with Geom::Rect and Geom::IntRect. Should simplify implementing filter primitive subregions.

/inkscape/src/2geom/affine.h /inkscape/src/2geom/bezier-curve.cpp /inkscape/src/2geom/coord.h /inkscape/src/2geom/forward.h /inkscape/src/2geom/generic-interval.h /inkscape/src/2geom/generic-rect.h /inkscape/src/2geom/int-point.h /inkscape/src/2geom/interval.h /inkscape/src/2geom/path-intersection.cpp /inkscape/src/2geom/point.h /inkscape/src/2geom/rect.h /inkscape/src/2geom/transforms.h /inkscape/src/dialogs/clonetiler.cpp Makefile_insert cairo-templates.h canvas-arena.cpp display-forward.h drawing-context.cpp drawing-context.h drawing-surface.cpp drawing-surface.h nr-arena-glyphs.cpp nr-arena-glyphs.h nr-arena-group.cpp nr-arena-image.cpp nr-arena-item.cpp nr-arena-item.h nr-arena-shape.cpp nr-arena-shape.h nr-arena.cpp nr-arena.h nr-filter-image.cpp nr-filter-slot.cpp nr-filter-slot.h nr-filter.cpp nr-filter.h nr-style.cpp nr-style.h /inkscape/src/flood-context.cpp /inkscape/src/helper/pixbuf-ops.cpp /inkscape/src/helper/png-write.cpp /inkscape/src/sp-pattern.cpp /inkscape/src/trace/trace.cpp /inkscape/src/ui/cache/svg_preview_cache.cpp /inkscape/src/widgets/icon.cpp
644da105390e443952d49b654b3084a517f99222 09-Apr-2011 Krzysztof Kosiński <tweenk.pl@gmail.com>

Initialize cached patterns to NULL in NRStyle, should fix crashes

df6dea947cb4fcb132e1ee71c3a75628157fb326 06-Aug-2010 Krzysztof Kosiński <tweenk.pl@gmail.com>

Minor cleanups

28318b9cff1b85a7041eb33789e3ae7b4d8d933e 07-Jul-2010 Krzysztof Kosiński <tweenk.pl@gmail.com>

Fix group opacity

9afebee14c02f00152d69ac83b6e537d34e1357f 28-Jun-2010 Krzysztof Kosiński <tweenk.pl@gmail.com>

Text rendering. Factor out style handling into nr-style.h