AGB  ·  Datenschutz  ·  Impressum  







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

PDF als Bild, OnClick

Ein Thema von mikro1986 · begonnen am 7. Jan 2008 · letzter Beitrag vom 5. Nov 2008
 
pirechner

Registriert seit: 29. Jun 2004
36 Beiträge
 
Delphi 7 Professional
 
#19

Re: PDF als Bild, OnClick

  Alt 5. Nov 2008, 15:47
Ich stand auch vor dem Problem und habe es wie folgt gelöst:

ActiveX Element hinzufügen
Komponente->ActiveX importieren...-> Adobe Acrobat (sprich PDF-Dokument) auswählen und installieren
Alles bestätigen und so einstellen wie gewünscht.
Nun sollte bei der ActiveX Registerkarte ein neuer Eintrag/Icon für PDF-Dokumente erscheinen.

PDF-Dokument einbinden
Wie z.B. einen Button auf dem Formular platzieren.

Vollbildmodus
Einerseits kann man einfach die Leisten ausblenden per:
Delphi-Quellcode:
 acropdf1.setShowScrollbars(false);
 acropdf1.setShowToolbar(false);
andererseits kann man auch eine Dokument laden und danach [STRG] + [L] drücken um in den Vollbildmodus zu wechseln.
[STRG] + [L] kann man jedoch auch simulieren.
simulieren von Tastenkombination
Vorhergenden Quelltext für [STRG] + [L] anpassen.

Besonderheit
Der Vollbildmodus findet dann jedoch nur innerhalb der Komponente statt. Wenn man nun bildschirmfüllend das Dokument anzeigen möchte muss man den WindowState eines Fensters auf maximized setzen und dann die Komponente selbst auf dem Formular maximieren.

Meine Komplettlösung
Delphi-Quellcode:
procedure TForm1.FormClick(Sender: TObject);
  procedure sim_CtrlL;
  begin
    keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0); //Drücken von [STRG]
    keybd_event(Ord('L'), MapVirtualKey(Ord('L'), 0), 0, 0); //Drücken von [L]
    keybd_event(Ord('L'), MapVirtualKey(Ord('L'), 0), KEYEVENTF_KEYUP, 0); //Loslassen von [L]
    keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), KEYEVENTF_KEYUP, 0) //Loslassen von [STRG]
  end;
begin
  acropdf1.Top:= 0;
  acropdf1.Left:= 0;
  acropdf1.Height:= self.ClientHeight;
  acropdf1.Width:= self.ClientWidth;
  if opendialog1.Execute then
  begin
    acropdf1.LoadFile(opendialog1.FileName);
  end;
  sim_ctrlL;
end;
weiterführende Informationen
direkt zu Adobe PDF API
pi ist Sonntags = 4
  Mit Zitat antworten Zitat
 


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 04:40 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 by Thomas Breitkreuz