{$R *.dfm} {$TYPEDADDRESS OFF} //muss so sein (this have to be) var PDDoc: Acrobat_TLB.CAcroPDDoc; PDPage: Variant; PDHili: Variant; PDTextS: Variant; acrobat: Variant; Result: Boolean; NTL, i, j, Pagecount: Integer; zeilen: string; stichwortcounter: Integer; Size: Integer; gesamtstring: AnsiString; zwreal: Real;
procedure TForm1.Button1Click(Sender: TObject);
function removecrlf(workstring: string): string; var i: Integer; begin removecrlf := ''; for i := 0 to Length(workstring) do begin if workstring[i] = #13 then workstring[i] := ' '; if workstring[i] = #10 then workstring[i] := ' '; end; removecrlf := workstring; end;
//PDF Datei in Object öffnen Result := acrobat.Open(opendialog1.FileName);
if Result = False then begin messagedlg('Kann Datei nicht öffnen', mtWarning, [mbOK], 0); Exit; end;
for j := 0 to acrobat.GetNumPages - 1 do begin memo1.Lines.Add('----------------------------------------------'); //Erste Seite des Dokuments aktiv setzen (first page) PDPage := acrobat.acquirePage(j);
//Ein Highlight Object mit 2000 Elementen erzeugen PDHili := CreateOleObject('AcroExch.HiliteList'); Result := PDHili.Add(0, 4096);
//Erzeuge eine Markierung über den ganzen Text PDTextS := PDPage.CreatePageHilite(PDHili);
ntl := PDTextS.GetNumText;
for i := 0 to ntl - 1 do begin zeilen := PDTextS.GetText(i); if (Length(zeilen) > 0) and (zeilen <> '') then memo1.Lines.Add(removecrlf(zeilen)); gesamtstring := gesamtstring + removecrlf(zeilen); //nur für statistik Size := Size + SizeOf(zeilen); Inc(stichwortcounter);
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.