0

pgmagick を使用して、画像にテキストを正常に描画しました。

from pgmagick.api import Image
img = Image((300, 200))
img.annotate('Hello World')
img.write('helloworld.png')

しかし、テキストの境界ボックスを取得する方法は? 誰でも私を助けることができますか?

4

1 に答える 1

0

私は何も知りませんが、 ImageMagickpgmagickを使用してコマンドラインで実行できることをいくつか紹介すると役立つかもしれません。

オプション1

label目的のテキストに十分な大きさのキャンバスを作成するために使用し、 ImageMagickにそのキャンバスのジオメトリの大きさを尋ねます。

convert label:"Hello world" -format %G info:
62x15

したがって、デフォルトのフォント サイズの「Hello world」は、幅 62 ピクセル、高さ 15 ピクセルです。

オプション 2

または、あなたが行ったように使用してから、周囲の余分なスペースをトリミングした場合のサイズをImageMagick-annotateに尋ねます。

convert -size 300x200 xc:red -annotate +10+20 "Hello world" -format %@ info:
61x8+10+12

オプション 3

キャンバスを作成して注釈を付け、トリミングしてサイズを取得します。

convert -size 300x200 xc:red -annotate +10+20 "Hello world" -trim info:
xc:red XC 61x8 300x200+10+12 16-bit sRGB 0.000u 0:00.000

オプション 4

キャンバスを作成し、注釈を付け、トリミングし、保存して、結果の寸法を取得します。

convert -size 300x200 xc:red -annotate +10+20 "Hello world" -trim result.png

identify result.png
result.png PNG 61x8 300x200+10+12 16-bit sRGB 887B 0.000u 0:00.000

たぶん (できれば) これらの 1 つをpgmagick.

于 2016-10-21T16:16:09.180 に答える