先日来、色々やってたホームサイネージですが、画像が適正に表示されないという問題を抱えていました。やっと解決です。
液晶ディスプレイの解説書や説明にも 1024×600( 私は縦置きで表示させているので、 600×1024) の解像度と記載があります。しかし、どうも使っている Python ライブラリの pygame はそうは思っていないっぽいのです。
大きい画像を縮小したり拡大させたりするオーバーヘッドをなくすため、あらかじめ 600×1024 サイズに変更してサイネージの表示用としていました。ソースコードや pygame の説明を読んでみてもボーダーが表示される理由がわからなかったのです。
しかし、もしかしたら解像度を違った数字で認識しているんじゃないかと思い、テストしてみるとビンゴでした。解像度は 768×1366 でした。このサイズでリサイズして表示させてみるとフルサイズで表示してくれます。冒頭の写真は上下にまだ余白がありますが、写真と液晶の縦横比が異なるためで、これは仕方がありません。全ての写真は 768px の横幅にリサイズしてありますので、最大の大きさで表示してくれていることになります。
しかし、説明書にも書かれているのに実際の解像度がそれを上回るというのはどういうことなんでしょうね。 pygame ライブラリだけの問題なのか、ホントにその解像度なのか。とりあえず目的は達成できたので、それ以上の深追いはやめておきます。
天が我が肉体を苦しめるならば、我は精神を安楽にして肉体の苦しみを補う。天が我が境遇を行き詰まらせるならば、我は我が道を高尚にして貫き通す。
洪子「菜根譚」
投稿者プロフィール
最新の投稿
- Tech2024年11月28日ChromeOS flex を古いノートにインストール
- Linux2024年11月16日Ubuntu で外付け SSD の容量が違って見える
- Linux2024年11月13日Windows インストールできず。 Ubuntu に変更
- Windows2024年11月8日Windows11 起動せず