PowerPoint to SCORM: what survives the conversion?

LMSable's PowerPoint to SCORM converter does not accept .ppt or .pptx files. First export the presentation from PowerPoint or Google Slides as PDF, then select that .pdf file in the converter.

The converter preserves the final appearance of each PDF page instead of recreating PowerPoint's behavior in a browser. Rendering happens locally, after which the tool adds a web player and SCORM tracking around slide images sent to LMSable. Your original PowerPoint file and PDF remain on your machine.

This approach requires no PowerPoint installation on the LMSable server. Anything the rendered pages do not carry cannot become interactive SCORM behavior later.

The conversion path determines the result

LMSable uses this path:

Source presentation
        |
        | Export as PDF before opening LMSable
        v
PDF selected at /ppt and rendered in your browser
        |
        | Convert each page to WebP
        v
SCORM 1.2 player, manifest and tracking

Microsoft says that saving a presentation as PDF freezes its formatting and layout. That sentence is the best description of both the strength and the limitation of this workflow.

What survives, what changes and what is lost

PowerPoint element Result in the SCORM package Why
Slide order Kept PDF pages retain their exported order
Final visual layout Kept as rendered pixels Each PDF page becomes a WebP slide image
Fonts Kept in appearance Glyphs are rendered into the slide image, so learners do not need the font
Images, charts and shapes Kept in appearance They become part of the rendered page
Aspect ratio Kept from the PDF The player uses the detected page ratio
Hidden slides Kept only if included in the PDF export PowerPoint's PDF options control whether they are published
Build animations Flattened to the exported state PDF has one static page, not a timeline of object states
Slide transitions Not carried from PowerPoint The SCORM player may add its own transition, but it is not the original effect
Embedded audio and video Lost A rendered page cannot reproduce an embedded media stream
Speaker notes Lost from the learner view Standard slide export does not place notes on the slide page
Hyperlinks Lost Page rasterization removes clickable targets, even when the PDF contains working links
Selectable text and semantic reading order Lost Text becomes pixels in the WebP image
PowerPoint macros and controls Lost They are not browser content and PDF does not execute them

Several of these losses matter for accessibility. A slide can look identical and still lose searchable text, link targets, alternative text and reading order. If those properties are required, rebuild the important content as HTML in a course authoring tool instead of treating the slide image as the final lesson.

What the SCORM layer adds

The converter does more than zip a set of images. It adds:

  • an imsmanifest.xml file that identifies the package as SCORM 1.2;
  • a browser-based player with previous and next controls;
  • a progress indicator;
  • bookmarking so a learner can resume;
  • a completion signal sent to the LMS;
  • session-time reporting;
  • an optional fade between slides.

These features belong to the player, not to PowerPoint. They work even though the slide itself is static.

A practical conversion workflow

1. Prepare the deck

Remove presenter-only slides and check that every required instruction appears on the slide itself. If a step-by-step reveal matters, duplicate the slide and show one more step on each copy: that survives any conversion route. Split a long deck into shorter modules when learners are likely to stop and resume, which also gives the LMS more meaningful completion records. Speaker notes will not be visible. Move critical video into a separate LMS activity or an HTML lesson. A link placed on the rasterized slide will not be clickable.

Run PowerPoint's accessibility checker before export. It cannot preserve semantic structure after rasterization, but it can still expose low contrast, missing labels and poor reading order that indicate the visual design needs work.

2. Export slides, not notes pages or handouts

On Windows, choose File > Export > Create PDF/XPS. On macOS, choose File > Save As or File > Export, then select PDF. Publish the slide range you want learners to see.

Use the standard or high-quality option when small text and diagrams must remain readable. Minimum-size PDF settings can make detailed screenshots blurry after the second rendering step.

3. Convert the PDF

Open the tool and select or drop the exported .pdf file. The converter rejects .ppt and .pptx files. Review the detected slide count and aspect ratio; LMSable then receives the browser-rendered slide images and packages them into a SCORM 1.2 ZIP.

Preview wide diagrams, footer text and portrait slides before download. A technically valid package can still be unreadable at the LMS player's available width.

4. Test the ZIP as a learner

Upload the package to a test SCORM activity. Do not unzip it. Verify:

  1. The first and last slide match the source deck.
  2. Previous and next controls preserve the correct order.
  3. Closing halfway and reopening resumes at the expected slide.
  4. Reaching the final slide changes the attempt to completed.
  5. The layout works at desktop and narrow widths.
  6. The browser console shows no missing slide images.

If appearance is correct but completion is missing, inspect the SCORM runtime log rather than re-exporting the PDF. The visual layer and reporting layer are separate. For the wider release script, including resume evidence and a neutral-player run, see how to test a SCORM package before publishing it.

Why an upload fails, or works and tracks nothing

  • "Invalid package" right after upload. Someone unzipped the package to look inside and then zipped the folder instead of its contents. Now imsmanifest.xml sits one level down, and the LMS expects it at the root of the ZIP. Select the files inside the folder and zip those.
  • The learner reached the last slide, but the LMS says incomplete. The package never set the completion status, did not end the session cleanly, or lost data when the learner closed the window. In SCORM 1.2 a simple course reports completion through cmi.core.lesson_status, and a good player saves progress during the session instead of relying on a clean close.
  • The course does not resume where the learner stopped. Bookmarking is not automatic: the player has to save the position, for example in cmi.core.lesson_location, and read it again on relaunch. A package without it is still valid SCORM, just frustrating on phones and tablets.
  • The package does not start, or never reports anything. Check for a standards mismatch, such as a SCORM 2004 package in an activity configured for SCORM 1.2, and for the launch window: some platforms open SCORM in a new window or pop-up, and browser settings can stop the course from finding the LMS API.

Before blaming the file, run it in a neutral player such as SCORM Cloud, which shows how the package talks to the SCORM API.

When a PDF-based converter is the right choice

Use it when the presentation is primarily visual, the final slide state contains the full message and you need a tracked package quickly. It is also useful when the author works on macOS or Linux and cannot rely on a Windows-only PowerPoint plug-in.

Choose a PowerPoint-native authoring tool when individual animation steps, triggers, embedded media, narrated timings or clickable objects are part of the instruction. Another option is to keep the slides static and add quizzes or HTML interactions between them in Course Builder, the workflow described in the guide to creating a SCORM course with ChatGPT.

After saving the presentation as PDF, convert the exported file to SCORM 1.2 and test the downloaded ZIP in the LMS that will deliver it.

Reference documentation