simpleread.pp 656 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. {$mode objfpc}
  2. {$h+}
  3. uses fppdfobjects, fppdfparser, sysutils, classes;
  4. procedure ReadPDF(const aStream: TStream; aDoc: TPDFDocument);
  5. var
  6. aParser : TPDFParser;
  7. begin
  8. aParser:=TPDFParser.Create(aStream);
  9. try
  10. aParser.ResolveToUnicodeCMaps:=True;
  11. aParser.ParseDocument(aDoc);
  12. finally
  13. aParser.Free;
  14. end;
  15. end;
  16. var
  17. F : TFileStream;
  18. Doc : TPDFDocument;
  19. begin
  20. if ParamCount<1 then
  21. begin
  22. Writeln('Usage : simpleread filename');
  23. Halt(1);
  24. end;
  25. F:=TFileStream.Create(paramstr(1),fmCreate or fmShareDenyNone);
  26. try
  27. Doc:=TPDFDocument.Create;
  28. ReadPDF(F,Doc);
  29. finally
  30. doc.free;
  31. f.free;
  32. end;
  33. end.