• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] PDF und Dokument - Viewer

dbarthel

Lounge-Member
Da ich in einem meiner Projekte zahlreiche Dokumente anzeigen lassen möchte, habe ich PDF.js und ViewerJS im Einsatz.

Allerdings funktioniert das ganze nicht mit allen Browsern.

Meine Frage nun, welche Möglichkeiten, eines adäquaten Ersatz gibt es (kennt ihr (am besten selbst...) ) für die Browser, die PDF.js nicht oder nicht komplett unterstützen?

Außerdem, gibt es äquivalente buildin-/ embeded- Browser-Viewer (Anzeige direkt im Browser, ohne Addon-Installation auf Seite des Endusers. nötig) auch für Office-Dokumente und Ebooks (epub, mobi) ?

Habe schon Google bemüht, aber bislang keine geeigneten Lösungen gefunden, zudem wäre es mir lieb, wenn Empfehlung teilweise (isealerweise) auf euren eigenen Erfahrungen beruhen würden.

(PS: die Implementierung und Anpassung der Viewer sollte auch ohne Profi-Kenntnisse nicht zu komplex sein.)


PPS: habe teilweise Schwierigkeiten, wenn der Viewer via Ajax geladen wird (lasse den Viewer in einem Colorbox-Window anzeigen)

Jemand eine Idee, woran das liegen und wie man das beheben könnte?
 
Zeig' doch mal einen Testlink mit deinem Problem.

In welchen Browsern genau funktioniert es denn nicht?
 
Testlink kommt morgen.

Inzwischen könnt ihr ja bitte schonmal über den zweiten Teil meiner Frage - bezüglich Alternativen für nonsupported Browser (Opera , Netscape, Konquerror IE9 und IE < 8) sowie in Bezug auf Viewer für Ebooks nachdenken.
 
Du willst ernsthaft noch IE 7&6 unterstützen?
Und ich entscheid mich schon oft, den IE 8 nicht mehr zu beachten... ;) (oh, was bin ich froh, wenn der endlich von der Bildfläche verschwindet)

PS: IE 7&6 sind mittlerweile ausgestorben (zum Glück):

Du glaubst gar nicht, in wievielen Behörden, Schulen, Unis aber auch kleinen und mittleren Firmen noch uralt-Rechner mit Win XP, Win 2000 oder ähnliches, mit entsprechenden Browsern im Einsatz sind.
Ich kann dir sogar noch Einsatzorte von Windows 3.1 nennen.
 
Zuletzt bearbeitet:
Du glaubst gar nicht, in wievielen Behörden, Schulen, Unis aber auch kleinen und mittleren Firmen noch uralt-Rechner mit Win XP, Win 2000 oder ähnliches, mit entsprechenden Browsern im Einsatz sind.
Das wird sich hoffentlich mit dem Supportende für Windows XP und dem daraus resultierenden Sicherheitsaspekt bald ändern.
 
So hier der Testlink: Testseite

Folgende Probleme:

1. das Colorbox-Window geht nicht auf, sondern die URLs werden in einem normalen Browser-Fenster geöffnet.

2. beim PDF-Viewer, klappt die Anzeige des Dokumentes gar nicht, habe da in folgender Funktionen wahrscheinlich einen Fehler, den ich alleine nicht beheben kann:

Code:
var wert="111", typ, file, provider, id, link="";
var linkliste = [];
var linkStructure ="";
var DATAURL="";

function Werteliste (querystring) {
if (querystring == '') return;
  var wertestring = querystring.slice(1);
  var paare = wertestring.split("&");  
  typ = paare[0];
  wert = paare[1];
  typ = unescape(typ).replace("+", " ");
  wert = unescape(wert).replace("+", " ");
 
}

function URL() 
{
 //lets pickup the string into the location
 var string = new Werteliste(location.search);
 
 //lets load our links
 $.ajax(
 {
 type: "GET",
 url: "../../Main-Theme/xml/pdf-links.xml",
 dataType: "xml",
 success: function (xml) {

	//lets do some reading
	$(xml).find('provider').each(function () {
		provider = $(this).find("text").text();
		console.log($(this).find("text").text());

		
		$(this).find("option").each(function () {
			id = $(this).find("id").text();
			if (id == wert) {
				link = $(this).find("link").text();
				console.log($(this).find("link").text());
				linkliste.push(link); // stores the link(s) 
			}
		});
	});

for (i = 0; i < linkliste.length; i++)
 {
  DATAURL = linkliste[i];
  return DATAURL;
 }




},
error: function(response)
{
 alert('Error loading XML data');
}
});
}

