Bug 137007 - Enhancement: Please integrate or replicate the functionality of the "Save As Images" extension directly into draw (with bug fixes)
Summary: Enhancement: Please integrate or replicate the functionality of the "Save As ...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Extensions (show other bugs)
Version:
(earliest affected)
7.1.0.0.alpha0+
Hardware: x86-64 (AMD64) Windows (All)
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-09-24 18:43 UTC by xordevoreaux
Modified: 2021-07-08 12:37 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description xordevoreaux 2020-09-24 18:43:27 UTC
Description:
This enhancement: 
https://extensions.libreoffice.org/en/extensions/show/export-as-images

Really helps as a big time saver. It exports all slides in an LO Draw document all at once into various graphical formats, and I can determine the resolution of the exports independently of the draw document's dimensions.

I make images that I then wrap around 3-D objects, and this extension, combined with the slide implementation and vector capabilities in Draw, makes updates/output a heck of a lot faster thann programs like PS, Paint.net, or other raster programs that only support building one image per file. 

Exporting 40 slides all at once rather than one at a time is a massive time savings.

The only problem with the "save as images" extension, as useful as it is: it cannot support transparency with its PNG output function. No matter how many different ways I set up an LO Draw document to have a transparent background, Export As Images produces a white background, forcing me to export to PNG each slide manually to get the transparency.

This problem is not related to any of the transparency issues I've ever logged against Skia. This was happening before Skia was ever around.

The creator of this extension is long gone. I left a message on the extension's web page back when 6.4.4. was out if he'd update it. No reply.

I'm therefore raising my hand to say the functionality of this extension is really good, minus this one really big flaw. I can use Save As Images for slides with no transparency backgrounds, which I often do, but it's useless if the backgrounds have any transparency requirements at all.

It also relies on old code libraries, the references to which sometimes break.

It would be awesome if this extension, with the bug fix for recognizing transparent backgrounds, were integrated directly into Draw.

Steps to Reproduce:
1. In Windows LO Draw, add the extension: https://extensions.libreoffice.org/en/extensions/show/export-as-images

2. Create an LO draw document with multiple slides.
3. Uses the Save As Images to export all slides at once.

Actual Results:
Okay as long as the background isn't transparent.

