2#ifndef SEEN_OBJECT_RENDERER_H
3#define SEEN_OBJECT_RENDERER_H
5#include <cairomm/context.h>
6#include <cairomm/refptr.h>
7#include <cairomm/surface.h>
8#include <cairomm/context.h>
10#include <glibmm/ustring.h>
104 const Glib::ustring& group_id,
106 Gdk::RGBA marker_color,
111 std::optional<guint32> checkerboard,
Two-dimensional point with integer coordinates.
std::unique_ptr< SPDocument > _symbol_document
Cairo::RefPtr< Cairo::Surface > render(SPObject &object, double width, double height, double device_scale, options options={})
std::unique_ptr< SPDocument > _sandbox
Typed SVG document implementation.
SPObject is an abstract base class of all of the document nodes at the SVG document level.
std::unique_ptr< Magick::Image > image
Helper class to stream background task notifications as a series of messages.
Cairo::RefPtr< Cairo::Surface > add_background_to_image(Cairo::RefPtr< Cairo::Surface > image, uint32_t rgb, double margin, double radius, int device_scale, std::optional< uint32_t > border=std::optional< uint32_t >())
std::unique_ptr< SPDocument > ink_markers_preview_doc(const Glib::ustring &group_id)
Returns a new document containing default start, mid, and end markers.
void draw_gradient(const Cairo::RefPtr< Cairo::Context > &cr, SPGradient *gradient, int x, int width)
Renders a preview of a gradient into the passed context.
Cairo::RefPtr< Cairo::Surface > create_marker_image(const Glib::ustring &group_id, SPDocument *_sandbox, Gdk::RGBA marker_color, Geom::IntPoint pixel_size, const char *mname, SPDocument *source, Inkscape::Drawing &drawing, std::optional< guint32 > checkerboard, bool no_clip, double scale, int device_scale)
Creates a copy of the marker named mname, determines its visible and renderable area in the bounding ...
void set_source_inkscape_color(Cairo::RefPtr< Cairo::Context > context, Inkscape::Colors::Color const &color, double opacity)
options & checkerboard(uint32_t color)
std::optional< uint32_t > _checkerboard
options & frame(uint32_t rgba, double thickness=1)
options & foreground(Gdk::RGBA fg)
bool _symbol_style_from_use
options & symbol_style_from_use(bool from_use_element=true)
options & image_opacity(double alpha)
options & solid_background(uint32_t bg, double margin, double corner_radius=0)