Diese Seite beschreibt das Gadget Pano360, mit dem sich 360-Grad-Panoramen
(Kugelpanoramen) direkt in Wiki-Seiten einbetten lassen. Die Panoramen lassen sich
mit Maus oder Finger drehen, neigen und zoomen und können im Vollbild angezeigt
werden.
Technische Grundlage ist die freie JavaScript-Bibliothek Pannellum (MIT-Lizenz), die lokal auf dem Server gehostet wird. Es werden keine externen Dienste eingebunden.
Schnellstart
Ein hochgeladenes Panoramabild einbinden:
<div class="pano360" data-src="Datei:Beispiel Panorama.jpg"> 360°-Panorama (benötigt JavaScript) </div>
Der Text im <div> ist ein Ersatztext, der nur
angezeigt wird, falls JavaScript deaktiviert ist oder das Gadget nicht lädt.
Voraussetzungen an das Bild
Das Gadget zeigt equirektangulare Panoramen an – das Standardformat jeder 360°-Kamera und der meisten Panorama-Apps. Zwei Dinge müssen stimmen:
- Seitenverhältnis exakt 2:1 (z.B. 8192 × 4096 oder 4096 × 2048 Pixel).
Bilder mit anderem Verhältnis werden verzerrt dargestellt.
- Breite nicht zu groß wählen. Für zuverlässige Darstellung auch auf
Tablets und Smartphones sollte die Bildbreite möglichst bei ca. 4096 Pixeln liegen. Größere Bilder (8192 px) funktionieren auf den meisten Geräten, können auf älteren Mobilgeräten aber schwarz bleiben (Grenze der Grafik-Textur).
Zum Hochladen Spezial:Hochladen verwenden und auf der Dateibeschreibungsseite Quelle und Lizenz angeben. Sehr große Dateien scheitern eventuell an den Upload-Grenzen des Servers – dann Bild verkleinern.
Alle Optionen (data-Attribute)
Gesteuert wird das Panorama über data--Attribute am
<div>:
| Attribut | Pflicht | Bedeutung |
|---|---|---|
data-src |
ja | Bildquelle. Entweder ein Wiki-Dateiname (Datei:X.jpg, File:X.jpg oder X.jpg) oder eine vollständige URL bzw. ein absoluter Pfad.
|
data-height |
nein | Höhe der Anzeige in Pixeln. Standard: 400 (per CSS). |
data-yaw |
nein | Horizontale Start-Blickrichtung in Grad (−180 bis 180). |
data-pitch |
nein | Vertikale Start-Blickrichtung in Grad (−90 bis 90). |
data-hfov |
nein | Start-Blickwinkel (Zoom) in Grad. Kleiner = näher herangezoomt. Standard 100. |
data-autorotate |
nein | Automatische Drehung in Grad pro Sekunde, z.B. 2. Negativer Wert dreht andersherum.
|
data-preview |
nein | Vorschaubild, das während des Ladens angezeigt wird (Dateiname oder URL). |
data-title |
nein | Titel, der im Viewer eingeblendet wird. |
data-author |
nein | Urheber, der im Viewer eingeblendet wird. |
data-compass |
nein | 1 blendet einen Kompass ein.
|
data-north |
nein | Nordausrichtung in Grad (für den Kompass): in welche Blickrichtung Norden liegt. |
Beispiele
Mit fester Höhe, Titel und langsamer Selbstdrehung:
<div class="pano360" data-src="Datei:Gipfel Schwarzakopf.jpg"
data-height="450" data-title="Gipfel Schwarzakopf"
data-author="Max Mustermann" data-autorotate="2">
360°-Panorama
</div>
Mit definierter Startblickrichtung (Blick nach Südwesten, leicht nach unten) und Kompass:
<div class="pano360" data-src="Datei:Aussicht.jpg"
data-yaw="-135" data-pitch="-10" data-compass="1" data-north="0">
360°-Panorama
</div>
Bild von einer externen Adresse statt aus dem Wiki:
<div class="pano360" data-src="https://example.org/pano/berg.jpg"> 360°-Panorama </div>
Installation
Das Gadget besteht aus vier Bausteinen. Nötig sind FTP-Zugang zum Server und Administrationsrechte im Wiki.
1. Pannellum-Bibliothek hochladen
Das aktuelle Release Pannellum 2.5.6 von
GitHub herunterladen und aus dem
Ordner build/ zwei Dateien per FTP ablegen:
<Wiki-Wurzel>/resources/lib/pannellum/pannellum.js <Wiki-Wurzel>/resources/lib/pannellum/pannellum.css
<Wiki-Wurzel> ist das Verzeichnis, in dem auch index.php
liegt. Zur Kontrolle die JS-Datei direkt im Browser aufrufen – es muss
JavaScript-Quelltext erscheinen, kein 404-Fehler.
2. Gadget-Code anlegen
Den JavaScript-Code auf der Seite MediaWiki:Gadget-Pano360.js
speichern (der vollständige, aktuelle Code liegt dort) und die zugehörige
Gestaltung auf MediaWiki:Gadget-Pano360.css:
.pano360 {
width: 100%;
height: 400px; /* Standardhöhe, per data-height überschreibbar */
margin: 0.5em 0;
border: 1px solid #a2a9b1;
border-radius: 2px;
background: #f8f9fa;
box-sizing: border-box;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: #54595d;
overflow: hidden;
}
3. Gadget registrieren
In MediaWiki:Gadgets-definition diese Zeile ergänzen:
* Pano360[ResourceLoader|default|dependencies=mediawiki.util]|Pano360.js|Pano360.css
default bedeutet: für alle Leserinnen und Leser aktiv, auch ohne
Anmeldung. Die Abhängigkeit mediawiki.util braucht das Gadget zum
Auflösen der Bild-Adressen.
4. Panoramabild hochladen
Ein equirektangulares Bild (Seitenverhältnis 2:1) über Spezial:Hochladen
hochladen. Danach wie oben per <div class="pano360">
einbinden.
So funktioniert es
Beim Laden einer Seite sucht das Gadget nach Elementen mit der Klasse
pano360. Findet es welche, lädt es Pannellum genau einmal aus
/resources/lib/pannellum/ nach und startet für jeden Container einen
Viewer. Die Bildquelle wird so aufgelöst: Beginnt data-src mit
http oder /, wird sie unverändert als Adresse verwendet;
andernfalls gilt der Wert als Wiki-Dateiname, der über
Spezial:Weiterleitung/file/… zur Originaldatei führt. Die Panoramen
laden sofort beim Seitenaufruf.
Auf anderen Wikis nachbauen
Das Gadget hat außer Pannellum keine weiteren Abhängigkeiten (kein Three.js o.ä.), was den Nachbau einfach macht. Nötig ist:
- Die Erweiterung Gadgets muss aktiviert sein.
- Die zwei Pannellum-Dateien nach
/resources/lib/pannellum/hochladen (Schritt 1). Liegt das Ziel-Wiki in einem Unterverzeichnis, ist das kein Problem – das Gadget setzt den Pfad automatisch relativ zur jeweiligen Installation zusammen. - Den Inhalt von
MediaWiki:Gadget-Pano360.jsundMediaWiki:Gadget-Pano360.cssin die gleichnamigen Seiten des Ziel-Wikis kopieren. - Die Registrierungszeile in
MediaWiki:Gadgets-definitioneintragen (Schritt 3).
Ein anderer Speicherort für die Bibliothek lässt sich im Gadget-Code oben in der
Variablen LIB_PATH anpassen.
Fehlersuche
Wird kein Panorama angezeigt, hilft die Browser-Konsole (in Firefox: Menü → Weitere Werkzeuge → Web-Entwicklerwerkzeuge → Konsole) und diese Reihenfolge:
- Lädt die Bibliothek? Die Adresse
…/resources/lib/pannellum/pannellum.jsdirekt im Browser öffnen. Erscheint ein 404, liegt die Datei am falschen Ort. - Lädt das Bild? Die Adresse
…/index.php?title=Special:Redirect/file/<Dateiname>direkt öffnen. Erscheint das Bild nicht, stimmt der Dateiname indata-srcnicht. - Bild verzerrt? Das Bild ist nicht im Verhältnis 2:1.
- Auf dem Handy schwarz, am PC nicht? Das Bild ist für das Gerät zu groß – Breite reduzieren (siehe „Voraussetzungen an das Bild").
- Meldung „Viewer konnte nicht geladen werden"? Die Bibliothek wurde nicht gefunden – Pfad aus Schritt 1 prüfen.
Lizenz
Die Bibliothek Pannellum steht unter der MIT-Lizenz. Für die eingebundenen Panoramabilder gilt jeweils die auf ihrer Dateibeschreibungsseite angegebene Lizenz.