Primero que nada, tres consideraciones:
1. Tener instalado Adobe Acrobat completo (no el Adobe Acrobat Reader), esto lo he probado con Adobe Acrobat 4.0<br>
2. Haber instalado el Control ActiveX de Adobe Acrobat.<br>
2. Incluir en la clausula uses la biblioteca ComObj.<br>
Notas:
Esta funcion convierte los siguientes tipos archivos (probado con Delphi 5):
Código Delphi
[-]
Imagenes BMP (*.bmp)
Imagenes JPG (*.jpg)
Imagenes TIF (*.tif)
Imagenes GIF (*.gif)
Modo de uso:
Código Delphi
[-]
if not(ImgToPDF('C:\imagen.tif', 'C:\Imagen_PDF.pdf')) then
ShowMessage('No se pudo convertir el Archivo');
function ImgToPDF(ImgArchivo, PDFArchivo: string): boolean;
var
AcroApp : variant;
AVDoc : variant;
PDDoc : variant;
begin
if not fileexists(ImgArchivo) then
result := false
else
begin
try
AcroApp := CreateOleObject('AcroExch.App');
AVDoc := CreateOleObject('AcroExch.AVDoc');
AVDoc.Open(ImgArchivo, '');
AVDoc := AcroApp.GetActiveDoc;
if AVDoc.IsValid then
begin
PDDoc := AVDoc.GetPDDoc;
PDDoc.SetInfo ('Title', '');
PDDoc.SetInfo ('Author', '');
PDDoc.SetInfo ('Subject', '');
PDDoc.SetInfo ('Keywords', '');
Result := PDDoc.Save(1 or 4 or 32, PDFArchivo);
PDDoc.Close;
end;
AVDoc.Close(True);
AcroApp.Exit;
finally
VarClear(PDDoc);
VarClear(AVDoc);
VarClear(AcroApp);
end;
end;
end;