Skip to content

ODP: hidden slides are exported as normal content #4765

Closed

Description

@ankit2235

Bug

A slide that is hidden in an OpenDocument presentation is converted like a normal slide. Its title and text go into the body of the document and into the Markdown export, although the slide is not presented.

ODF marks a hidden slide on the slide's style: <style:drawing-page-properties presentation:visibility="hidden"/>. The ODP slide loop in OdpDocumentBackend.convert does not read it. The same backend already sends hidden ODS sheets (table:display="false") to ContentLayer.INVISIBLE, and #4647 / #4733 did the same for hidden PowerPoint slides and shapes.

Steps to reproduce

The attached Test_ODP.odp was exported from Google Slides (File → Download → ODP Document) with slide 2 set to Skip slide. In the file, slide 2 uses style dp3, which has presentation:visibility="hidden". Test_ODP.odp

from docling.document_converter import DocumentConverter

doc = DocumentConverter().convert("Test_ODP.odp").document
print(doc.export_to_markdown())

Actual:

# Introduction

Overview and Key Objectives

# Key Insights

Main Findings and Takeaways

Expected: the hidden slide 2 ("Key Insights") is not in the default export.

Proposed behavior

Put the content of a hidden slide in ContentLayer.INVISIBLE, the same as hidden ODS sheets and hidden PowerPoint slides. I'd like to send a PR.

Docling version

main @ 21588f5

Python version

3.12.14

Activity

  1. ankit2235 commented on Oct 11, 2026

    @ankit2235
    ContributorAuthor

    I opened #4767 for this: the content of a hidden ODP slide now goes to ContentLayer.INVISIBLE, the same as hidden ODS sheets and hidden PowerPoint slides. With the attached Test_ODP.odp, the Markdown export now contains only slide 1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions