| ImageEn, unit iexHelperFunctions |  | 
 
TIEMultiBitmapHelper.CreateSearchablePDF
 
Declaration
function CreateSearchablePDF(const DestFilename: String; const DocTitle: String; Language: TIEOCRLanguages = OCR_English_Language; SegmentationMode: TIEVisionOCRPageSegmentationMode = ievOCRAuto; ImageFormat: TIEVisionPDFImageFormat = ievPDFImgFmt_AUTO; const LanguagePath: string = ''): Boolean; overload;
function CreateSearchablePDF(const DestFilename: String; const DocTitle: String; const LanguageCode: string; SegmentationMode: TIEVisionOCRPageSegmentationMode = ievOCRAuto; ImageFormat: TIEVisionPDFImageFormat = ievPDFImgFmt_AUTO; const LanguagePath: string = ''): Boolean; overload;
Description
A shortcut method that creates a 
TIEVisionSearchablePDFGenerator object to create a searchable PDF file.
 
 | Parameter | Description | 
 | DestFilename | Full path filename for the PDF document | 
 | DocTitle | Title of the PDF document (which shows in the Document Properties) | 
 | Language | The OCR language specified by type or as a language code string  (e.g. 'eng', 'fra'). To use multiple languages, separate them with the plus character, e.g. 'chi_sim+eng' (Simplfied Chinese and English) or 'eng+fra+deu' (English, French and German) | 
 | SegmentationMode | Specify the segmentation mode, which describes how text is laid out on the page (generally ievOCRAuto) | 
 | ImageFormat | Image compression format (default is ievPDFImgFmt_AUTO) | 
 | LanguagePath | Folder containing language data files, e.g. eng.TrainedData (or '' for the EXE folder) | 
When the 
TIEMultiBitmap is attached to a 
TImageEnMView:
◼If 
Checkboxes are enabled, only checked images will be included. An exception is raised if there are no checked items
◼If 
StoreType is not ietNormal, an attempt is made to load full quality images from file. An exception is raised if the files cannot be accessed
◼OnProgress and 
OnFinishWork events will fire
Note:
◼You must add the iexHelperFunctions unit to your uses clause
◼Delphi/C++ 2005 or newer is required to use helper classes
◼You wil require a TrainedData file for the specified language (e.g. "eng.TrainedData"). An exception is raised if it is not found
◼A temporary file named "pdf.ttf" will be created in the Windows temp folder (it is automatically deleted)
◼OCR requires 
IEVision. You will need to 
register it before calling the method
Method Behavior
The following call:
ImageEnMView1.IEMBitmap.CreateSearchablePDF( 'D:\out.pdf', 'My PDF', OCR_English_Language, ievOCRAuto );
Is the same as calling:
// Generate PDF from all images in TImageEnMView
pdfGen := IEVisionLib.createSearchablePDFGenerator( PAnsiChar( AnsiString( '' )), PAnsiChar( AnsiString( IEOCRLanguageList[OCR_English_Language].Code )));
pdfGen.setSegmentationMode( ievOCRAuto );
pdfGen.beginDocument( PAnsiChar( AnsiString( 'D:\out' )), PAnsiChar( AnsiString( 'IEVision PDF Test' )));
for i := 0 to ImageEnMView1.ImageCount - 1 do
begin
  bmp := ImageEnMView1.GetTIEBitmap( i, True );
  bmp.ParamsEnabled := true;
  bmp.Params.Dpi := ImageEnMView1.MIO.Params[i].Dpi;
  pdfGen.addPage( bmp.GetIEVisionImage() );
  ImageEnMView1.ReleaseBitmap( i, False );
end;
pdfGen.endDocument();
pdfGen := nil;
// Create a PDF document from all images in a TImageEnMView
ShowTempHourglass();
ImageEnMView1.IEMBitmap.CreateSearchablePDF( edtFilename.text, 'My PDF', OCR_English_Language, ievOCRAuto );
// Create a PDF document that contains Chinese and English text
ShowTempHourglass();
ImageEnMView1.IEMBitmap.CreateSearchablePDF( edtFilename.text, 'My PDF', 'chi_sim+eng', ievOCRAuto );
// Convert a TIFF file to a searchable PDF document
mbmp := TIEMultiBitmap.create( 'D:\Test_4pages.tiff' );
mbmp.CreateSearchablePDF( 'D:\doc.pdf', 'My PDF', OCR_English_Language, ievOCRAuto );
mbmp.Free;
// Create a searchable PDF file from 3 images
mbmp := TIEMultiBitmap.Create();
mbmp.FillFromList( ['D:\image1.png', 'D:\image2.png', 'D:\image3.png'] );
mbmp.CreateSearchablePDF( 'D:\Out.PDF', 'My Test PDF' );
mbmp.Free;
See Also
◼TIEOCRLanguages
◼LanguageExistsInFolder
◼IEVisionLanguageCodeToName
◼IEVisionLanguageNameToCode