Das KUKANILEA Präsentations-Studio ist eine eigenständige Anwendung, die aus vier
freien, MIT-lizenzierten Bibliotheken zusammengesetzt ist: Fabric.js für den
Folien-Editor (Canvas-Objektmodell: Textboxen, Formen, Bilder, Positionierung), reveal.js
für den Präsentationsmodus (Vollbild-Navigation), PptxGenJS für den
PPTX-Export sowie pdf-lib für den PDF-Export. Eigenes Seiten-Layout/Branding ("KUKANILEA Präsentations-Studio", keine
Bibliotheks- oder Produktnamen der drei Upstream-Projekte im Produktnamen), eigene
Toolbar/Aktionsleiste, eigene Speicher-/Exportlogik. Es werden ausschließlich lokal
gebündelte JavaScript-/CSS-Ressourcen ausgeliefert; es findet kein Laufzeit-Nachladen von
Schriftarten, Icons oder sonstigen Assets von einer externen CDN statt
(Local-First-Policy). Hochgeladene Bilder werden ausschließlich lokal im Browser
verarbeitet, nicht an einen Server übertragen. Das Autosave-Feature speichert Entwürfe
ausschließlich lokal in localStorage des Browsers, ohne
Cloud-Synchronisation.
fabric)assets/lib/reveal/
(reveal.js, reveal.css, theme/white.css). Jede
Folie wird beim Start des Präsentationsmodus offscreen aus dem Fabric.js-Canvas als PNG
gerendert und als Bild in ein reveal.js-<section> eingebettet — reveal.js
übernimmt ausschließlich Navigation/Übergänge/Vollbild, keine Interaktionslogik der
Folien selbst läuft im Präsentationsmodus (robusterer Ansatz als "live" DOM-Folien, siehe
Code-Kommentar in present.js). Aus dem Original-Theme wurden eingebettete
Base64-Schriftart-Daten (@font-face mit data:-URI) entfernt, da
die strikte Content-Security-Policy dieser Seite (font-src 'self', bewusst
ohne data:) solche eingebetteten Schriftarten ohnehin blockieren würde — die
Präsentations-Oberfläche nutzt stattdessen denselben System-Font-Stack wie der Rest der
Anwendung, keine funktionale Einschränkung.pptxgenjs)Bekannte Export-Grenzen (ehrlich dokumentiert): Der PPTX-Export bildet Textboxen, Rechtecke, Ellipsen und Bilder aus jeder Folie 1:1 auf PptxGenJS-Elemente ab (Position, Größe, Drehung, Farbe, Schriftgröße/-schnitt). Farbverläufe, Schatten und gruppierte Objekte werden auf eine Volltonfarbe reduziert bzw. übersprungen. Schriftarten werden per Namen an PowerPoint übergeben (kein Font-Embedding in der Datei) — ist eine Schriftart auf dem öffnenden Rechner nicht installiert, wählt PowerPoint automatisch eine Ersatzschrift.
assets/lib/pdf-lib/)Bekannte PDF-Grenzen (ehrlich dokumentiert): Der PDF-Export zeichnet
jede Folie als echtes Text-PDF: Textboxen werden als Textobjekte geschrieben (durchsuchbar,
kopierbar, ohne Qualitätsverlust skalierbar), Rechtecke, Ellipsen und Bilder als
Vektorformen beziehungsweise eingebettete Bilder. Die Seite misst genau 720 × 405 pt
(25,4 × 14,3 cm, 16:9) — dasselbe Format wie die Folie in der Vorschau, eine Seite je Folie.
Bis zum 2026-09-02 war dieser Export ein Rasterdruck über den Browser-Druckdialog; die
Umstellung ist der Grund für diese Bibliothek. Gesetzt wird mit den PDF-Standardschriften
(Helvetica, auch fett und kursiv), nicht mit der Bildschirmschrift — Zeilenumbrüche
übernimmt der Export unverändert aus dem Editor, die Zeichenbreiten können sich minimal
unterscheiden. Zeichen außerhalb der WinAnsi-Kodierung (etwa Emoji oder kyrillische
Schrift) werden durch ? ersetzt; die Statuszeile nennt die Anzahl.
Eingefügte Bilder werden vor dem Einbetten einmal über ein Canvas neu kodiert (JPEG
bleibt JPEG, alles andere wird PNG) und dabei auf höchstens 3000 Pixel Kantenlänge
begrenzt — das entspricht 300 dpi im Druck und hält die Dateigröße im Rahmen. Der
Umweg ist bewusst: der PNG-Dekoder von pdf-lib läuft bei einem beschädigten Datenstrom
in eine Endlosschleife, und eine halb heruntergeladene Bilddatei würde den Browsertab
sonst dauerhaft einfrieren. Der Druckweg (Schaltfläche „Drucken") rendert die Folien
dagegen als Bild — er ist für Papier gedacht, nicht für eine Datei.
Wird geladen …
Wird geladen …
Wird geladen …
Wird geladen …