Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Anzeigen von PDF/Jpg oder anderen in Gui (https://www.delphipraxis.net/209465-anzeigen-von-pdf-jpg-oder-anderen-gui.html)

abrosda 10. Dez 2021 14:01

Anzeigen von PDF/Jpg oder anderen in Gui
 
Ich stehe total auf dem sprichwörtlichen "Schlauch" - ich möchte Daten in der DB speichern, beliebigen Inhalts -> also ein BLOB Feld
Gerne würde ich dann in der Anwendung eine Vorschau anzeigen. Wenn ich nach PDF suche taucht sehr schnell ActiveX/OLE auf, das möchte ich vermeiden.

Eine zusätzliche Anwendung öffnen (Adobe) will ich nicht, da die Datenbank hunderte Einträge hat und der Benutzer bequem durch die Tabelle scrollen soll.

Geht das in Delphi "vernünftig" oder soll/muss ich dafür ein ActiveX, bzw OLE Feld bemühen?
Klar für ein JPEG gibt es ein Control.... - eventuell würde es reichen "DASS" Vorschaubild vom pdf darzustellen.

Bernhard Geyer 10. Dez 2021 14:13

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
Ab Delphi 10.4 -> https://docwiki.embarcadero.com/RADS...ser-Komponente
Bis Delphi 10.4 -> https://github.com/salvadordf/CEF4Delphi

Vorteil CEF:
- Kleiner.
- Einfach Distribution "neben" der Exe

Nachteil CEF:
- Keine MP4-Codecs

Vorteil Edge:
- Auch MP4 "out of the box"
- Kann man "Installieren", so das MS für die Updates sorgt

Nachteil Edge:
- Muss man installieren oder "SideBySide" mitliefern (Wobei Start von Netzwerklaufwerk nicht möglich -> Kopie nach %Appdata%
- Mittlerweile sehr groß

Ansonsten beide PDF-Support des Chromium-Projekts. D.h. mittlerweile fast sowas wie Industriestandard (Wenn's damit richtig aussieht, passt es).
Sehr oft fliegt beim Kunden die Adobe-SW runter oder ist veraltet (was nicht stabil mehr im IE als Control läuft)

abrosda 10. Dez 2021 14:16

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
Super, Danke!

Das ist/klingt ja einfacher als ich gedacht habe.
Mal schauen, ob ich es hinbekomme.

Der schöne Günther 10. Dez 2021 14:44

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
Nutze WebView2 (also Edge) auch für sowohl MP4 als auch PDFs.
Funktioniert tadellos.

CCRDude 10. Dez 2021 16:55

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
SumatraPDF kann man per Kommandozeilenparameter (-plugin <handle>) auch in eine GUI integrieren. Ist ggfls. schlanker als ein ganzer Browser. Mehrere LaTeX-Distributionen nutzen das zur Vorschau (per DDE lässt sich dann auch etwas markieren).

Redeemer 10. Dez 2021 20:39

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
Sumatra erschlägt übrigens auch einige Bildformate, u.a. JP2.

HolgerX 12. Dez 2021 07:42

AW: Anzeigen von PDF/Jpg oder anderen in Gui
 
Hmm..

Mal zurück zu der Frage, wie ich es verstanden habe..

Vorschaubild..

Hier würde ich vor dem Speichern der Datei ein Jpeg Bild erzeugen und dieses in einem weiteren BLOB Feld zur Datei ablegen.
Dieses kann dann schnell in einem TImage angezeigt werden, ohne dass die ganze, eventuell große Originaldatei aus der DB geladen werden muss.
So kann der User recht zügig durch die (Vorschau-) Dateien surfen...

Wie ein solches Vorschaubild erstellt werden kann, hängt vom Dateiformat ab.
Bei PDF kann z.B. dieses per Ghostscript DLL erzeugt werden.

Für die Vollanzeige der Datei dann den auf dem Rechner installierten Viewer (z.B. Adobe für PDF oder Word für DOC) verwenden.
Dies hat den Vorteil, dass Du nicht immer für alle in deiner DB gespeicherten Dateiformate auch einen Viewer in deiner App einbauen (und Pflegen) musst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz