> Hi, > Not for the moment. You can only replace an image anchored in a cell > with MutableCell.setImage() > > Sylvain, > ILM Informatique
Thanks for your reply. I found a solution for my specific problem anyway. Will post it here, 'cause it might help someone else, who wants to insert/replace images in ODT: In your template, you have to insert an existing image as a placeholder. Position and format it the way you want it to appear in the final document. Important: Name the image. This is done by selecting "Picture" from the image's context menu, then choosing "Options" and setting the field "Name". final File outFile = new File("output.odt"); final String bcfile = "image.png"; final JavaScriptFileTemplate template = new JavaScriptFileTemplate("template.odt"); final ODSingleXMLDocument ddoc = template.createDocument(); ddoc.getDescendantByName("draw:frame", "pC_LSBarcode").setAttribute("href", "file:///" + bcfile, Namespace.getNamespace("xlink", "http://www.w3.org/1999/xlink")); // adjust the String "pC-LSBarcode" to the name of the image you have set in the template ddoc.saveAs(outFile); Note, that the image does _not_ get embedded into the output-file (only a reference/link gets embedded); so you have to make sure, the image-file is accessible under the url you've set in the code. In fact, these files are not really "portable" (which is ok in my case, 'cause I render PDFs from the files afterwards, where the images get embedded; the odt is only kind of temp-file in my scenario). Maybe you could encapsulate that code (or a similar solution) in a method like JavaScriptFileTemplate.replaceImage in one of the following releases? Cheers, Marc