私は、複数の画像をつなぎ合わせる簡単なプログラムを構築しています。問題の画像はかなり大きいものがあります。しかし、私は仕事に以下のコードを取得することはできません。画像がぼんやりしない
out = py.Surface((width, height), flags=py.SRCALPHA)
pos = 0
for i in images:
r = out.blit(i, (0, pos))
print(pos, r)
pos += i.get_rect().size[1]
理論的には、follwingコードがimages
リストから読み込んだ画像を取る必要があり、所定の幅と高さの出力表面にそれらをブリット(計算に基づきますイメージの最大高さと最大値のずれ)。しかし、そうではありません。
0 <rect(0, 0, 256, 44096)>
44096 <rect(0, 0, 0, 0)>
46112 <rect(0, 0, 0, 0)>
48128 <rect(0, 0, 0, 0)>
50144 <rect(0, 0, 0, 0)>
52160 <rect(0, 0, 0, 0)>
あなたがプログラムの出力から見ることができるように、最初の(非常に大きな)画像は罰金ブリットが、他の画像にはありません。
なぜこのようなことが起こっているのか分かりません。このスクリプトの完全なコードはhereです。どんな助けでも大歓迎です。
おそらく、あなたの最初の後の矩形は幅/高さが0であるためです。それは見えなくなります。それらの矩形に幅と高さを追加してみてください。これが私に教えてくれたら、私は答えを投稿することができますが、私はそれをテストしていませんので、わからない場合は回答を投稿したくありません! –