我試圖在Ubuntu 12.04服務器上使用ImageMagick動態創建簡單的名片。這是通過一個PHP頁面完成的。我試圖安裝MagickWand,但它並沒有真正的工作,所以我現在使用ImageMagick語法並通過PHP函數exec()
執行它。Imagemagick - 相同的命令在PHP或控制檯中給出不同的輸出
我取得良好的進展,並有基本或多或少完成,輸出圖像看起來還好,我現在微調,正確的設置位置,改變字體和大小等
我們的平面人希望該文本以粗體標題顯示在Arial中,所以我在服務器上安裝了msttcorefonts。從那以後,輸出圖像中的文本是斜體的,它忽略了我使用的任何字體。好奇的是:如果我將命令複製到頁面,將其複製並粘貼到ubuntu控制檯,那裏創建的圖像使用正確的字體,正是我想要的。
因此,似乎當我通過控制檯執行命令時,一切都很好,但是當我通過exec()
在PHP中執行它時,ImageMagick似乎無法識別字體。有誰知道爲什麼?另外,如果它不能識別字體,爲什麼它默認爲斜體,或者說,爲什麼在安裝字體後默認更改?
這是目前我測試的命令(更改後的名稱和聯繫方式):
convert \
-size 1051x697 \
xc:none \
-density 300 \
-fill white \
draw "rectangle 0,0 1051,697" \
-fill black \
-font Arial-Negreta \
-pointsize 9 \
-draw "text 140,175 'Hotel Example'" \
-font Arial-Normal \
-pointsize 6 \
-draw "text 140,220 'Example Street 8'" \
-draw "text 140,240 '12345 Exampletown'" \
-draw "text 140,280 'Telefon: 123 45 67 89 0'" \
-draw "text 140,300 'Fax: 234 56 78 90'" \
-draw "text 140,340 'http://www.example.de'" \
-draw "text 140,360 '[email protected]'" \
-stroke none -fill orange -draw "rectangle 1,32 1050,75" \
-fill grey \
-draw "rectangle 1,75 1050,100" \
-fill orange \
-draw "rectangle 1,626 1050,665" \
test_front.png
編輯:
我只注意到運行該命令從Ubunut控制檯還只能在我的主目錄,而不是在我的/ var/www目錄中。正如APiK指出的那樣,這可能是用戶的事情。
我想upvote它。問題是,我只是剛剛註冊,而當我嘗試註冊時,我只收到一條消息,告訴我至少需要15個聲望。 – Christian
啊......我不知道你需要15個聲望點才能被允許upvote ... –