Mork0075 wrote:
> I have got a valid svg file, with the svg tag at root etc.
>
> Perhaps this question is silly, but i dont understand why to do this:
>
>      Document document = impl.createDocument(svgNS, "svg", null);
>      SVGGraphics2D g2d = new SVGGraphics2D(document);
>      
>      // ... draw some shapes ...
>   
It's not silly, because you don't have to do it :).
> i dont want to draw some shapes programmatically, my svg document (in String 
> representation <svg ...)is still ready when i come to this point. I dont see 
> the piece of code where to tell the TranscoderInput of my svg.
>
> P.S.: when i talk about svg, i mean a String like this: 
> String svg = "<svg height=... <defs ... <g ..."
>   
The following code snippet should do the trick (not tested). Notice,
however, that I did not list the necessary imports and remember to
include the PDFTranscoder.jar library to the classpath.

     SVGDocument document = SVGDocumentFactory.createSVGDocument("mysvg.svg");
     File pdf = new File("mypdf.pdf");
  
     OutputStream out = new FileOutputStream(pdf);
     PDFTranscoder t = new PDFTranscoder();
     TranscoderInput input = new TranscoderInput(document);
     TranscoderOutput output = new TranscoderOutput(out);
     try {
         t.transcode(input, output);
     } catch (Exception ex) {
         throw new IOException(ex.getMessage());
     } finally {
         out.flush();
         out.close();
     }

>
>
> Steffen Jacobs schrieb:
>   
>> Now that i read your question again more carefully, I am not sure what
>> you mean by 'convert a svg string'.
>>
>> Do you have a valid SVG file, or just some XML/SVG snippets to convert?
>> In the former case, you can use batik to get the SVGDocument tree of
>> your file, create a new PDFTranscoder object and use the
>> transcode(input, output) method as written in my example.
>>
>> In the latter case, you have to create a SVGDocument first, add your SVG
>> 'snippets' to the document tree and use transcode again. To do so just
>> copy'n'paste my code example and insert your svg snippets into the
>> document tree after the line marked with
>>
>> // ... draw some shapes ...
>>
>> and replace the next line with something like
>> File pdf = new File('mypdf.pdf');
>>
>>
>>
>>
>> Mork0075 wrote:
>>   
>>     
>>> Thank you Steffen, but where comes the svg snippet in place, which
>>> already exists?
>>>
>>> Steffen Jacobs schrieb:
>>>   
>>>     
>>>       
>>>> Hi,
>>>>
>>>> you can try the pdf-transcoder library. An example from another forum
>>>> may help:
>>>>
>>>> DOMImplementation impl = SVGDOMImplementation.getDOMImplementation();
>>>>      String svgNS = SVGDOMImplementation.SVG_NAMESPACE_URI;
>>>>      Document document = impl.createDocument(svgNS, "svg", null);
>>>>      SVGGraphics2D g2d = new SVGGraphics2D(document);
>>>>      
>>>>      // ... draw some shapes ...
>>>>      File pdf = ...
>>>>      
>>>>      OutputStream out = new FileOutputStream(pdf);
>>>>      PDFTranscoder t = new PDFTranscoder();
>>>>      TranscoderInput input = new TranscoderInput(document);
>>>>      TranscoderOutput output = new TranscoderOutput(out);
>>>>      try {
>>>>          t.transcode(input, output);
>>>>      } catch (Exception ex) {
>>>>          throw new IOException(ex.getMessage());
>>>>      } finally {
>>>>          out.flush();
>>>>          out.close();
>>>>      }
>>>>
>>>>
>>>> Regards,
>>>> Steffen
>>>>
>>>>
>>>> Mork0075 wrote:
>>>>   
>>>>     
>>>>       
>>>>         
>>>>> Hello,
>>>>>
>>>>> can anyone give me a piece of code how to convert a svg string into a
>>>>> pdf file?
>>>>>
>>>>> Thanks a lot :)
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>>   
>>>>>     
>>>>>       
>>>>>         
>>>>>           
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>>
>>>>
>>>>   
>>>>     
>>>>       
>>>>         
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>   
>>>     
>>>       
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>   
>>     
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to