SCVeamer version 1.4 prototype — 2026-10-24

This version changes the PDF backend of the public version 1.3 kit.
1. pypdf handles document structure, URI annotations and vector handout copying.
2. pypdfium2/PDFium renders pages to transparent, lossless PNG images.
3. Pillow writes PNG images embedded in the existing single-file HTML format.
4. All three bundled projects use 2560-pixel width. CLI overrides project config;
   the fallback for projects without an image_width setting remains 1920.
5. Setup, environment checks and the unverified executable recipe use the new dependencies.
6. Future off-page overlay content is excluded from alternative text.
7. Current application, documentation, player labels and HTML metadata identify version 1.4.

Lecture sources, PDFs, styles, games, controls, schedule and English localization remain.
Player JavaScript/CSS are unchanged; only product-version text in its HTML template changes.
Handouts retain source PDF vectors and fonts by copying the final overlay of each frame.
The experimental bounded image cache was not adopted.

PyMuPDF/fitz is not needed. Python 3.11+, pypdf 6.10.0, pypdfium2 5.14.0, Pillow 12.3.0.
The comparison focuses on existing-PDF conversion. The reported Windows 11 use and its limits are in VALIDATION_PUBLICATION_1_4.txt. No executable is supplied or validated.
See README_1_4_PROTOTYPE.txt, VALIDATION_1_4.txt and VALIDATION_PDFIUM.txt.
Third-party license texts are in THIRD_PARTY_NOTICES.txt and licenses/.
No new MIT license or own-code rights-holder declaration is introduced.

The change to PDF processing in version 1.4
-------------------------------------------

The early versions of SCVeamer used PyMuPDF for PDF processing to bring Beamer slides together with browser-based figures and games. We are grateful to PyMuPDF and its contributors for supporting that initial implementation.

As we considered publishing the software and making it easier to reuse, we reviewed the licenses of its dependencies and our distribution arrangements. To clarify the terms for our own code and the external libraries, and to make our publication and distribution policy easier to explain, the version 1.4 prototype changes the PDF-processing backend to pypdf, pypdfium2/PDFium, and Pillow.

The images used for ordinary slides have changed from SVG to PNG. The implementation aims to preserve slide navigation, incremental display, game integration, and the other existing presentation controls, and we have carried out comparisons. The handout PDF retains pages from the original PDF as vector content. Please consult the included validation records for differences in image quality and file size, and for the scope of the checks performed.

The selected third-party software and its license notices are recorded in THIRD_PARTY_NOTICES.txt and licenses/. The formal license notice and scope for SCVeamer's own code will be established after consultation with the relevant parties, in accordance with the policy in CREDITS.html / CREDITS.txt.

PUBLICATION DOCUMENTATION
Precautions, development/review scope, publication plans and the reported Windows 11 use have been added.
Application code, pinned dependencies, lecture sources, games and generated HTML/PDF remain byte-identical to the supplied 1.4 prototype.
See VALIDATION_PUBLICATION_1_4.txt for the documentation-revision record.
