我使用的是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