Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: Maverich - Dicembre 18, 2011, 07:35:25 pm

Titolo: Visualizzare file Pdf
Inserito da: Maverich - Dicembre 18, 2011, 07:35:25 pm
Sto cercando un modo per visualizzare un file Pdf all'interno di un form;
in rete ho trovato soluzioni basate su ActiveX od OLEAutomation, ma nessuna
puo' essere idonea, restringerebbe l'uso solo a Windows,
mentre la mia necessita' e' averla anche per Linux.

In Lazarus c'e' qualche componente in grado di farlo ?
speravo nel package PowerPdf, ma serve per crearli.
Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Dicembre 19, 2011, 08:15:35 am
Mi documento e ti faccio sapere!
Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Dicembre 20, 2011, 09:16:50 am
Sembrerebbe essere un lavoraccio

http://www.lazarus.freepascal.org/index.php/topic,15562.msg83780/topicseen.html#new
Titolo: Re:Visualizzare file Pdf
Inserito da: Maverich - Dicembre 20, 2011, 10:14:27 am
ho trovato questo articolo http://wiki.lazarus.freepascal.org/fpvectorial#Introduction,
 ho scaricato il necessario da sourceforge;
appena riesco provo e vediamo se e come funziona (Win/Linux).

dovrebbe essere in grado di leggere un  pdf, l'esempio indica la conversione
da pdf.
http://wiki.lazarus.freepascal.org/fpvectorial#Usage_examples.

faccio sapere l'esito delle prove.
Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Dicembre 20, 2011, 10:18:25 am
Ok grazie :)
Titolo: Re:Visualizzare file Pdf
Inserito da: Maverich - Dicembre 20, 2011, 11:53:55 am
Ho provato (su XP caricando i Package, non serve installarli , non ci sono componenti visuali);
Non c'e' modo di vedere un file Pdf, o SVG (creato sempre dalle librerie).

Visto che non leggeva i Pdf dei vari manuali,  ho creato un file con scritto Prova Testo,
e convertito in PDF con PdfCreator

la funzione function TvVectorialDocument (vedi sotto) esegue il controllo, ma nessun formato corrsiponde:
tra i formati da riconoscere non compare vfPDF

Codice: [Seleziona]
type
  TvVectorialFormat = (
    { Multi-purpose document formats }
    vfPDF, vfSVG, vfCorelDrawCDR, vfWindowsMetafileWMF,
    { CAD formats }
    vfDXF,
    { Geospatial formats }
    vfLAS,
    { Printing formats }
    vfPostScript, vfEncapsulatedPostScript,
    { GCode formats }
    vfGCodeAvisoCNCPrototipoV5, vfGCodeAvisoCNCPrototipoV6);   

Codice: [Seleziona]
function TvVectorialDocument.CreateVectorialReader(AFormat: TvVectorialFormat): TvCustomVectorialReader;
var
  i: Integer;
begin
  Result := nil;

  for i := 0 to Length(GvVectorialFormats) - 1 do

    {--> qui ho fatto scrivere su un file di testo i Formati
    vfCorelDrawCDR
    vfSVG
    vfGCodeAvisoCNCPrototipoV5
    vfEncapsulatedPostScript
    vfDXF
    vfLAS
    -- del vsPDF non c'e traccia e sono anche inferiori a quelli dichiarati in TvVectorialFormat}

    if GvVectorialFormats[i].Format = AFormat then
    begin
      if GvVectorialFormats[i].ReaderClass <> nil then
        Result := GvVectorialFormats[i].ReaderClass.Create;

      Break;
    end;

  if Result = nil then raise Exception.Create('Unsupported vector graphics format.');
end;

il progetto esempio e' fpvectorialconverter, presente nella Directory Examples.
Titolo: Re:Visualizzare file Pdf
Inserito da: ffabio - Aprile 13, 2016, 04:58:34 pm
qualcuno è riuscito a visualizzare un pdf ???

Si accettano consigli anche con active x magari qualche esempio .

Il metodo proposto di lanciarlo da shell non mi sembra molto carino .
Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Aprile 13, 2016, 07:29:24 pm
uses
...
lclintf
...
OpenDocument('readme.pdf');
Titolo: Re:Visualizzare file Pdf
Inserito da: ffabio - Aprile 14, 2016, 08:24:44 am
??????

:-[ :-[ :-[ :-[
Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Aprile 14, 2016, 08:45:30 am
Non ti funziona?
Titolo: Re:Visualizzare file Pdf
Inserito da: ffabio - Aprile 14, 2016, 02:18:09 pm
veramente non ho proprio capito cosa devo fare  :'( :'( :'(
Titolo: Re:Visualizzare file Pdf
Inserito da: ffabio - Aprile 14, 2016, 02:26:56 pm
ok ..... ero ancora addormentato :-)))

per spostarlo in un altra cartella ???? se ho aperto il visualizzatore non me lo fa spostare.
idee ?????

Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Aprile 14, 2016, 02:36:17 pm
devi chiudere il pdf perchè se è aperto in lettura da un'altro programma è normale che non te lo fa spostare. Copiare si, spostare no!
Titolo: Re:Visualizzare file Pdf
Inserito da: ffabio - Aprile 14, 2016, 03:30:31 pm
E' CORRETTO FARE COSI ???

PER COPIARE:
CopyFile(PChar(C:\OldFile.exe), PChar(C:\NewFile.exe), true);

PER SPOSTARE
MoveFile(PChar(C:\OldFile.exe), PChar(C:\NewFile.exe));

Titolo: Re:Visualizzare file Pdf
Inserito da: xinyiman - Aprile 14, 2016, 04:07:26 pm
Guarda qui

http://www.freepascal.org/docs-html/rtl/sysutils/renamefile.html