• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

PDF´s nacheinander anzeigen

TheCatalist

Neues Mitglied
Moin ihr da Draußen

Ich bin gerade dabei, einen Informationsbildschirm zu gestalten. Um diesen möglichst leihentauglich zu machen, hatte ich die Idee einfach eine PDF "Diashow" zu erstellen. Bedeutet, wenn man eine PDF in das Verzeichnis X vom Webserver legt, wird diese automatisch auf dem Bildschirm geladen (wenn sie dann an der Reihe ist). Das Grundgerüste habe ich bereits fertig und PDF´s kann ich über embed auch schon anzeigen lassen. Nur eben nicht im automatischen Wechsel. Hat da jemand eine Idee?
 
Werbung:
Ja das stimmt. So weit war ich auch schon. Allerdings habe ich keinerlei Erfahrung in Java und wollte das eher umgehen. Dazu kommt, dass auf den Websites keine automatische "Diashow" erklärt wird. Und ein Informationsbildschirm zum weiterklicken ist schon irgendwie blöd. Gibt es da echt keine HTML oder PHP Lösungen?
 
Werbung:
Ja das stimmt. So weit war ich auch schon. Allerdings habe ich keinerlei Erfahrung in Java und wollte das eher umgehen.
Java brauchst du auch nicht, JavaScript ist hier gefragt.
Dazu kommt, dass auf den Websites keine automatische "Diashow" erklärt wird. Und ein Informationsbildschirm zum weiterklicken ist schon irgendwie blöd. Gibt es da echt keine HTML oder PHP Lösungen?
HTML ist eine Auszeichnungssprache und keine Programmiersprache und PHP läuft auf dem Server, ist also längst fertig wenn die Seite im Browser ankommt - damit bleibt nur noch JavaScript als einzig sinnvolle Lösung. Was evtl. funktionieren können wäre eine Pfusch-"Lösung" mit einem meta-Element (ggf. von PHP erzeugt), wobei jeweils die Seiten ausgetauscht werden die dann jeweils eine neue PDF-Datei einbinden. Die auf der verlinkten Seite genannten Nachteile sind wohl für diesen(!) Anwendungszweck vertretbar, für wirklich sinnvoll erachte ich das aber trotzdem nicht.
 
Was evtl. funktionieren können wäre eine Pfusch-"Lösung" mit einem meta-Element (ggf. von PHP erzeugt), wobei jeweils die Seiten ausgetauscht werden die dann jeweils eine neue PDF-Datei einbinden.
Ja das hatte ich auch schon überlegt und ausprobiert. Hier ist halt leider das Problem, dass man dann bei jeder Seite eine neue PDF einbinden müsste. Außerdem kann man dann nicht einfach so neue Seiten hinzufügen. Dafür muss man dann jedes mal eine neue Seite in den loop einfügen.

Dann muss ich wohl bei Javascript weitersuchen. Hat da jemand eine nette Anleitung oder eine Website für Quereinsteiger? :^)
 
Ja das hatte ich auch schon überlegt und ausprobiert. Hier ist halt leider das Problem, dass man dann bei jeder Seite eine neue PDF einbinden müsste. Außerdem kann man dann nicht einfach so neue Seiten hinzufügen. Dafür muss man dann jedes mal eine neue Seite in den loop einfügen.
Wenn der refresh jedesmal auf das gleiche PHP-Script zeigt (mit anderen Parametern halt) sollte das schon klappen.

Dann muss ich wohl bei Javascript weitersuchen. Hat da jemand eine nette Anleitung oder eine Website für Quereinsteiger? :^)
Direkt eine Seite habe ich jetzt nicht parat, für die Grundlagen von Javascript würde ich es aber mal bei Selfhtml versuchen. So viel Magie ist an einem Script zum wechseln der PDF-Dateien jetzt auch nicht dran, du musst dir halt erstmal überlegen wie du genau vorgehen willst und das dann in Code übersetzen. Evtl. hilft es nach einem Bildwechselscript zu suchen, das Prinzip ist ja ähnlich.
 
Werbung:
Wenn der refresh jedesmal auf das gleiche PHP-Script zeigt (mit anderen Parametern halt) sollte das schon klappen.
Das ist natürlich eine Idee. Dann müsste ich nur irgendwie einen Loop basteln, wo er dann alle PDF´s aus dem Verzeichnis X ausliest und die dann nacheinander anzeigt.

Ich werde mich dahingehend mal umsehen, danke auf jedenfall schonmal für die Ratschläge!
 
Angenommen, du hast sowas hier:

HTML:
<embed src="http://example.com/the.pdf" width="500" height="375"
 type="application/pdf">

Dann wäre es wohl mit einem einfachen JavaScript getan:
Javascript:
// wie lange soll ein pdf angezeigt werden (in Millisekunden)
var changeIntervalMs = 2000;

// hier alle PDFs hinzufügen
var pdfs = [
  "https://www.gartenmedien.de/pdf/test.pdf",
  "https://www.jena.de/fm/41/test.pdf"
];

// index aktuelles pdf
var index = 0;


function loadPdf() {
  document.querySelector('embed').src = pdfs[index];
  index++;
  if(index >= pdfs.length) {
    index = 0;
  }
}

// alle X millisekunden das PDF wechseln
window.setInterval(loadPdf, changeIntervalMs);

// das erste PDF beim Seitenaufruf laden
document.addEventListener("DOMContentLoaded", function(event) {
  loadPdf();
});
 
Zurück
Oben