tiny-skia-cpp
A C++20 2D rendering library (port of tiny-skia)
Loading...
Searching...
No Matches
Shaders.h
1#pragma once
2
5
6#include <variant>
7
13
14namespace tiny_skia {
15
17using Shader = std::variant<Color, LinearGradient, SweepGradient, RadialGradient, Pattern>;
18
20[[nodiscard]] bool isShaderOpaque(const Shader& shader);
21
23[[nodiscard]] bool pushShaderStages(const Shader& shader, ColorSpace cs,
24 pipeline::RasterPipelineBuilder& p);
25
27void transformShader(Shader& shader, const Transform& ts);
28
30void applyShaderOpacity(Shader& shader, float opacity);
31
32} // namespace tiny_skia
Base gradient data and gradient stop type.
Two-point linear gradient shader.
Pixmap-based pattern shader and PixmapPaint settings.
Two-point conical (radial) gradient shader.
Angular sweep gradient shader.