簡體   English   中英

ImageMagick創建縮略圖

[英]ImageMagick creating thumbnail

這是使用imagemagick創建動畫文本的代碼。

$label=$_POST["label"];
$cmd = " -background transparent -font $font -pointsize $size label:$label -stroke black -strokewidth 2 ".
"  \( -clone 0 -tile \"" . $image . "[0]\" -stroke black -strokewidth 2 -gravity center -annotate +0+0 $label \) ".

當我在標簽字段中輸入“ 1234”時,上述代碼可以正常工作……但是當我鍵入“ 12 34”時,它並沒有起作用,它僅顯示“ 12”,並且字符之間沒有空格。完成“標簽”變量..不確定如何解決..請幫助我解決此問題...

我的帖子已編輯。 看看臭名昭著,這是比我更好的答案

string escapeshellarg ( string $arg )

應該可以解決問題,再加上它允許您將字符串直接傳遞給作為單個安全參數的shell函數

使用撇號,例如http://www.imagemagick.org/Usage/text/#label中的示例“多行標簽”

$cmd = " -background transparent -font $font -pointsize $size label:'$label' -stroke black -strokewidth 2 ".

將整個字符串放在雙引號中,因為命令行中不允許使用空格。 在下面的代碼中,我使用\\"轉義序列將$label兩種用法括在雙引號中:

$label=$_POST["label"];
$cmd = " -background transparent -font $font -pointsize $size label:\"$label\" -stroke black -strokewidth 2 ".
"  \( -clone 0 -tile \"" . $image . "[0]\" -stroke black -strokewidth 2 -gravity center -annotate +0+0 \"$label\" \) ".

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM