uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, Menus, StdCtrls, Buttons, ComCtrls, Grids, DBGrids,
ExtCtrls, Printers, WordXP, XPMan, OleServer, ComObj, ActiveX....
private
{ Private declarations }
PDFCreator: OleVariant;
public
{ Public declarations }
end;
var
procedure...
begin
.
CoInitialize(nil);
try
PDFCreator := CreateOLEObject('PDFCreator.clsPDFCreator');
PDFCreator.cStart('/NoProcessingAtStartup');
PDFCreator.cOption('UseAutosave') := 1;
PDFCreator.cOption('UseAutosaveDirectory') := 1;
PDFCreator.cOption('AutosaveDirectory') := ExtractFilePath(output_filename);
PDFCreator.cOption('AutosaveFilename') := ExtractFileName(output_filename);
PDFCreator.cOption('AutosaveFormat') := 0; // PDF format
PDFCreator.cOption('PDFColorsColorModel') := 0; // RGB format
if Trim(owner_password) <> '' then
begin
PDFCreator.cOption('PDFUseSecurity') := 1;
PDFCreator.cOption('PDFHighEncryption') := 1;
PDFCreator.cOption('PDFOwnerPass') := 1;
PDFCreator.cOption('PDFOwnerPasswordString') := owner_password;
PDFCreator.cOption('PDFDisallowCopy') := 1;
PDFCreator.cOption('PDFDisallowModifyAnnotations') := 1;
PDFCreator.cOption('PDFDisallowModifyContents') := 1;
PDFCreator.cOption('PDFDisallowPrinting') := 0;
PDFCreator.cOption('PDFAllowAssembly') := 0;
PDFCreator.cOption('PDFAllowDegradedPrinting') := 0;
PDFCreator.cOption('PDFAllowFillIn') := 0;
PDFCreator.cOption('PDFAllowScreenReaders') := 0;
end;
PDFCreator.cSaveOptions;
PDFCreator.cClose;
VarClear(PDFCreator);
except
PDFCreator.cClose;
VarClear(PDFCreator);
end;
CoUnInitialize;
.
end;