From 0a186150f085c34462b8c6cd5257849c73f80b65 Mon Sep 17 00:00:00 2001 From: scuri Date: Wed, 2 Dec 2009 20:30:55 +0000 Subject: New: driver SVG. --- test/cdtest/drivers.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'test/cdtest/drivers.c') diff --git a/test/cdtest/drivers.c b/test/cdtest/drivers.c index 62e92aa..dd23331 100644 --- a/test/cdtest/drivers.c +++ b/test/cdtest/drivers.c @@ -33,6 +33,7 @@ extern tCTC ctgc; #define DGN #define PDF #define CDDBG +#define SVG static int LoadCanvas(char* ctx_name, cdContext* ctx, char *filename) { @@ -197,6 +198,27 @@ static int fEPS(void) } #endif +/*-------------------------------------------------------------------------*/ +/* Copia o conteudo do canvas para um arquivo SVG. */ +/*-------------------------------------------------------------------------*/ +#ifdef SVG +#include + +static int fSVG(void) +{ + char filename[1024]="*.svg"; + char data[1024]; + + if (IupGetFile(filename)>=0) + { + sprintf(data, "%s -s%d", filename, (int)(ctgc.res * 25.4)); + return SaveCanvas("CD_SVG", CD_SVG, data); + } + + return IUP_DEFAULT; +} +#endif + #ifdef PDF #include @@ -428,6 +450,10 @@ void DriversInit(void) IupSetFunction("cmdPS", (Icallback) fPS); IupSetFunction("cmdEPS", (Icallback) fEPS); #endif +#ifdef SVG + IupSetAttribute(IupGetHandle("itSVG"), IUP_ACTIVE, IUP_YES); + IupSetFunction("cmdSVG", (Icallback) fSVG); +#endif #ifdef PDF IupSetAttribute(IupGetHandle("itPDF"), IUP_ACTIVE, IUP_YES); IupSetFunction("cmdPDF", (Icallback) fPDF); -- cgit v1.2.3