2

こんにちは皆さん、私はここに来たばかりで、英語が下手です。申し訳ありません。

開始位置に問題がありますimagettfstring。アラビア語は右から左にあるため、アラビア語をカスタム位置に保つのに問題があります。たとえば、右から 50px 離れています。

画像で私が何を意味するかを示そうとしています: ここに画像の説明を入力

可能であれば、下部の赤いテキストを右から開始したいのですが、テキストは左から右に開始しています。黒い線を白い線に貼り付ける方法はありますか? テキストが大きくなったら、茶色の矢印の方向に移動したい

私が使用しているコード:

<?php
    require_once("image.php");
    $image = new image;
    if (isset($_REQUEST["name"])) {
        $image -> createFromFile(1, "gbg.png");
        $c = $image -> arabttfBox(45, 0, "andlso.ttf", $_REQUEST["name"]);
        $image -> arabttfString(1, $c[0], "andlso.ttf", 45, "#F00", 0, 0 , 100);
        $image -> arabttfString(1, $_REQUEST["name"], "andlso.ttf", 45, "#F00",
                                0, 0 , 520);
        $image -> display(1, "png");
    } else {
        $image -> create("error", 400, 100, "#333");
        $image -> border("error", "#000", "3");
        $image -> string("error", "Post a name", 5, "#F00", 10, 10, true, true);
        $image -> display("error", "png");
    }
?>

画像: ここに画像の説明を入力

コピーする場合はアラビア語のテキスト:

スマー・シーリー

フォントをアップロードしたい場合は、教えてください。

少し考えた後、私はそれを解決しました:

list($IW, $IH) = $this -> dimensions($ID);
list($FW, $FH) = $this -> arabttfBox($Size, $Angle, $Font, fagd($string));
return imagettftext($this -> image[$ID], $Size, $Angle, $IW-$FW-$X, $Y,
                    imagecolorallocate($this -> image[$ID], $R, $G, $B),
                    $Font, fagd($string));
4

1 に答える 1