名前
Cv::Pango - Pango を使っていろいろな文字を描く
概要
use Cv;
use Cv::Pango;
my $img = Cv::Mat->new([240, 320], CV_8UC4);
$img->putText(
"\x{03A0}\x{03B1}\x{03BD}\x{8A9E}", # "Παν語",
[20, 200], 'Sans Serif 42',
);
$img->showImage;
$img->waitKey;
説明
Cv::Pango
は、Pango を使用して、いろいろな文字を描きます。 Cv::Arr::PutText() そのものを置き換えます。
メソッド
- $img->putText($text, $org, $font, $color)
-
$img は Cv::Arr のオブジェクトです。$font は Pango::FontDescription の オブジェクトかフォントを識別するための文字列を指定します。InitFont() で 作成したフォントも使えます。PutText のその他のパラメータの詳細は OpenCV の cvPutText() を参照してください。
フォントを識別するための文字列は次のとおり。
"[FAMILY-LIST] [STYLE-OPTIONS] [SIZE]"
具体的には、
"sans bold 12" "serif,monospace bold italic condensed 16" "normal 10"
詳細は pango.FontDescription() を参照してください。
- $font->getTextSize($text, my $size, my $baseline)
-
文字列のサイズとベースラインを求めます。サイズは幅と高さです。このサブ ルーチンは Pango::FontDescription に配置されます。行儀が悪いと思うので すが、どうすればいいのか分っていません。
エクスポート
ありません。
バグ
いまのところ、CV_8UC1 と CV_8UC4 しか使えません。
このパッケージは、フォントが Pango::FontDescription のオブジェクトにな るので、この名前空間に cvGetTextSize() を置きます。もっと上手なパッチの あて方をご存知の方は教えてください。
参考
著作権
Yuta MASUDA <yuta.masuda@newdaysys.co.jp>
Copyright (c) 2010, 2011, 2012 by Yuta MASUDA.
All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.