Die Funktion URL() wird von innerhalb der Datei viewer.js via
Code:
var DEFAULT_URL = URL();
aufgerufen, allerdings wird DATAURL von der Funktion URL() NICHT zurückgegeben.

Bitte helft mir dieses Problem zu lösen.

3. über den Link "AjaxBox Test" gelangt ihr zu einer weiteren Testseite, die noch zu meinem Thread http://forum.jswelt.de/javascript/59582-externe-js-datei-innerhalb-funktion-nachladen.html gehört - dort klappt das nachladen der externen JS-Dateien immer noch nicht, aber dieses Problem möchte ich erstmal hinten anstellen, wichtiger wäre es, wenn ihr mir bitte helft, Problem 2 und 1 zu lösen!
 
Zuletzt bearbeitet:
Test PdfJS: Die pdf.js benötigt doch jQuery, wenn ich das auf die schnelle richtig erkannt habe. Dann solltest du jQuery auch vorher einbinden und nicht erst danach.

- - - Aktualisiert - - -

1. das Colorbox-Window geht nicht auf, sondern die URLs werden in einem normalen Browser-Fenster geöffnet
Habe jetzt auf der Seite (neuer Testlink) nirgends erkennen können, wo du die Colorbox initialisierst, bzw. auf HTML-Elemente registrierst!?
 
Test PdfJS: Die pdf.js benötigt doch jQuery, wenn ich das auf die schnelle richtig erkannt habe. Dann solltest du jQuery auch vorher einbinden und nicht erst danach.


- - - Aktualisiert - - -

Habe jetzt die Datei auf dem Server aktuallisiert und jetzt wird das eigentliche Problem deutlich!

Wird PdfJS innerhalb der Colorbox geladen, haut die Darstellung nicht hin und bei ViewerJs ist es noch schlimmer, da lädt das noch nicht mal.
 
Zuletzt bearbeitet:
@miniA4kuser: könntest du, unabhängig hiervon, bitte, wenn du etwas Zeit übrig hast, auch nochmal über den alten Testlink (tester statt tester2) gucken, da geht es noch um das Problem:
Es wird versucht etwas zu laden, jedoch liefert dein Server für die Dateien jquery.leaveNotice.css und jquery.leaveNotice.min.js einen HTTP 404 Fehler. Heißt die Dateien werden nicht gefunden.
Ich würde sagen, prüfe mal deine Pfade und dann schauen wir bei diesem Problem mal weiter.

- - - Aktualisiert - - -

Ok, jetzt liefert mir die Funktion URL() aus der pdf.js schonmal "Error loading XML data". - Was jedoch auch nicht Sinn der Übung war.
Das konnte ich jetzt nicht nachvollziehen.

Aber auch hier wird versucht etwas zu laden, jedoch liefert dein Server für die Dateien viewer.js und PluginLoader.js einen HTTP 404 Fehler. Heißt die Dateien werden nicht gefunden.
Ich würde sagen, prüfe mal deine Pfade und dann schauen wir bei diesem Problem mal weiter.
 
Zuletzt bearbeitet:
- - - Aktualisiert - - -

Das konnte ich jetzt nicht nachvollziehen.

Aber auch hier wird versucht etwas zu laden, jedoch liefert dein Server für die Dateien viewer.js und PluginLoader.js einen HTTP 404 Fehler. Heißt die Dateien werden nicht gefunden.
Ich würde sagen, prüfe mal deine Pfade und dann schauen wir bei diesem Problem mal weiter.


Ich glaube, das hat sich überholt.
Lösche bitte mal deinen Cache und ruf den Testlink Testseite erneut auf.

Die Pfade stimmen, wenn ich es manuell aufrufe, geht es, nur innerhalb der Funktionen bzw. Colorbox eben nicht.

Code:
http://lebenslust.bplaced.net/Main-Theme/docs/compressed.tracemonkey-pldi-09.pdf
- > funktioniert!


Code:
../../Main-Theme/docs/compressed.tracemonkey-pldi-09.pdf
-> funktioniert nicht!

oder

Code:
http://lebenslust.bplaced.net/ViewerJS/#../Main-Theme/docs/OpenDocument-v1.2.odt
-> funktioniert!


