PythonのPIL(Pillow)で文字出力をして遊んでみました
以前のブログでPythonのPIL(Pillow)で画像解析やってみたりしてました。
それはさておき、せっかく画像処理ライブラリを使えるようになったので、少しばかり遊んでみることにしました。
とりあえず出来たのが以下の動画です(Pythonで行ったのは画像出力までで、動画にするのはffmpegを使ってます)。円周率の数字を延々と流れるように出力しています。
処理としては1文字ずつ座標計算して出力する位置を決めています。今回は一度に5つ文字を出力させました。せっかくなので文字色もグラデーションになるようにそれぞれ変えてみました。座標計算で画面端まで行ったときの処理をどうすればいいか若干悩みましたが、座標計算用の関数を作ることで対処出来ました。
あと、この動画では数字を出力してるだけですが、日本語を扱おうとしたらどうにも出力されずに困りました。それに関してはPILのフォントを扱う関数の扱いをちゃんと読んでいなかったのが原因。truetypeフォントを指定してるのに、ビットマップフォント用の関数を使っちゃってたり、関数が適切でもフォントの指定で日本語を持たないものを指定しちゃってたり。
まぁなにはともあれ、一応カタチになるものが出来たので今回は満足です。
Amazon Python関連書籍など
それはさておき、せっかく画像処理ライブラリを使えるようになったので、少しばかり遊んでみることにしました。
とりあえず出来たのが以下の動画です(Pythonで行ったのは画像出力までで、動画にするのはffmpegを使ってます)。円周率の数字を延々と流れるように出力しています。
処理としては1文字ずつ座標計算して出力する位置を決めています。今回は一度に5つ文字を出力させました。せっかくなので文字色もグラデーションになるようにそれぞれ変えてみました。座標計算で画面端まで行ったときの処理をどうすればいいか若干悩みましたが、座標計算用の関数を作ることで対処出来ました。
あと、この動画では数字を出力してるだけですが、日本語を扱おうとしたらどうにも出力されずに困りました。それに関してはPILのフォントを扱う関数の扱いをちゃんと読んでいなかったのが原因。truetypeフォントを指定してるのに、ビットマップフォント用の関数を使っちゃってたり、関数が適切でもフォントの指定で日本語を持たないものを指定しちゃってたり。
まぁなにはともあれ、一応カタチになるものが出来たので今回は満足です。
Amazon Python関連書籍など
コメント
コメントを投稿