Load files into Writer only?
Piet van Oostrum
piet at vanoostrum.org
Wed Apr 1 04:43:24 PDT 2015
Jens Tröger wrote:
> Hi,
>
> As a follow-up to this thread, Piet (in a different thread: "Re: How
> many degrees of headlessness do we need? [and LibreOffice crash]")
> posted this snipped of code to open a Writer document only:
>
> ------------------------------------------------------------------------
> textdoc = ServiceManager.createInstance("com.sun.star.text.TextDocument")
>
> loadURL = systemPathToFileUrl(realpath("test.odt"))
> inProps = (PropertyValue("URL", -1, loadURL, 0), PropertyValue("FilterName", -1, "writer8", 0))
> textdoc.load(inProps)
>
> print(textdoc.Text.String)
>
> textdoc.close(True)
> ------------------------------------------------------------------------
>
> While I couldn't use this due to a crash of createInstance(), it looks
> to me as if this code would be an alternative to what we've discussed in
> this thread. I assume that loading, say, a Calc or an image would fail
> here?
>
> Cheers,
> Jens
>
That is what I would expect. However, I tried it, and when I open an Excell sheet (.xls) or a PNG, it gives an error message, but when I use a .ods file, it just hangs (presumably in the load). And it won't be killed by ctrl-C. This probably should be considered a bug.
When I then kill the LO process, the Python program gives this error message:
SystemError: Couldn't instantiate python representation of structered UNO type com.sun.star.lang.DisposedException
--
Piet van Oostrum <piet at vanoostrum.org>
WWW: http://pietvanoostrum.com/
PGP key: [8DAE142BE17999C4]
More information about the LibreOffice
mailing list