我正在使用MySQL數據庫來保存一些字體。我需要使用自定義字體家族文本創建圖像。我使用SplTempFileObject處理setfont程序方法,但這裏是imagick說:SplTempFileObject和Imagick
Fatal error: Uncaught exception 'ImagickDrawException' with message 'The given font is not found in the ImageMagick configuration and the file ($_SERVER['DOCUMENT_ROOT]php:/temp) is not accessible'
(當然$ _ SERVER [「DOCUMENT_ROOT」]是真正的價值,我只是取代它):)
任何解決方案或我必須保存文件系統中的字體?
下面是代碼:
$image = new \Imagick();
$draw = new \ImagickDraw();
$temp = new \SplTempFileObject();
$temp->fwrite($font->getFile()->getContent());
$image->newImage(550, 50, "black");
$draw->setFont($temp);
$字體是從數據庫數據。我認爲這個問題是因爲ImagickDraw :: setFont()相對於DOC ROOT搜索字體。
哪些呢的var_dump(is_dir($ _ SERVER [ 'DOCUMENT_ROOT'] 'PHP:/ TEMP'。))輸出? – artragis
您可以添加顯示的代碼是否使用'SplTempFileObject' – Baba
@artragis否它不是dir。而且它不應該。我想說的是,imagick相對於文檔根目錄搜索字體。 – CappY