• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

Base64 String in verschiedenen Varianten (PDF, SWF) rendern

Larius

OutOfOrder

Registriert
12 Juli 2013
Beiträge
5.792
Hallo alle zusammen,

ich brauch momentan für meine Arbeit eine Möglichkeit, einen Base64 String on the fly in das entsprechende Format zu bringen und im Internet darzustellen. Ich hab jetzt schon etwas herumexperimentiert:

[src=html4strict]<embed src=\"data:application/pdf;base64,"+datei+"\" width=\"500\" height=\"375\">[/src]

Das funktioniert an und für sich im Firefox sowie Chrome mit dem richtigen Base64 String, jedoch murkelt das im Internet Explorer furchtbar rum und stellt das nicht da. Jetzt hab ich gelesen das diese Data URI Geschichten nur noch für Images verwendet werden können im IE - inwieweit ist das richtig?

Shockwave macht mir da auch ein paar Probleme, da verwende ich momentan

[src=html4strict]"<object width=\"100\" height=\"100\"><param name=\"movie\" value=\""+datei+"\"><embed src=\""+datei+"\" width=\"100\" height=\"100\"></embed></object>"[/src]

Hat jemand eine Lösung für beide Probleme? Libs werd ich wohl nicht einsetzen können da das Ganze ein ERP ist wo ich Regeln schreib und damit das HTML zusammelstoppel...
 

Kugelfisch

Nerd

Registriert
12 Juli 2013
Beiträge
2.342
Ort
Im Ozean
ich brauch momentan für meine Arbeit eine Möglichkeit, einen Base64 String on the fly in das entsprechende Format zu bringen und im Internet darzustellen. Ich hab jetzt schon etwas herumexperimentiert:
[src=html4strict]<embed src=\"data:application/pdf;base64,"+datei+"\" width=\"500\" height=\"375\">[/src]
Das funktioniert an und für sich im Firefox sowie Chrome mit dem richtigen Base64 String, jedoch murkelt das im Internet Explorer furchtbar rum und stellt das nicht da. Jetzt hab ich gelesen das diese Data URI Geschichten nur noch für Images verwendet werden können im IE - inwieweit ist das richtig?
Das hängt von der IE-Version ab. In IE <= 7 werden Data-URIs gar nicht unterstützt. IE 8 bietet grundlegende Unterstützung, allerdings nur für bestimmte Inhalte (Bilder und Stylesheets) und limitiert die Länge zudem auf 32 KiB. Ab IE 9 wurde die Längenbeschränkung aufgehoben und Unterstützung für die Verwendung von data-URIs im src-Attribut von script-Elementen eingeführt.

Um alle Browser zuverlässig zu unterstützen und zudem den Base64-Overhead zu vermeiden, bietet sich an, die Daten serverseitig zu dekodieren und über eine zusätzliches Skript an den Client auszuliefern. Beachte auch, dass das embed-Element zumindest in HTML 4.01 nicht standardisiert ist und von älteren IE-Versionen (und in deinem Fall Browsern ohne PDF-Plug-In) nicht unterstützt wird.


Shockwave macht mir da auch ein paar Probleme, da verwende ich momentan
[src=html4strict]"<object width=\"100\" height=\"100\"><param name=\"movie\" value=\""+datei+"\"><embed src=\""+datei+"\" width=\"100\" height=\"100\"></embed></object>"[/src]
Meinst du damit Flash oder tatsächlich Adobe Shockwave? Grundsätzlich müsste das in allen modernen Browsern über ein einfaches object-Element möglich sein, siehe etwa http://alistapart.com/article/flashsatay.
 

Larius

OutOfOrder

Registriert
12 Juli 2013
Beiträge
5.792
  • Thread Starter Thread Starter
  • #3
Hm, Browser ohne PDF Plugin. Das könnte der Grund sein warum mir Firefox das schön (mit Optionen und allem), Chrome nur als Plain PDF (ohne Optionen wie Seitenumblättern undso) und IE gar nicht angezeigt hat. Mit dem Script bin ich halt momentan etwas vorsichtig - wenn dann muss ich das an die entsprechende Person weiterleiten und muss auch begründen, warum ich wenn dann n Script brauche oder ob wir jetzt auf n anderen Browser müssen. Wenn das PDF Plugin ausgerollt werden kann stellt das sogar das geringste Problem da, Berechtigungen sei Dank gibt es nur 1 Browser für alle.

Ich meine .swf, also Adobe Shockwave. Danke für den Link, ich schau es mir morgen auf jeden Fall noch einmal an.
 

drfuture

Zeitreisender
Teammitglied

Registriert
14 Juli 2013
Beiträge
8.754
Ort
in der Zukunft
Wenn es nicht einfach raus kopierbar sein soll - warum dann nicht serverseitig ein Bild mit dem String erzeugen? Nur mal noch so als Idee :)
 

Kugelfisch

Nerd

Registriert
12 Juli 2013
Beiträge
2.342
Ort
Im Ozean
Ich meine .swf, also Adobe Shockwave. Danke für den Link, ich schau es mir morgen auf jeden Fall noch einmal an.
Dateien mit der Endung `swf` sind Flash-Inhalte - Shockwave-Dateien haben Endungen wie `dxr`. Allerdings bezeichnete Adobe/Macromedia Flash zumindest in der Vergangenheit auch als `Shockwave Flash`, wodurch solche Verwechslungen entstehen. Flash ist (anders als Shockwave) vergleichsweise unproblematisch bei der Einbindung, da das Plugin weit verbreitet ist. Das in http://alistapart.com/article/flashsatay beschriebene Verfahren wäre dazu geeignet.


Zur PDF-Problematik stellt sich mir die Frage, was du am Ende erreichen möchtest und ob es tatsächlich sinnvoll ist, die Daten als PDF-Dokument einzubinden. Dass du die PDF-Dateidaten als Base64-String ausgeben möchtest, deutet darauf hin, dass du sie serverseitig dynamisch erzeugst. Dann wäre allerdings sinnvoller, die Daten direkt als HTML auszugeben (oder ggf. als Bild, wenn erforderlich).
 

Larius

OutOfOrder

Registriert
12 Juli 2013
Beiträge
5.792
  • Thread Starter Thread Starter
  • #6
Die Daten (PDF, SWF) gehören zu einzelnen Produkten, sprich die werden 1x in das System eingespielt als Base64 und sollen dann entsprechend wieder generiert werden können. Ja sicher, man könnte einfach hergehen und das Ganze als Files übertragen, nur nachdem es dann eine Haupt-DB und viele kleine DBs geben soll (damit die Verkäufer auch offline arbeiten können) wurde der Ansatz gewählt, seis drum.

Wir lösen das jetzt anders: Die Datei wird einfach in die temporären Dateien gepackt und dann einfach verklinkt. Dann spar ich mir nämlich den ganzen Base64 Schmarrn denn das funktioniert nicht immer (hab ein Object-Tag für SWF genommen und angepasst - in Chrome gehts, in FF + IE nicht).
 
Oben