1

我正在使用csxi将文档网扫描为图像,但我必须将 pdf 文件上传到服务器。如何在 php 中将图像转换为 PDF?或者有没有办法让csxi扫描文档作为PDF而不是图像

4

4 回答 4

3

如果你的机器上安装了 ImageMagick,你可以使用PHP 的 ImageMagick 绑定来执行一些简单的 PHP 代码来完成这个任务:

$im=new Imagick('my.png');
$im->setImageFormat('pdf');
$im->writeImage('my.pdf');

或者,如果您没有可用的 ImageMagick,您可以使用商业 API,例如Zamzar,它支持通过 PHP 将图像转换为 PDF(文档中的更多信息)。

使用它的代码是:

<?php
// Build request
$endpoint = "https://api.zamzar.com/v1/jobs";
$apiKey = "YOUR_API_KEY";
$sourceFilePath = "my.png";
$targetFormat = "pdf";

$sourceFile = curl_file_create($sourceFilePath);    
$postData = array(
  "source_file" => $sourceFile,
  "target_format" => $targetFormat
);

// Send request
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $endpoint);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, $apiKey . ":");
$body = curl_exec($ch);
curl_close($ch);

// Process response (with link to converted files)
$response = json_decode($body, true);
print_r($response);
?>
于 2017-11-17T11:31:31.800 回答
2

将您的图像包裹在里面HTML并使用HTML to PDF converter类似fpdfmpdf

于 2012-09-12T09:42:37.163 回答
0

您可以使用 convertapi 服务,易于安装:

作曲家需要 convertapi/convertapi-php
require_once('vendor/autoload.php');

use \ConvertApi\ConvertApi;

//get api key: https://www.convertapi.com/a/si
ConvertApi::setApiSecret('xxx');

$result = ConvertApi::convert('pdf', ['File' => '/dir/test.png']);

# save to file
$result->getFile()->save('/dir/file.pdf');

转换多个文件和其他选项检查https://github.com/ConvertAPI/convertapi-php

于 2018-06-27T12:04:22.983 回答
-3

对于几张图片,使用 Chrome 网络浏览器手动轻松地完成。您将不需要互联网连接。

  1. 将以下带有.html扩展名的内容保存在图像的同一文件夹中:
<html>
 <body>
 <img src="image.jpg" width="100%">
</body>
</html>
  1. 用谷歌浏览器打开 html 文件,
  2. Crtl + P,打开打印对话框
  3. 选择另存为 PDF,将其保存在本地
  4. 或者,您可以通过 Google 云打印将副本发送到您的智能手机
于 2014-10-11T17:15:22.630 回答