]> gitweb.michael.orlitzky.com - libsvgtiny.git/blobdiff - svgtiny_internal.h
Add scale argument to svgtiny_test and svgtiny_display.
[libsvgtiny.git] / svgtiny_internal.h
index 171f5c07ae7eb036e620132bd4e9d170c2100d3e..a729f253ff4e2f2234a1c78051f9178ae82d9da1 100644 (file)
@@ -8,6 +8,8 @@
 #ifndef SVGTINY_INTERNAL_H
 #define SVGTINY_INTERNAL_H
 
+#include <stdbool.h>
+
 struct svgtiny_gradient_stop {
        float offset;
        svgtiny_colour color;
@@ -37,16 +39,25 @@ struct svgtiny_parse_state {
 
        /* gradients */
        unsigned int linear_gradient_stop_count;
+       const char *gradient_x1, *gradient_y1, *gradient_x2, *gradient_y2;
        struct svgtiny_gradient_stop gradient_stop[svgtiny_MAX_STOPS];
+       bool gradient_user_space_on_use;
+       struct {
+               float a, b, c, d, e, f;
+       } gradient_transform;
 };
 
 
 /* svgtiny.c */
-void svgtiny_transform_path(float *p, unsigned int n,
-               struct svgtiny_parse_state *state);
+float svgtiny_parse_length(const char *s, int viewport_size,
+               const struct svgtiny_parse_state state);
 void svgtiny_parse_color(const char *s, svgtiny_colour *c,
                struct svgtiny_parse_state *state);
+void svgtiny_parse_transform(char *s, float *ma, float *mb,
+               float *mc, float *md, float *me, float *mf);
 struct svgtiny_shape *svgtiny_add_shape(struct svgtiny_parse_state *state);
+void svgtiny_transform_path(float *p, unsigned int n,
+               struct svgtiny_parse_state *state);
 
 /* svgtiny_gradient.c */
 void svgtiny_find_gradient(const char *id, struct svgtiny_parse_state *state);