Не удается получить контейнер для XShape в LibreOffice

Я борюсь с некоторым кодом, используя LibreOffice 7.1.0на Windows 10добавлять изображения из папки в отдельные слайды в Impress. Я искал здесь и документацию OpenOffice . Этот вызов постоянно терпит неудачу (null): xMultiServiceFactory.createInstance("com.sun.star.drawing.BitmapTable");а я не могу понять почему? я пытался использовать XMultiComponentFactoryтоже, но не повезло. Имеет ли это какое-то отношение к Slide Layout, но, несмотря на пустой тип, я могу перетащить изображение, и оно будет добавлено на слайд. К сожалению, полный код находится в ограниченной системе, поэтому у меня есть только это. Любые намеки на возможные причины были бы очень полезны.

1 ответ

Это была простая проблема: мне нужно было инициализировать xMultiServiceFactoryс xComponent. Я ранее инициализировал его с помощью xComponentContext.getServiceManager(). Я снова понимаю, вот почему изучение объектной модели очень важно. С COM может быть сложно, если только не знать, что они делают.

Другие вопросы по тегам