{"id":105,"date":"2007-11-23T10:31:00","date_gmt":"2007-11-23T10:31:00","guid":{"rendered":"http:\/\/www.tutego.de\/blog\/javainsel\/?p=105"},"modified":"2007-11-23T10:31:00","modified_gmt":"2007-11-23T10:31:00","slug":"jodconverter-fur-openoffice-dateiformatkonvertierungen","status":"publish","type":"post","link":"https:\/\/www.tutego.de\/blog\/javainsel\/2007\/11\/jodconverter-fur-openoffice-dateiformatkonvertierungen\/","title":{"rendered":"jodconverter f\u00fcr OpenOffice Dateiformatkonvertierungen"},"content":{"rendered":"<p>Der zweite Schritt meiner Rechnungserstellung ist die Konvertierung in PDF. Auch dazu gibt es eine prima Bibliothek: <a href=\"http:\/\/www.artofsolving.com\/opensource\/jodconverter\">http:\/\/www.artofsolving.com\/opensource\/jodconverter<\/a>. (Einziger Nachteil: viele Jars.) Damit kann man Word, PowerPoint, RTF und alles andere in ein bliebiges Zielformat bringen.<\/p>\n<pre>private static void ensureStartedOpenOfficeService()<br \/>{<br \/>  try<br \/>  {<br \/>    new Socket( \"127.0.0.1\", 8100 );<br \/>  }<br \/>  catch ( Exception e )<br \/>  {<br \/>    String path = \"C:\/Programme\/OpenOffice.org 2.3\/program\/\";<br \/>    ProcessBuilder processBuilder = new ProcessBuilder( path+\"soffice\", \"-headless\", \"-accept=\\\"socket,host=127.0.0.1,port=8100;urp;\\\"\", \"-nofirststartwizard\" );<br \/>    try<br \/>    {<br \/>      processBuilder.start();<br \/>    }<br \/>    catch ( IOException ioe )<br \/>    {<br \/>      throw new RuntimeException( ioe );<br \/>    }<br \/>  }<br \/>}<br \/>public static void convert( String source, String destination )<br \/>{<br \/>  ensureStartedOpenOfficeService();  <\/p><p>  OpenOfficeConnection connection = null;<br \/>  try<br \/>  {<br \/>    connection = new SocketOpenOfficeConnection( 8100 );     <br \/>    connection.connect();<br \/>    DocumentConverter converter = new OpenOfficeDocumentConverter( connection );<br \/>    File inputFile = new File( source );<br \/>    File outputFile = new File( destination );<br \/>    converter.convert( inputFile, outputFile );<br \/>  }<br \/>  catch ( ConnectException e )<br \/>  {<br \/>    throw new RuntimeException( e );<br \/>  }<br \/>  finally<br \/>  {<br \/>    connection.disconnect();<br \/>  }<br \/>}<\/pre>\n<p>F\u00fcr meine Rechnungen also: <\/p>\n<pre>String destination    = \"S:\/Private\/Traida\/Bills\/bill1\";<br \/>String destinationOds = destination + \".ods\";<br \/>String destinationPdf = destination + \".pdf\";<br \/>convert( destinationOds, destinationPdf );  <\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Der zweite Schritt meiner Rechnungserstellung ist die Konvertierung in PDF. Auch dazu gibt es eine prima Bibliothek: http:\/\/www.artofsolving.com\/opensource\/jodconverter. (Einziger Nachteil: viele Jars.) Damit kann man Word, PowerPoint, RTF und alles andere in ein bliebiges Zielformat bringen. private static void ensureStartedOpenOfficeService(){ try { new Socket( &#8222;127.0.0.1&#8220;, 8100 ); } catch ( Exception e ) { String [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","_links_to":"","_links_to_target":""},"categories":[4],"tags":[],"class_list":["post-105","post","type-post","status-publish","format-standard","hentry","category-open-source"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/105","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/comments?post=105"}],"version-history":[{"count":0,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/posts\/105\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/media?parent=105"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/categories?post=105"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tutego.de\/blog\/javainsel\/wp-json\/wp\/v2\/tags?post=105"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}