Lines Matching refs:gradient

746  * \brief Creates a linear or radial gradient from poppler's data structure
748 * \param matrix gradient transformation, can be null
753 Inkscape::XML::Node *gradient;
759 gradient = _xml_doc->createElement("svg:linearGradient");
763 sp_repr_set_svg_double(gradient, "x1", x1);
764 sp_repr_set_svg_double(gradient, "y1", y1);
765 sp_repr_set_svg_double(gradient, "x2", x2);
766 sp_repr_set_svg_double(gradient, "y2", y2);
772 gradient = _xml_doc->createElement("svg:radialGradient");
777 sp_repr_set_svg_double(gradient, "fx", x1);
778 sp_repr_set_svg_double(gradient, "fy", y1);
779 sp_repr_set_svg_double(gradient, "cx", x2);
780 sp_repr_set_svg_double(gradient, "cy", y2);
781 sp_repr_set_svg_double(gradient, "r", r2);
789 gradient->setAttribute("gradientUnits", "userSpaceOnUse");
790 // If needed, flip the gradient transform around the y axis
799 gradient->setAttribute("gradientTransform", transform_text);
804 gradient->setAttribute("spreadMethod", "pad");
807 if ( num_funcs > 1 || !_addGradientStops(gradient, shading, func) ) {
808 Inkscape::GC::release(gradient);
813 defs->appendChild(gradient);
814 gchar *id = g_strdup(gradient->attribute("id"));
815 Inkscape::GC::release(gradient);
822 * \brief Adds a stop with the given properties to the gradient's representation
824 void SvgBuilder::_addStopToGradient(Inkscape::XML::Node *gradient, double offset,
846 gradient->appendChild(stop);
867 bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *shading,
876 _addStopToGradient(gradient, 0.0, &stop1, 1.0);
877 _addStopToGradient(gradient, 1.0, &stop2, 1.0);
888 _addStopToGradient(gradient, bounds[0], &prev_color, 1.0);
897 _addStopToGradient(gradient, bounds[i + 1] - expE, &prev_color, 1.0);
899 _addStopToGradient(gradient, bounds[i] + expE, &color, 1.0);
903 _addStopToGradient(gradient, bounds[i + 1], &color, 1.0);