// Create the PDF document.
        // rootPath is the present working directory path.
        Document document = new Document();
        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(new File(rootPath + "svg.pdf")));
        document.open();
        // Add paragraphs to the document...
        document.add(new Paragraph("Paragraph 1"));
        document.add(new Paragraph(" "));
        // Boilerplate for drawing the SVG to the PDF.
        String parser = XMLResourceDescriptor.getXMLParserClassName();
        SAXSVGDocumentFactory factory = new SAXSVGDocumentFactory(parser);
        UserAgent userAgent = new UserAgentAdapter();
        DocumentLoader loader = new DocumentLoader(userAgent);
        BridgeContext ctx = new BridgeContext(userAgent, loader);
        ctx.setDynamicState(BridgeContext.DYNAMIC);
        GVTBuilder builder = new GVTBuilder();
        PdfContentByte cb = writer.getDirectContent();
        // Parse the SVG and draw it to the PDF.
        Graphics2D g2d = new PdfGraphics2D(cb, 725, 400);
        SVGDocument chart = factory.createSVGDocument(rootPath, new StringReader(svg));
        GraphicsNode chartGfx = builder.build(ctx, chart);
        chartGfx.paint(g2d);
        g2d.dispose();
        // Add paragraphs to the document...
        document.add(new Paragraph("Paragraph 2"));
        document.add(new Paragraph(" "));
        document.close();
0 件のコメント:
コメントを投稿