How to Convert Images to PDF from Uploaded Files for Image to PDF API in PHP and PDF.co Web API
These tutorials explain the code material for beginners and advanced programmers who are using PHP. PDF.co Web API helps with Image to PDF API in PHP. PDF.co Web API is the Rest API that provides a set of data extraction functions, and tools for document manipulation, splitting, and merging of PDF files. Includes built-in OCR, and image recognition, and can generate and read barcodes from images, scans, and PDFs.
Fast application programming interfaces of PDF.co Web API for PHP plus the instruction and the code below will help to learn how to convert images to PDF from uploaded files. For the implementation of this functionality, please copy and paste the code below into your app using the code editor. Then compile and run your app. Use of PDF.co Web API in PHP is also explained in the documentation included along with the product.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
image-to-pdf.php
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Image To PDF Conversion Results</title> </head> <body> <?php // Note: If you have input files large than 200kb we highly recommend to check "async" mode example. // Get submitted form data $apiKey = $_POST["apiKey"]; // The authentication key (API Key). Get your own by registering at https://pdf.co // 1. UPLOAD FILES TO CLOUD // If you already have direct file links, skip to Step 2. $uploadedFiles = array(); $fileCount = count($_FILES["files"]["name"]); for($i = 0; $i < $fileCount; $i++) { // 1a. RETRIEVE THE PRESIGNED URL TO UPLOAD THE FILE. // Create URL $url = "https://api.pdf.co/v1/file/upload/get-presigned-url" . "?name=" . urlencode($_FILES["files"]["name"][$i]) . "&contenttype=application/octet-stream"; // Create request $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, array("x-api-key: " . $apiKey)); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // Execute request $result = curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $json = json_decode($result, true); // Get URL to use for the file upload $uploadFileUrl = $json["presignedUrl"]; // Get URL of uploaded file to use with later API calls $uploadedFileUrl = $json["url"]; // 1b. UPLOAD THE FILE TO CLOUD. $tmpFilePath = $_FILES["files"]["tmp_name"][$i]; $fileHandle = fopen($tmpFilePath, "r"); curl_setopt($curl, CURLOPT_URL, $uploadFileUrl); curl_setopt($curl, CURLOPT_HTTPHEADER, array("content-type: application/octet-stream")); curl_setopt($curl, CURLOPT_PUT, true); curl_setopt($curl, CURLOPT_INFILE, $fileHandle); curl_setopt($curl, CURLOPT_INFILESIZE, filesize($tmpFilePath)); // Execute request curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $uploadedFiles[] = $uploadedFileUrl; } else { // Display request error echo "<p>Uploading File Status code: " . $status_code . " : " . $uploadedFileUrl . "</p>"; echo "<p>error status for uploading files (1 means error related to php.ini config or tmp folder permissions): " . $_FILES['files']['error'] . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "cURL Error: " . curl_error($curl); } fclose($fileHandle); } else { // Display request error echo "<p>Error Uploading: Status code: " . $status_code . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "cURL Error: " . curl_error($curl); } curl_close($curl); } // 2. CREATE PDF DOCUMENT FROM UPLOADED IMAGE FILES if (count($uploadedFiles) > 0) { ImageToPdf($apiKey, $uploadedFiles); } function ImageToPdf($apiKey, $uploadedFiles) { // Create URL $url = "https://api.pdf.co/v1/pdf/convert/from/image"; // Prepare requests params $parameters = array(); $parameters["name"] = "result.pdf"; $parameters["url"] = join(",", $uploadedFiles); // Create Json payload $data = json_encode($parameters); // Create request $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, array("x-api-key: " . $apiKey, "Content-type: application/json")); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Execute request $result = curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $json = json_decode($result, true); if ($json["error"] == false) { $resultFileUrl = $json["url"]; // Display link to the file with conversion results echo "<div>## Conversion Result:<a href='" . $resultFileUrl . "' target='_blank'>" . $resultFileUrl . "</a></div>"; } else { // Display service reported error echo "<p>PDF.co API execution Error: " . $json["message"] . "</p>"; } } else { // Display request error echo "<p>API Call Status code: " . $status_code . ": " . $url . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "cURL Error 2: " . curl_error($curl); } // Cleanup curl_close($curl); } ?> </body> </html>
How to Convert Image to PDF in PHP using PDF.co Web API
This tutorial will show you how to convert an image to PDF with PDF.co Web API using PHP programming language. I’m going to show you the image that we’re going to convert for this tutorial. Now prepare your HTML and PHP code.
Next, run your code on your localhost. Put your API key on the API key field and choose the image file that you’re going to convert. Then press the proceed button.
Once the conversion is completed, you will be given a temporary link to view and download your output PDF. Here’s what the output looks like.
VIDEO
ON-PREMISE OFFLINE SDK
See also:
ON-DEMAND REST WEB API
Get Your API Key
See also:
PDF-co-Web-API-PHP-Convert-Images-To-PDF-From-Uploaded-Files.pdf