AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PDF/XPS/Papierformat-Viewer für Delphi

Ein Thema von Bernhard73 · begonnen am 27. Jun 2013 · letzter Beitrag vom 6. Jul 2013
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#11

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 08:51
Doch, ab Windows XP ist IPreviewHandler bekannt

http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von rweinzierl
rweinzierl

Registriert seit: 22. Mär 2005
98 Beiträge
 
#12

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 12:13
Hallo

Chromium kannst du direkt in die Anwendung einbinden, gibt noch die eine oder andere DLL im Programmverzeichnis mit und die Sache ist unabhängig von Drittkomponenten. Von der Anwendung her ist Chromium sehr einfach. Mich begeistert vor allem die Kommunikation zwischen dem Programm (Delphi) und dem Browser (JavaScript).

Diese Antwort interessiert mich (allerdings unabhängig vom PDF Thema). Was ich bei Chromium hinbekommen habe sind Alerts im Javascript die ich in Delphi dann abfange. Geht, aber besonders schön finde ich das nicht ==> Geht das besser? wenn ja würde ich mich über eine Antwort mit einem kleinen Beispiel freuen.

Danke

Reinhold
  Mit Zitat antworten Zitat
creed steiger

Registriert seit: 2. Dez 2009
116 Beiträge
 
#13

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 14:51
schau mal ob du das hier für Delphi gebrauchen kannst

http://forum.lazarus.freepascal.org/...?topic=20221.0

https://github.com/blestan/lazmupdf

https://github.com/blestan/lazmupdf/tree/master/test
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 15:55
Was ich bei Chromium hinbekommen habe sind Alerts im Javascript die ich in Delphi dann abfange. Geht, aber besonders schön finde ich das nicht ==> Geht das besser? wenn ja würde ich mich über eine Antwort mit einem kleinen Beispiel freuen.
Das geht ähnlich wie bei TWebBrowser (mit dem External Objekt):
http://stackoverflow.com/questions/6...g-chromium-and
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
TReader

Registriert seit: 6. Mai 2013
13 Beiträge
 
#15

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 16:06
Was ich bei Chromium hinbekommen habe sind Alerts im Javascript die ich in Delphi dann abfange. Geht, aber besonders schön finde ich das nicht ==> Geht das besser? wenn ja würde ich mich über eine Antwort mit einem kleinen Beispiel freuen.
Das geht ähnlich wie bei TWebBrowser (mit dem External Objekt):
http://stackoverflow.com/questions/6...g-chromium-and
Jetzt warst du zu schnell hatte gerade auch den Link gesucht um ihn hier zu posten. Aber das sollte die Frage ja ausführlich genug beantworten.
  Mit Zitat antworten Zitat
Benutzerbild von rweinzierl
rweinzierl

Registriert seit: 22. Mär 2005
98 Beiträge
 
#16

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 29. Jun 2013, 19:22
Was ich bei Chromium hinbekommen habe sind Alerts im Javascript die ich in Delphi dann abfange. Geht, aber besonders schön finde ich das nicht ==> Geht das besser? wenn ja würde ich mich über eine Antwort mit einem kleinen Beispiel freuen.
Das geht ähnlich wie bei TWebBrowser (mit dem External Objekt):
http://stackoverflow.com/questions/6...g-chromium-and
Jetzt warst du zu schnell hatte gerade auch den Link gesucht um ihn hier zu posten. Aber das sollte die Frage ja ausführlich genug beantworten.

Hallo

Ich habe versucht den Beispielquellcode nachzuvollziehen, leider ohne Erfog. Ich bekomme es zwar durch den Compiler aber dann klappt es leider nicht (ohne Fehlermeldung).

Ich habe einfach meine Unit drangehängt, vielleicht sieht ja jemand auf die schnelle meinen Fehler.

mfg

Reinhold




Delphi-Quellcode:
unit utestCallBack;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, cefvcl,ceflib;

type
  TForm19 = class(TForm)
    crm: TChromium;
    Panel1: TPanel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    procedure RegisterExtension;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

TMyHandler = class(TCefv8HandlerOwn)
protected
  function Execute(const name: ustring; const obj: ICefv8Value;
    const arguments: TCefv8ValueArray; var retval: ICefv8Value;
    var exception: ustring): Boolean; override;
end;

var
  Form19: TForm19;

implementation

{$R *.dfm}


procedure TForm19.RegisterExtension;
var
  Code:string;