Code:
../../ViewerJS/#../Main-Theme/docs/OpenDocument-v1.2.odt
-> funktioniert nicht!


meine Oderner-Struktur ist aber:

->Main-Theme
->intern->externalJobCart->Testlink

mit ../ wäre ich auf ebene "intern" und mit ../../ sollte ich auf ebene mit Main-Theme sein, oder?
 
Zuletzt bearbeitet:
Also die Pfade zu den JS sollten eigentlich stimmen unf zumindest der Viewer der Pdf.js wird ja auch in Grundzügen gezeigt, nur eben nicht richtig.
 
Konnte das Problem mittlerweile beheben, indem ich anstelle von Ajax ein Iframe zum laden der Viewer einsetze:

Code:
[B]<a class="iframe internal-link" href="http://forum.jswelt.de/../ViewerJS/#../Main-Theme/docs/OpenDocument-v1.2.odt" title="ViewerJS mit Inhalt">Test ViewerJS</a> <br/>
<a class="iframe internal-link" href="pdfprepare.html" title="PDFJS mit Inhalt">Test PdfJS</a> <br/>[/B]
<a class="ajax internal-link" href="tester.html" title="normale Ajaxbox">AjaxBox Test</a> <br/>
<a class="ajax internal-link" href="downloadandview.html?download&111" title="Downloadsystem">Downloadsystem Test</a> <br/>

statt:

Code:
[B]<a class="ajax internal-link" href="http://forum.jswelt.de/../ViewerJS/#../Main-Theme/docs/OpenDocument-v1.2.odt" title="ViewerJS mit Inhalt">Test ViewerJS</a> <br/>
<a class="ajax internal-link" href="pdfprepare.html" title="PDFJS mit Inhalt">Test PdfJS</a> <br/>[/B]
<a class="ajax internal-link" href="tester.html" title="normale Ajaxbox">AjaxBox Test</a> <br/>
<a class="ajax internal-link" href="downloadandview.html?download&111" title="Downloadsystem">Downloadsystem Test</a> <br/>


Allerdings würde mich mahl interessieren, warum AJAX da ein Problem mit dem laden hat, die Dokumente sind doch alle auf meinem Server, so das die SOP oder was es da noch so an Richtlinien gibt, eigentlich nicht verletzt werden sollte.


PS:
Ein besonderer Dank von mir an "miniA4kuser", der immer bereit ist, mir zu helfen!
Sollte ich zukünftig mal eine Frage haben, dürfen mir aber auch gern alle anderen Boardies helfen ;)
 
dbarthel, empfiehl uns weiter und schau ab und zu mal wieder rein :)

keine Sorge, ich bleib euch treu und versuche auch zu helfen, wenn ich kann.

- - - Aktualisiert - - -

PS: Meine Eingangs-Frage nach embeded Viewern für Ebooks, Office-Files und für ältere Browser wurde übrigens noch nicht beantwortet!

Vielleicht kann ja nochmal jemand so nett sein und diese Frage auch beantworten (sonst überleg ich mir das Weiterempfehlen vielleicht nochmal ;) )
 
Allerdings würde mich mahl interessieren, warum AJAX da ein Problem mit dem laden hat, die Dokumente sind doch alle auf meinem Server, so das die SOP oder was es da noch so an Richtlinien gibt, eigentlich nicht verletzt werden sollte.
Ich kenne das PDF-Teil jetzt nicht im Detail, aber eventuell baut das auf Events auf, die beim AJAX einfach nicht gefeuert werden (window.onload oder DOMContentReady oder Ähnliche).

Übrigens würde ich Opera nochmal testen. Würde mich wundern, wenn das da nicht funktionieren würde, da das ja auf Chromium aufbaut (also wirklich der Neueste und nicht der veraltete 12er Zweig).
 
kkapser schrieb:
Übrigens würde ich Opera nochmal testen. Würde mich wundern, wenn das da nicht funktionieren würde, da das ja auf Chromium aufbaut (also wirklich der Neueste und nicht der veraltete 12er Zweig).

In der Doku von Mozilla zur PDF.JS ist Opera mit Fragezeichen angegeben, aber es scheint wohl eher an der größe der Files zu hängen. Kleine Files gingen in Opera, große nicht.
 
Bist du sicher, dass du in Opera 22 getestet hast?

Ein Fragezeichen bei Mozilla heißt normalerweise, dass keine Informationen vorliegen - also keine Tests gemacht wurden.
 
Zurück
Oben