Export PDF Pages to TIFF or JPEG Images

I need to be able to export the individual pages in a PDF file to images. Legal requirements here require that archived images be stored in TIFF format but some of our records come to us as PDF which we then convert to TIFF.

I also need to be able to extract PDF pages to individual JPEG files. I am currently using Gnostice components for this. Can this be done with anything from TMSSoftware?

Thanks

We currently don't have such components unfortunately. We only have components to export graphics to PDF, but not to extract pages and/or convert them to image files.

Hi ...
I'm not an image conversion expert, but I noticed that we could export PNGs from FNCWXPDFViewer.

If it helps, this is how I could convert a page to JPEG, using VCL, by changing the OnGeneraqteImagePage event on TMSFNCWXPDFViewer demo, that is used when you press the PRINT button:

procedure TForm1.TMSFNCWXPDFViewer1GenerateImagePage(Sender: TObject; ImgWidth,
  ImgHeight: Integer; Base64ImgPage: string);
var
  ms: TMemoryStream;
  b: TBytes;
  Base64DataImg: string;
  ImgPage: TTMSFNCBitmap;

// Added
  jpg : TJPEGImage;
  bmp : TBitmap;
begin
  Base64DataImg := Copy(Base64ImgPage, Pos(',', Base64ImgPage) + 1, Length(Base64ImgPage));
  b := TTMSFNCUtils.Decode64ToBytes(Base64DataImg);
  ms := TMemoryStream.Create;
  ms.Write(b, Length(b));
  ms.Position := 0;
  ImgPage := TTMSFNCBitmap.Create;
  ImgPage.LoadFromStream(ms);

// Added:
  //imgpage.SaveToFile('c:\temp\testepdf.png');

  bmp := tbitmap.Create;
  bmp.Assign(imgpage.Graphic);

  jpg := TJPEGImage.Create;
  Jpg.ProgressiveEncoding := True;
  Jpg.ProgressiveDisplay := True;
  Jpg.Performance := jpBestSpeed;
  Jpg.Assign(bmp);
  Jpg.CompressionQuality := 90;
  Jpg.Compress;
  jpg.SaveToFile('c:\temp\testepdf.jpg');

  jpg.DisposeOf;
  bmp.DisposeOf;

// Excluded the printing block
  {
  TMSFNCPrinter.OnDrawContent :=
  procedure
  begin
    TMSFNCPrinter.Graphics.DrawBitmap(0, 0, TMSFNCPrinter.PageWidth, TMSFNCPrinter.PageHeight, ImgPage, True, True);
    TMSFNCPrinter.EndDoc;
  end;
  TMSFNCPrinter.BeginDoc;
  }
end;

In fact the generated file has a JFIF format reference. Would have to check if it's compliant to your jpeg needs.

This is a nice piece of code, but requires the PDF Viewer to be visible. It's unclear if the OP wants to extract this behind the scenes or from a visual components. Nevertheless, a nice solution!