Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java =================================================================== diff -u -ref201100ffd7ebdfcb18c72528f062379e4c65d3 -r78fe5eb131ad1daac1ccf368f2059abe1d559aed --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision ef201100ffd7ebdfcb18c72528f062379e4c65d3) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/service/ExportToolContentService.java (.../ExportToolContentService.java) (revision 78fe5eb131ad1daac1ccf368f2059abe1d559aed) @@ -667,7 +667,7 @@ if (format != ExportToolContentService.PACKAGE_FORMAT_IMS) { String svgFileName = FileUtil.getFullPath(contentDir, ExportToolContentService.SVG_IMAGE_FILE_NAME); Writer svgFile = new OutputStreamWriter(new FileOutputStream(svgFileName), "UTF-8"); - SVGGenerator svgGenerator = SVGGenerator.getInstance(); + SVGGenerator svgGenerator = new SVGGenerator(); svgGenerator.generateSvg(ldDto); OutputFormat outputFormat = new OutputFormat(svgGenerator.getSVGDocument()); outputFormat.setLineWidth(65); Index: lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGConstants.java =================================================================== diff -u -ra6a7639e9b454cad77bb2e994192777a8458f8d8 -r78fe5eb131ad1daac1ccf368f2059abe1d559aed --- lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGConstants.java (.../SVGConstants.java) (revision a6a7639e9b454cad77bb2e994192777a8458f8d8) +++ lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGConstants.java (.../SVGConstants.java) (revision 78fe5eb131ad1daac1ccf368f2059abe1d559aed) @@ -30,8 +30,8 @@ public static final String SVG_NAMESPACE_XLINK = "http://www.w3.org/1999/xlink"; // canvas dimensions - public static final int CANVAS_WIDTH = 1024; - public static final int CANVAS_HEIGHT = 768; + public static final String CANVAS_DEFAULT_WIDTH = "100%"; + public static final String CANVAS_DEFAULT_HEIGHT = "100%"; // gate dimensions public static final int GATE_WIDTH = 30; Index: lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGGenerator.java =================================================================== diff -u -ra6a7639e9b454cad77bb2e994192777a8458f8d8 -r78fe5eb131ad1daac1ccf368f2059abe1d559aed --- lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGGenerator.java (.../SVGGenerator.java) (revision a6a7639e9b454cad77bb2e994192777a8458f8d8) +++ lams_common/src/java/org/lamsfoundation/lams/util/svg/SVGGenerator.java (.../SVGGenerator.java) (revision 78fe5eb131ad1daac1ccf368f2059abe1d559aed) @@ -52,7 +52,7 @@ f.getContentPane().add(canvas); canvas.setSVGDocument(svgGenerator.getSVGDocument()); f.pack(); - f.setSize(CANVAS_WIDTH, CANVAS_HEIGHT); + f.setSize(CANVAS_DEFAULT_WIDTH, CANVAS_DEFAULT_HEIGHT); f.setVisible(true); * * @author Andrey Balan @@ -61,23 +61,21 @@ private SVGDocument doc; - private SVGGenerator(SVGDocument svgGDocument) { - doc = svgGDocument; - } - /** * Sets up Svg root and defs. */ - public static SVGGenerator getInstance() { + private void initializeSvgDocument(String scale, String width, String height) { + String canvasWidth = (width == null) ? CANVAS_DEFAULT_WIDTH : width; + String canvasGeigth = (height == null) ? CANVAS_DEFAULT_HEIGHT : height; // Create an SVG document. DOMImplementation impl = SVGDOMImplementation.getDOMImplementation(); - SVGDocument doc = (SVGDocument) impl.createDocument(SVG_NAMESPACE, "svg", null); + doc = (SVGDocument) impl.createDocument(SVG_NAMESPACE, "svg", null); // Get the root element (the 'svg' element). Element svgRoot = doc.getDocumentElement(); // Set the width and height attributes on the root 'svg' element. - svgRoot.setAttributeNS(null, "width", Integer.toString(CANVAS_WIDTH)); - svgRoot.setAttributeNS(null, "height", Integer.toString(CANVAS_HEIGHT)); + svgRoot.setAttributeNS(null, "width", CANVAS_DEFAULT_WIDTH); + svgRoot.setAttributeNS(null, "height", CANVAS_DEFAULT_HEIGHT); svgRoot.setAttributeNS(null, "xmlns", SVG_NAMESPACE); svgRoot.setAttributeNS(null, "xmlns:xlink", SVG_NAMESPACE_XLINK); @@ -97,8 +95,7 @@ Element path = doc.createElementNS(SVG_NAMESPACE, "path"); path.setAttributeNS(null, "d", "M 0 0 L 10 5 L 0 10 z"); marker.appendChild(path); - - return new SVGGenerator(doc); + } public SVGDocument getSVGDocument() { @@ -113,6 +110,7 @@ * @throws IOException */ public void generateSvg(LearningDesignDTO learningDesign) throws JDOMException, IOException { + initializeSvgDocument("0.5", null, null); //initialize all tree nodes ArrayList activities = learningDesign.getActivities();