从图像创建PDF时设置文档名称


Set a Document Name when creating a PDF from an Image

我使用以下代码从jpg图像创建pdf:

$im = new Imagick();
$im->readImage('./image.jpg');
$im->setImageFormat('pdf');
$im->writeImage('../images/pdf/image.pdf');

现在我最近看到谷歌索引了image.pdf文件,但作为谷歌搜索页面上的标题,它说"无题"而不是"图像",因为名称是image.pdf。

所以对我来说,PDF似乎有自己的命名,这在我的代码中被遗漏了。如何使用Imagemagick将"无标题"更改为实际标题?

这似乎与ImageMagick无关。你还有其他几个选择:

  • 购买并使用PDFLib库:http://php.net/manual/en/book.pdf.php
  • 使用Zend PHP框架;如何使用它的示例如下:通过PHP将元数据添加到PDF中,此处提供更多信息:http://framework.zend.com/about/faq/
  • 使用PHP exec()函数调用可以设置标题的外部程序
  • OP在评论中提到,还有FPDF:http://www.fpdf.org/这似乎是合适的,因为它可以编写PDF文件并使用其SetTitle()设置标题。FPDF自2011年以来和2008年之前一直没有更新。但是,再一次,它似乎是合适的

就其价值而言,ZendPHP框架可能是我的选择。尽管如果这不是你要做的很多事情,那么exec()函数可能更有意义。