PHP-Imagemagick Bildanzeige

9

Ich habe PHP-Code, der pdf thumbnail wie folgt erstellt;

%Vor%

Was gut funktioniert. Aber wenn ich das Bild auf einer Webseite anzeigen möchte, muss ich <img src=""> tag verwenden. Gibt es eine Möglichkeit, header("Content-Type: image/jpeg"); aus dem Syntax- und Echobild mit <img src=""> .. zu entfernen? Oder jemand sagt mir, wie man die Syntax benutzt, um das Bild in einer Webseite anzuzeigen.

Ich starte Apache mit php5 in meinem Windows Vista PC.

    
blasteralfred Ψ 22.05.2011, 11:20
quelle

6 Antworten

8

Sie können versuchen, das Bild auf diese Weise anzuzeigen:

%Vor%     
Vasil Dakov 22.05.2011, 13:32
quelle
9

Mit Imagick können Sie die base64-Codierung verwenden:

%Vor%

Allerdings ist diese Methode sehr langsam und daher empfehle ich, das Bild früher $img->writeImage($path) zu erzeugen und zu speichern.

    
Roger 22.11.2012 14:18
quelle
3

Sie können das rohe Bild in Ihre Seite einbetten, siehe den Blogeintrag unten für ein Beispiel in der Seitensyntax.

Ссылка

Aber ich denke, es wäre produktiver, das Thumbnail auf dem Dateisystem zu speichern und es als normale Datei zu verwenden. Andernfalls erzeugen Sie jedes Mal, wenn auf die Seite zugegriffen wird, die Miniaturansicht. Möglicherweise hat jemand diese PDF-Datei hochgeladen, so dass Sie das Thumbnail auch beim Hochladen generieren können.

    
ashein 22.05.2011 13:33
quelle
3

Das Einbetten eines Bildes mit base64 ist ein völlig falscher Weg, um das Problem zu lösen. mit etwas Stateless wie ein PHP-Web-Skript.

Sie sollten stattdessen HTTP-Parameter verwenden, um eine einzige PHP-Datei zu haben, die zwei Aufgaben ausführen kann - der Standard sendet HTML, und der Parameter weist die PHP-Datei an, das Bild zu drucken. Unten ist der "Standard" Weg, es zu tun -

%Vor%     
Chetan Chauhan 29.11.2012 11:38
quelle
3

Wie ich sehen kann gibt es zu viele Antworten, die nicht genau genug sind, also hier geht mein:

Dadurch wird das Bild so gedruckt, wie Sie es gerade tun (zum Zeitpunkt, zu dem Sie diese Frage gestellt haben). Als Alternative zur Antwort von @Vasil Dakov sollten Sie das Snippet ändern, das ich Ihnen so gegeben habe:

%Vor%

Als Alternative können Sie ein Skript erstellen, um das Bild zu erzeugen. Speichern Sie es in einem Ordner (vorausgesetzt, img / ist der Ordner) und geben Sie nur die Dateiendung + Dateiname + in die Datei zurück:

%Vor%

Dokumentation für Imagick :: writeImageFile

    
DaGhostman Dimitrov 17.05.2013 10:18
quelle
0

Die einzige Lösung wäre, Ihr Image in base64 zu konvertieren und es als eingebettetes base64-Image einzubinden ( data:image/png;base64, ). Weitere Referenz .

Aber dies wird nicht in IE 6 und 7 unterstützt.

    
Henrik P. Hessel 22.05.2011 13:35
quelle

Tags und Links