Example #1
0
function fn__svg_linear_gradient($input)
{
    $gradient = create_svg_linear_gradient($input);
    $gradient_markup = reset($gradient);
    $gradient_id = key($gradient);
    $svg = '<svg xmlns="http://www.w3.org/2000/svg" width="150" height="150">';
    $svg .= '<defs>';
    $svg .= $gradient_markup;
    $svg .= '</defs>';
    $svg .= "<rect x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" fill=\"url(#{$gradient_id})\"/>";
    $svg .= '</svg>';
    return Crush::$process->tokens->add(new Url('data:image/svg+xml;base64,' . base64_encode($svg)));
}
Example #2
0
function svg_fn_linear_gradient($input, $element)
{
    // Relies on functions from svg-gradients plugin.
    Plugin::load('svg-gradients');
    $generated_gradient = create_svg_linear_gradient($input);
    $element->fills['gradients'][] = reset($generated_gradient);
    return 'url(#' . key($generated_gradient) . ')';
}