Expected Results:
PNG exports should recognize transparent backgrounds.


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 7.1.0.0.alpha0+ (x64)
Build ID: f08ddf3d3df0ef12fef36e96ffe6f5b9a7fda9e3
CPU threads: 8; OS: Windows 10.0 Build 20215; UI render: Skia/Vulkan; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: threaded
Comment 1 Heiko Tietze 2020-09-25 08:31:11 UTC
I would always prefer extensions for enhanced functionality. This keeps the UI clean and the code easy to maintain while extensions also can be developed more agile. In this case it might be just a single line of code that needs to be added. So I tried to contact the author and hope he will update his great extension. Will keep an eye on it.
Comment 2 Telesto 2020-09-25 12:00:21 UTC
(In reply to Heiko Tietze from comment #1)
> I would always prefer extensions for enhanced functionality. This keeps the
> UI clean and the code easy to maintain while extensions also can be
> developed more agile. In this case it might be just a single line of code
> that needs to be added. So I tried to contact the author and hope he will
> update his great extension. Will keep an eye on it.

I would call this a valid request to be implemented *inside* LibreOffice. An extension shouldn't be really needed for this kind of thing. And code-wise this shouldn't probably only a few lines. And it can be automatically tested, IMHO.

Off topic: A testing framework for 'export feature' really needed; IMHO. I assume mwtjunkmail would agree here. 

And export could be simple checkbox similar to 'export selection'. So export page selection..

While looking at this, I also discovered an ambiguity here.

1. Create a draw document with 4 pages
2. Press CTRL+A in page pane
4. File -> Export -> Pick a file name and check Selection. Press OK in compress settings.. error.. (naturally as 'selection' is meant to be object selection on single page.. but that's not obvious; if you want to export multiple pages)

Another topic: the extension side needs a 'download counter'. Which makes it more obvious what might should be implemented inside LibreOffice. Especially if we are talking about basic extensions. This is not worth an extension. This simply workaround UX or tired of waiting until it gets implemented :-). 

FWIW: for me in person I don't care (not using Export). However I do understand why it's requested. And why it should be implemented inside LibreOffice.
Comment 3 Telesto 2020-09-25 12:02:56 UTC
@Regina
You're mostly taking a special interest in Draw/Impress. So what do you think. 

Exporting multiple pages to separate files. Should this be done by extension or as build in feature?
Comment 4 Roman Kuznetsov 2020-09-25 13:33:28 UTC
it should be as an extension. Main software should just save one file to one from some formats for one time
Comment 5 Telesto 2020-09-25 13:50:30 UTC
(In reply to Roman Kuznetsov from comment #4)
> it should be as an extension. Main software should just save one file to one
> from some formats for one time

You have plenty of sheets/pages in Draw/Impress and people tend sometimes to export those at once..

If Draw would be a single page tool, I would agree. I personally find it a silly limitation. And the extension as 'a workaround'. 

I'm even inclined to select multi pages/sheet and go the File -> export (expected those pages being exported) (so a single file).. [and I think there is a report somewhere]

Hmm.. this appears to be even an duplicate: bug 67614

So if the assessment is this shouldn't be implemented.. bug 67614 should be closed too.
Comment 6 V Stuart Foote 2020-09-25 15:30:04 UTC
The basic macro in the .OXT extension looks to push an array of slides/pages as multiple GraphicExportFilter calls. Implementing the multi-page/multi-slid export option internally would be cleaner than an unmaintained Basic Macro -- devs could keep an eye on it, and this is a duplicate of bug 67614

As to missing transparency in current extension, IIUC the GraphicExportFilter has legacy VCL PNG handling of just RGB 3tupple, missing opacity--not using the work done for bug 96922.  

Does the GraphicExportFilter for PNG export need to be tweaked to produce 32bit RGBA when needed? @Armin?
Comment 7 xordevoreaux 2020-11-04 19:53:23 UTC
Right now, I have a need for output that produces a 528x738 pixel image, which, doubled, fits nicely into a 1056x738 image, and which tripled fits nicely in a 1584x738 pixel image, for single, double, and tri-fold brochures, and that's what the destination program wants.

I can fiddle, to an extent, with using the inches (the measurement system could stand to go out another decimal place, but precision is another conversation), but what makes Save As Images useful, besides the multi-slide export, is that I can force the dimensions to be precisely what I want.

There is no pixel-unit measurement in LO, and I've gotten clap back here on the bug tracker that there doesn't need to be, but it would be useful.

So.

Question.  

Would a multi-slide export function built into LO Draw permit me to enter the pixel dimensions I need, or am I looking at redesigning an ungodly number of brochures to fit a non-pixel measurement system?
Comment 8 xordevoreaux 2020-11-04 20:00:08 UTC
And, either way, I would be willing to torpedo the brochures and start over in exchange for a built-in multi-slide export function that supports 32-bit R/G/B/A that exports to PNG. Not like I haven't re-designed the brochures before.
Comment 9 Heiko Tietze 2020-11-05 08:33:52 UTC
Serhii replied that he want to look into it. Well, almost a month ago without anything happened.
Comment 10 Serhiy 2020-11-21 18:05:32 UTC
(In reply to Heiko Tietze from comment #9)
> Serhii replied that he want to look into it. Well, almost a month ago
> without anything happened.

I can't enter https://extensions.libreoffice.org site. I receive the message about wrong credentials, but when I try to reset my password, the message says "Unknown username or email address".

About the transparency. As for version 1.0.0 the transparency works. The transparent figures on slide are always remain transparent, only that when the transparency setting is ON, the background gets transparent, and when the transparency setting is OFF, the background isn't transparent.
Comment 11 xordevoreaux 2020-11-22 17:04:10 UTC
(In reply to Serhiy from comment #10)
> (In reply to Heiko Tietze from comment #9)
> > Serhii replied that he want to look into it. Well, almost a month ago
> > without anything happened.
> 
> I can't enter https://extensions.libreoffice.org site. I receive the message
> about wrong credentials, but when I try to reset my password, the message
> says "Unknown username or email address".
> 
> About the transparency. As for version 1.0.0 the transparency works. The
> transparent figures on slide are always remain transparent, only that when
> the transparency setting is ON, the background gets transparent, and when
> the transparency setting is OFF, the background isn't transparent.

Um, no. See comment #6. 

Also, I've tested with both a background setting set to color and a background setting set to None. Both export to a white background. The code library your extension uses is incapable of supporting transparent backgrounds.

These settings: https://i.imgur.com/dadFkIG.png
should result in a transparent background. That does not happen with your extension.

Nor does your extension list any way to set transparency:
https://i.imgur.com/IqrZmYO.png
Comment 12 xordevoreaux 2020-11-22 17:15:05 UTC
And if you're talking about this setting here:

https://i.imgur.com/KYaU3JC.png

It always reverts to No Transparency when the background is set to None.
A background set to None means NOTHING AT ALL SHOULD RENDER for a background.
Comment 13 xordevoreaux 2021-06-19 13:27:43 UTC
Any chance this could happen soon?