diff options
Diffstat (limited to 'fitz/node_toxml.c')
-rw-r--r-- | fitz/node_toxml.c | 186 |
1 files changed, 0 insertions, 186 deletions
diff --git a/fitz/node_toxml.c b/fitz/node_toxml.c deleted file mode 100644 index 173b41b7..00000000 --- a/fitz/node_toxml.c +++ /dev/null @@ -1,186 +0,0 @@ -#include "fitz_base.h" -#include "fitz_tree.h" - -static void indent(int level) -{ - while (level--) - putchar(' '); -} - -static void xmlnode(fz_node *node, int level); - -static void xmlover(fz_overnode *node, int level) -{ - fz_node *child; - indent(level); - printf("<over>\n"); - for (child = node->super.first; child; child = child->next) - xmlnode(child, level + 1); - indent(level); - printf("</over>\n"); -} - -static void xmlmask(fz_masknode *node, int level) -{ - fz_node *child; - indent(level); - printf("<mask>\n"); - for (child = node->super.first; child; child = child->next) - xmlnode(child, level + 1); - indent(level); - printf("</mask>\n"); -} - -static void xmlblend(fz_blendnode *node, int level) -{ - fz_node *child; - indent(level); - printf("<blend mode=\"%d\" isolated=\"%d\" knockout=\"%d\">\n", - node->mode, node->isolated, node->knockout); - for (child = node->super.first; child; child = child->next) - xmlnode(child, level + 1); - indent(level); - printf("</blend>\n"); -} - -static void xmltransform(fz_transformnode *node, int level) -{ - indent(level); - printf("<transform matrix=\"%g %g %g %g %g %g\">\n", - node->m.a, node->m.b, - node->m.c, node->m.d, - node->m.e, node->m.f); - xmlnode(node->super.first, level + 1); - indent(level); - printf("</transform>\n"); -} - -static void xmlsolid(fz_solidnode *node, int level) -{ - int i; - indent(level); - printf("<solid colorspace=\"%s\" alpha=\"%g\" v=\"", node->cs->name, node->a); - for (i = 0; i < node->n; i++) - { - printf("%g", node->samples[i]); - if (i < node->n - 1) - putchar(' '); - } - printf("\" />\n"); -} - -static void xmllink(fz_linknode *node, int level) -{ - indent(level); - printf("<link name=\"%p\" />\n", (void *) node->tree); -} - -static void xmlpath(fz_pathnode *node, int level) -{ - int i; - - indent(level); - - if (node->paint == FZ_STROKE) - { - printf("<path fill=\"stroke\" cap=\"%d\" join=\"%d\" width=\"%g\" miter=\"%g\"", - node->linecap, - node->linejoin, - node->linewidth, - node->miterlimit); - if (node->dash) - { - printf(" phase=\"%g\" array=\"", node->dash->phase); - for (i = 0; i < node->dash->len; i++) - printf("%g ", node->dash->array[i]); - printf("\""); - } - printf(">\n"); - } - else - { - printf("<path fill=\"%s\">\n", - node->paint == FZ_FILL ? "nonzero" : "evenodd"); - } - - fz_debugpathnode(node, level + 2); - - indent(level); - printf("</path>\n"); -} - -static void xmltext(fz_textnode *node, int level) -{ - int i; - - indent(level); - printf("<text font=\"%s\" matrix=\"%g %g %g %g\">\n", node->font->name, - node->trm.a, node->trm.b, node->trm.c, node->trm.d); - - for (i = 0; i < node->len; i++) - { - indent(level + 1); - if (node->els[i].ucs >= 32 && node->els[i].ucs < 128) - printf("<g ucs=\"%c\" gid=%d x=\"%g\" y=\"%g\" />\n", - node->els[i].ucs, node->els[i].gid, node->els[i].x, node->els[i].y); - else - printf("<g ucs=\"U+%04X\" gid=%d x=\"%g\" y=\"%g\" />\n", - node->els[i].ucs, node->els[i].gid, node->els[i].x, node->els[i].y); - } - - indent(level); - printf("</text>\n"); -} - -static void xmlimage(fz_imagenode *node, int level) -{ - fz_image *image = node->image; - indent(level); - printf("<image w=\"%d\" h=\"%d\" n=\"%d\" a=\"%d\" />\n", - image->w, image->h, image->n, image->a); -} - -static void xmlshade(fz_shadenode *node, int level) -{ - indent(level); - printf("<shade />\n"); -} - -static void xmlnode(fz_node *node, int level) -{ - if (!node) - { - indent(level); - printf("<nil />\n"); - return; - } - - switch (node->kind) - { - case FZ_NOVER: xmlover((fz_overnode*)node, level); break; - case FZ_NMASK: xmlmask((fz_masknode*)node, level); break; - case FZ_NBLEND: xmlblend((fz_blendnode*)node, level); break; - case FZ_NTRANSFORM: xmltransform((fz_transformnode*)node, level); break; - case FZ_NCOLOR: xmlsolid((fz_solidnode*)node, level); break; - case FZ_NPATH: xmlpath((fz_pathnode*)node, level); break; - case FZ_NTEXT: xmltext((fz_textnode*)node, level); break; - case FZ_NIMAGE: xmlimage((fz_imagenode*)node, level); break; - case FZ_NSHADE: xmlshade((fz_shadenode*)node, level); break; - case FZ_NLINK: xmllink((fz_linknode*)node, level); break; - } -} - -void -fz_debugnode(fz_node *node) -{ - xmlnode(node, 0); -} - -void -fz_debugtree(fz_tree *tree) -{ - printf("<tree>\n"); - xmlnode(tree->root, 1); - printf("</tree>\n"); -} - |