Apache OpenOffice (AOO) Bugzilla – Issue 10553
Allow to insert Draw Document as picture instead of OLE object.
Last modified: 2017-05-20 10:03:55 UTC
I have created a diagram in draw, which I wish to insert into a writer document (linked to the file on disk and scaled to fit the graphics box in the document). Insert->Graphics->From File... does exactly what I want, apart from the fact that it does not support the native OOo file format (.sxd). The only vector based format that draw can export and writer can import is embedded postscript (.eps), but this means I have to save the file in two different formats, gives a very low quality preview on screen, and also gives problems when printing (I have to convert to PDF and print from acroread).
Reassigned to BH
Set to "NEW"
*** Issue 55956 has been marked as a duplicate of this issue. ***
*** Issue 62943 has been marked as a duplicate of this issue. ***
*** Issue 75608 has been marked as a duplicate of this issue. ***
It'a pity OOo cannot import Draw pages in Writer documents with link. Two applications from the same framework are not inter-operable ?!!! Ever set a milestone on this ?!
This is a ridiculous issue and has not been fixed for four and a half years now. I have thought I would just go ahead and fix it, but it is not quite that simple. I see that I would mostly have to work with svtools\source\filter.vcl\filter\filter.cxx, filter2.cxx and FilterConfigCache.cxx and also the accompanying headers. I see that the code makes a weak attempt at using the UNO API for accessing the filter registry, but after that it is mostly a huge string of ifs for every supported type. I could fix this issue by adding an entry for sxd and odg in each of the numerous listings. But this would still not give support for SVG and an array of formats supported by Draw. I would prefer to rewrite most of the code here to do away with the static lists and exclusively use the filter registry. This is obviously not an afternoon's work, and so I would like to discuss it first and maybe get someone to help me. I am not very familiar with this code, unfortunately I am not even sure of the requirements. I see that a large part of the per-file-format code deals with identifying the different formats based on their streams and not their extension. I am not sure that this is good practice anyway and if it can be removed then it should -- making the whole reimplementation much simpler. If it is a requirement, then could it be replaced by just trying the different filters and checking for exceptions? I have really bad feelings about all that binary hocus-pocus going on and would like to see it gone :).
cyhawk, if you want to discuss your ideas, I suggest you subscribe to the dev@sw.openoffice.org mailing list and post a message there. I don't think much attention is being paid to this issue!
*** Issue 93592 has been marked as a duplicate of this issue. ***
Do you think that it must be inserted as an image? Wouldn't an OLE object be better? An OLE object in fact is a vector graphics object, but with the additional ability to edit the content behind it an re-generate the graphic. IMHO that would be much better. This is the topic of issue 57807.
You may be right. But when graphics are inserted the user has the option of either linking or embedding them and both are important enough that I think they should be provided by the OLE insertion method too. Would this be possible? Also perhaps the different insertion methods could be unified at the UI level to avoid confusion and make it easier to learn.
Sure. Since OOo2.0 we are able to insert OLE objects as link. I don't see a problem to have this function in two different places in the UI. I think allowing to insert OLE objects in "Insert file" is justified by the number of using being irritated from not being able to insert any other files than those the application can handle directly. But we still must keep the "Insert OLE object - from file" functionality because it is common Office Suite functionality since more than 15 years now (since MS invented OLE 1.0).
I had two reasons for not inserting my drawing as an OLE object: 1) I couldn't link to a file. You've since fixed that :-) 2) The frame created in the writer document seems to be linked to a viewport associated with the drawing. I want the complete drawing to be shown, scaled to the size of the frame in the writer document, not some arbitrary part of the drawing that depends on my window size and zoom settings when I last edited the drawing. If you could fix the second point then yes, inserting an OLE object would be an acceptable alternative to inserting an image.
This is not a Writer problem, also Calc affected. Not a Linux problem, all OS affected. I doubt that this one ever will be fixed. It's a good idea from user's point of view, but a multi-pages Draw document is too far away from a handling like a .gif-smiley .... I see this one WONTFIX
Due to facts: WONTFIX. But DRAW OLE objects handling really needs improvement, when that job will have been done there will be no more need to fix this one. I have some Reoprts in the pipeline.
I see no problem at all. copy/paste should always use the 'highest' possible format to preserve as much data as possible. Inserting as OLE does that. As alternative you may - copy/paste the GraphicObjects the Diagram is made up of to Writer - convert these to metafile or bitmap first It should be possibe (not checked) - paste special as metafile/graphic - convert the inseerted metafile to metafile/graphic (context menu)