There are few cases when there is a need to manipulate documents other than PDF while having the parsing data available in PDF formats. So, for such applications, there will be two scenarios: either they add the functionality of PDF parsing within their solution or add the PDF conversion functionality to manipulate data as supported formats. For the second scenario to convert PDF to Word, Excel, HTML, Images or any required format, implementing PHP reader and converter for PDF code within Java-based code is simple. We are discussing a few cases here so programmers can modify these conversion code snippets according to their requirements.
PDF to Microsoft Word Conversion
require_once ("java/Java.inc");
require_once ("lib/aspose.pdf.php");
use com\aspose\pdf\License;
use com\aspose\pdf\Document;
use com\aspose\pdf\DocSaveOptions;
use com\aspose\pdf\DocSaveOptions_DocFormat;
use com\aspose\pdf\DocSaveOptions_RecognitionMode;
$license = "Aspose.PDF.PHPviaJava.lic";
$licenceObject = new License();
$licenceObject->setLicense($license);
$dataDir = getcwd() . DIRECTORY_SEPARATOR . "samples";
$inputFile = $dataDir . DIRECTORY_SEPARATOR . "sample.pdf";
$outputFile = $dataDir . DIRECTORY_SEPARATOR . 'result-pdf-to-docx.docx';
$document = new Document($inputFile);
$saveOption = new DocSaveOptions();
$saveOption->setMode(DocSaveOptions_RecognitionMode::$EnhancedFlow);
$saveOption->setFormat(DocSaveOptions_DocFormat::$DocX);
$document->save($outputFile, $saveOption);
Aspose.PDF for PHP library supports all PDF to Word conversions. In case we are just converting Microsoft Word documents without any special settings, we just load the PDF file using the Save method from the Document class and will use with output Word document path and SaveFormat as parameters. For the special cases where there is a need to enhance the lines distance, image resolution, and more settings, API has DocSaveOptions class that exposes all such settings.
Save PDF as Excel Files
require_once ("java/Java.inc");
require_once ("lib/aspose.pdf.php");
use com\aspose\pdf\Document;
use com\aspose\pdf\ExcelSaveOptions;
use com\aspose\pdf\ExcelSaveOptions_ExcelFormat;
use com\aspose\pdf\License;
$license = "Aspose.PDF.PHPviaJava.lic";
$licenceObject = new License();
$licenceObject->setLicense($license);
$dataDir = getcwd() . DIRECTORY_SEPARATOR . "samples";
$inputFile = $dataDir . DIRECTORY_SEPARATOR . "sample.pdf";
$outputFile = $dataDir . DIRECTORY_SEPARATOR . 'sample.xlsx';
$document = new Document($inputFile);
$saveOption = new ExcelSaveOptions();
$saveOption->setFormat(ExcelSaveOptions_ExcelFormat::$XLSX);
$document->save($outputFile, $saveOption);
Specialized SaveFormat.Excel Enumeration available for saving PDF to specific Microsoft Excel XLS XLSX output formats. Moreover, PHP/Java PDF Library also have a speicific ExcelSaveOptions class that not only deals saving to Excel formats but also provides different functions and properties for setting different attributes like exact output format, minimize number of worksheets and more.
Convert PDF to PowerPoint Presentations
require_once ("java/Java.inc");
require_once ("lib/aspose.pdf.php");
use com\aspose\pdf\Document;
use com\aspose\pdf\PptxSaveOptions;
use com\aspose\pdf\License;
$license = "Aspose.PDF.PHPviaJava.lic";
$licenceObject = new License();
$licenceObject->setLicense($license);
$dataDir = getcwd() . DIRECTORY_SEPARATOR . "samples";
$inputFile = $dataDir . DIRECTORY_SEPARATOR . "sample.pdf";
$outputFile = $dataDir . DIRECTORY_SEPARATOR . "results" . DIRECTORY_SEPARATOR . 'sample.pptx';
$document = new Document($inputFile);
$saveOption = new PptxSaveOptions();
$document->save($outputFile, $saveOption);
PHP API supports converting PDF pages to PowerPoint Presentation Slides with selectable text or images by rendering slides as images. Pattern of saving Portable Document Format to PowerPoint is almost same, Loading the file using Document class and then calling the Save method with output file path and SaveFormat as parameters. In case of rendering with special presentation options, Programmers can use PptxSaveOptions class with any relevant specific rendering options. Calling the save method and passing the options as parameter.
PDF to HTML Conversion
require_once ("java/Java.inc");
require_once ("lib/aspose.pdf.php");
use com\aspose\pdf\Document;
use com\aspose\pdf\HtmlSaveOptions;
use com\aspose\pdf\License;
$licensePath = "Aspose.PDF.PHPviaJava.lic";
$license = new License();
$license->setLicense($licensePath);
$dataDir = getcwd() . DIRECTORY_SEPARATOR . "samples";
$inputFile = $dataDir . DIRECTORY_SEPARATOR . "sample.pdf";
$outputFile = $dataDir . DIRECTORY_SEPARATOR . 'pdf-to-html.html';
$document = new Document($inputFile);
$saveOption = new HtmlSaveOptions();
$document->save($outputFile, $saveOption);
PDF Parsing Library supports saving PDF to HTML as whole as well as with embedded resources including images. Procedure of conversion is same as PDF to other formats for generic cases, like loading the source document and calling the Save method with output HTML file path and SaveFormat.Html as parameters. In case of saving with embedded resources, there is a HtmlSaveOptions class having multiple options like saving images to a specific folder during the conversion, splitting the resultant HTML into multiple pages and more.
Convert PDF to Images
require_once ("java/Java.inc");
require_once ("lib/aspose.pdf.php");
use com\aspose\pdf\Document;
use com\aspose\pdf\devices_Resolution;
use com\aspose\pdf\devices_JpegDevice;
use com\aspose\pdf\License;
$licenceObject = new License();
$licenceObject->setLicense("Aspose.PDF.PHPviaJava.lic");
$dataDir = getcwd() . DIRECTORY_SEPARATOR . "samples";
$inputFile = $dataDir . DIRECTORY_SEPARATOR . "sample.pdf";
$imageFileNameTemplate = $dataDir . DIRECTORY_SEPARATOR . 'pdf-to-jpeg-';
$document = new Document($inputFile);
$pages = $document->getPages();
$count = $pages->size();
$resolution = new devices_Resolution(300);
$imageDevice = new devices_JpegDevice($resolution);
for ($pageCount = 1; $pageCount <= $document->getPages()->size(); $pageCount++) {
$imageFileName = $imageFileNameTemplate . $pageCount . '.jpg';
$page = $document->getPages()->get_Item($pageCount);
$imageDevice->process($page, $imageFileName);
}
Converting PDF pages into images including PNG, JPEG, TIFF, BMP etc is easy within Java based applications using code snippets listed below. Developers can loop through PDF pages after loading the file and convert Page by Page to required image format. Developers can set the horizental and vertical resolution of images using Resolution class