我有一個電子表格,我想使用PHP導入。我可以使用PHPExcel導入單元格數據,但無法弄清楚如何使用電子表格中的圖像。使用PHP在Excel文件(xls)中提取圖片/圖像
有沒有辦法做到這一點,然後使用PHP中的圖像保存到服務器等?
非常感謝您的幫助! :)
更新:
@馬克 - 貝克 - 非常感謝你對這個您的幫助!
我用下面的代碼與一個JPG測試XLS文件:
$objPHPExcel = PHPExcel_IOFactory::load("SH.xls");
foreach ($objPHPExcel->getActiveSheet()->getDrawingCollection() as $drawing) {
if ($drawing instanceof PHPExcel_Worksheet_MemoryDrawing) {
ob_start();
call_user_func(
$drawing->getRenderingFunction(),
$drawing->getImageResource()
);
$imageContents = ob_get_contents();
ob_end_clean();
}
}
我想我可以再輸出JPEG頭和$imageContents
內容來顯示圖像。
如何在電子表格中獲得圖像的實際名稱,例如「Picture1」?這可能與PHPExcel_Worksheet_MemoryDrawing?
我不能夠感謝你!
非常感謝你抽出時間來回答我 - 我真的很感激它!我已經更新了我的問題 - 你願意爲我看看嗎? – SammyBlackBaron 2011-05-31 09:08:57
我試過'$ drawing-> getName();'但它不返回任何內容,只是空白。 'getName()'只用於'PHPExcel_Worksheet_Drawing'對象而不是'PHPExcel_Worksheet_MemoryDrawing'對象嗎? – SammyBlackBaron 2011-05-31 10:29:50
如果您正在從Excel 2007文件中讀取圖像,則應該設置名稱,但如果從Excel BIFF文件讀取圖像,則不會設置名稱......我不知道它是否可以在內部讀取沒有檢查規格的BIFF。 – 2011-05-31 10:52:06