begin
  // Register a V8 extension with the below JavaScript code that calls native
  // methods implemented in ClientV8ExtensionHandler.

  Code :=
   'var cef;'+
   'if (!cef)'+
   ' cef = {};'+
   'if (!cef.test)'+
   ' cef.test = {};'+
   '(function() {'+
   ' cef.test.__defineGetter__(''test_param'', function() {'+
   ' native function GetTestParam();'+
   ' return GetTestParam();'+
   ' });'+
   ' cef.test.__defineSetter__(''test_param'', function(b) {'+
   ' native function SetTestParam();'+
   ' if(b) SetTestParam(b);'+
   ' });'+
   ' cef.test.test_object = function() {'+
   ' native function GetTestObject();'+
   ' return GetTestObject();'+
   ' };'+
   '})();';

  CefRegisterExtension('example/v8', Code, TMyHandler.Create as ICefv8Handler);



  end;


procedure TForm19.Button1Click(Sender: TObject);
begin
//Test ob Javascript Aufgruf geht
// if crm.Browser <> nil then
// crm.Browser.MainFrame.ExecuteJavaScript(
// 'alert("teste javascript");', 'about:blank', 0);

crm.Browser.MainFrame.ExecuteJavaScript('cef.test.test_object().GetMessage();', 'about:blank', 0);

// if crm.Browser <> nil then
// crm.Browser.MainFrame.LoadUrl('www.google.de');
end;

procedure TForm19.FormCreate(Sender: TObject);
begin
RegisterExtension;
end;

{ TMyHandler }

function TMyHandler.Execute(const name: ustring; const obj: ICefv8Value;
  const arguments: TCefv8ValueArray; var retval: ICefv8Value;
  var exception: ustring): Boolean;
begin
  ShowMessage('Execute!');

end;

end.
  Mit Zitat antworten Zitat
TReader

Registriert seit: 6. Mai 2013
13 Beiträge
 
#17

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 30. Jun 2013, 11:15
Bekommst du das obere Beispiel denn zum Laufen? (das, welches ohne Extensions funktioniert)?

Wir verwenden Delphi<->JavaScript<->Delphi eigentlich nur für Dateizugriffe. Alles andere lösen wir direkt mittels JavaScript.
  Mit Zitat antworten Zitat
moonwalk55

Registriert seit: 29. Sep 2007
12 Beiträge
 
Delphi XE2 Professional
 
#18

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 30. Jun 2013, 14:40
Hallo Bernhard,

mit der PDF Anzeige ist das so ein Problem. Die Activex-Komponente von Foxit ist nicht schlecht, leider haben die sehr komische Preisvorstellungen.

Ich verwenden von Gnostice das PDFtoolkit (http://www.gnostice.com/PDFtoolkit_VCL.asp). Damit kann man sich prima einen PDF-Viewer bauen. Es gibt auf der Webseite auch entsprechenden Beispielcode und die Komponente kann 30 Tage getestet werden.

Gruß

moonwalk55
  Mit Zitat antworten Zitat
Benutzerbild von rweinzierl
rweinzierl

Registriert seit: 22. Mär 2005
98 Beiträge
 
#19

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 30. Jun 2013, 19:25
Bekommst du das obere Beispiel denn zum Laufen? (das, welches ohne Extensions funktioniert)?

Wir verwenden Delphi<->JavaScript<->Delphi eigentlich nur für Dateizugriffe. Alles andere lösen wir direkt mittels JavaScript.

Ja geht ohne Fehlermeldung und ohne Exception, nur leider auch ohne die erhoffte Messagebox.

Mir ist klar das ich mich selber nochmals durch die Beispiele kämpfen muss, und das ich nicht erwarten das mir jemand meine Aufgaben auf dem Silbertablet löst. Ich werde mir das ganze am Montag nochmals genauer ansehen vielleicht finde ich ja noch was, mein Problem ist das ich kein logisches Problem habe welches ich debuggen kann, sondern das ich über Try und Error versuche die Sache zu verstehen. (und Chromium ist ja nun wirklich kein kleines Projekt)

mfg

Reinhold
  Mit Zitat antworten Zitat
TReader

Registriert seit: 6. Mai 2013
13 Beiträge
 
#20

AW: PDF/XPS/Papierformat-Viewer für Delphi

  Alt 30. Jun 2013, 19:42
Am besten machst du dazu ein neues Thema auf. Werde mir, wenn möglich, morgen auch mal ein paar Minuten Zeit nehmen, dir ein funktionierendes Beispiel zusammenzustellen.

Edit: Mir fällt gerade auf, dass du versuchst im FormCreate die Extension zu binden. Möglicherweise liegt da der Hund begraben.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz