我使用的是Concrete5,我试图显示各种上传文件的缩略图。虽然其中一些可能是图像,但大多数是PDF。具体5:将文件缩略图设置为生成的图像(例如PDF)
我目前使用:
<?php
$file = File::getByID($fID);
$imageHelper = Core::make('helper/image');
try {
$imageHelper->outputThumbnail($file, 200, 200);
} catch(InvalidArgumentException $e) { ?>
<img src='https://placehold.it/200x200'>
<?php } ?>
我更喜欢以某种方式创建PDF文件的缩略图更小,例如通过在后台使用ghostscript的。在内置的文件管理器中,至少会显示一个PDF图标。这将是一个非理想的选择,但仍然比不显示任何东西来表示我们正在处理PDF。
如何访问内置缩略图?而且,更重要的是,如何在上传时适当覆盖某些文件类型?
编辑:
我碰到$file->getThumbnailURL('type');
,创造了我自己的目的的类型。如何在文件上传时自动生成这样的缩略图?我可能会想出如何用纯PHP生成文件,但将其存储在Concrete5中是我不确定的事情。
我不知道C5是否支持这个有趣的问题。如果不能解决问题,您可以考虑自己处理缩略图生成,生成并将它们存储在单独的目录中。 –
@Pekka我确实认为这有点..我注意到有一个'on_file_add'事件挂钩。你会如何建议将缩略图与文件相关联?根据文件ID创建一个目录结构?或者我可以以某种方式设置自定义缩略图类型的位置?感谢您提出这个! – Joost