Image in Dialog is never preserved

Libre Office v 25.2.7.2 (X86_64) - Libre Calc

I created an About dialog in my module. In it I have an Image Control. Since I often move around images during reorganization. I want to preserve it when I deliver the spreadsheet (Calc) to another person.

In the Image Control properties I selected Graphics then chose the image but before accepting I UNCHECKED the “Link” checkbox. In theory this should embed the image but that does not appear to work.

Initialy the image appears in the Designer and I have saved all my work. Then I click the spreadsheet button that displays the custom dialog and… the image is NOT there.

I checked again the control properties and as expected, rather than showing the image path on my filesystem, it shows some internal image name. However, it does not find it.

I exited Libre Office and reloaded hoping it was some cache glitch or something. But the problem persists. The difference is that when I then go to Designer mode the image is no longer showing in the designer, it only shows the internal image name in the Image Control properties.

Lifehack: Add the same image used in the dialog control to a document sheet (possibly hidden).
See attached document.
LibreOfficeImageControl.ods (44.0 KB)

1 Like

Possibly an unfortunate side effect of an API change made a couple of years ago to the GraphicURL interface:

@sokol92 The embedded image is there in your document, but the Dialog’s image control has no properties set. How did you tell the image control to use THAT image? That is what I want to know.

That “feature” appears to be broken, it creates an internal filename but that is somehow lost and is never effective. Looks like they never tested it because if you uncheck “Use Link” it doesn’t really embed. And if you use the usual file on the filesystem, it is VERY susceptible to breaking the dialog if the image is renamed, moved or the Calc sheet is moved to another directory without the corresponding image.
Looks like a bug to me.

Ola @lordofscripts , este problema é antigo, a solução é inserir a imagem, também em uma planilha, dimensione a imagem no tamanho que esta em uso, para não sobrecarregar o arquivo.


Hi @lordofscripts, this is an old problem. The solution is to insert the image into a spreadsheet, resizing it to the size currently in use, so as not to overload the file.

2nd time it is mentioned, but how do you specify in the image control to use THAT image in a sheet? I downloaded the “example” but the Graphics field of the image control is empty.