how does a macro step through pages in an Impress doc?

I can obtain an object consisting of all pages, like this:

aDoc = ThisComponent

aSlideList = aDoc.getDrawPages()

I would like to do something akin to this:

While [something]

aSlide = [somethingelse]

Rem process the page here


an hour or so of hunting has turned up zero similar examples.

please fill in the blanks.

Sorry, retracted answer as document was somewhat outdated and may have done more harm than good.

Your general idea was good (thank you), and that it is not the most up to date document should not be an insurmountable problem.

I will poke away at the “Set Transition Effects to RANDOM” example (starts Page 591) for a while as an iterating-through-the-document model, and see if that gets me far enough.

What about

allSlides = ThisComponent.DrawPages
uSlides = allSlides.Count - 1
For j = 0 To uSlides 
  j_slide = allSlides(j)
  REM Do something
Next j

You can’t use the index (which also is the read-only j_slide.Number) as a unique identifier because it will change as soon as you re-arrange the slides. Do you need persistent identifcation?

no, a simple sequence will work OK.

I fudged together two other macros, each of which does part of what I wish, and together have the desired result… except that exporting a page to an image (even singly, by hand) often results in significant amounts of lettering displayed in white rather than the colour visible in Impress, and it seems to be partially dependent upon which specific font I am using.

loDoc = thisComponent

(insert some filter processing here)

loImpressPages = loDoc.getDrawPages

For i = 0 To loImpressPages.Count - 1

loSlide = loImpressPages.getByIndex(i)

*(insert exporting of each slide here)*

Next i

as a temporary work-around, I can export the entire presentation as a ‘direct’ PDF, then issue this command:

pdftoppm -png -r 300 -scale-to 4096 exported-presentation.pdf x/name-of-presentation

this results in a pile of 4096x2304 PNG images which will more-or-less achieve the desired result.

I’m lost now. Simply don’t know what you actually want.
If your question now is “How can I export a single slide of an impress presentation to… (image? pdf?) …using a proper file name per slide?” you should post it as a new one. It surely doesn’t fit under the current question.

the single-slide export was a manual test only. it revealed that the export-as-image filter (in this version of LibreOffice, anyhow) is flawed (which also impacts the plugin to do the same), so a different method is required.

I want to export a bunch of slides as images (preferably PNG) at a specific resolution.

having done that, I can run a shell script over said images to produce an Imagination config file with specific timings between images, which then becomes a video. then use Audacity to produce a matching narration audio track.

It’s annoying to have used (a lot of) time trying to answer a question with next to no relation to what the questioner actuall wants/needs. There may occur a suspicion he doesn’t know himself.
Please post a new thoroughly considered question, and don’t claim. flaws “in this version” without telling what “this” is supposed to mean - and all the mess alike.
(Yoiu are disappointed about “…an hour or so of hunting has turned up zero similar examples.” Try to “hunt” less, and to be more precise about your issue.)