2016-11-26 8 views
1

複数のウィジェットのキャンバスに(四角形のプリムを使用して)テクスチャを描画すると、一部のウィジェットが部分的に透明になり、後ろの画像が見えるようになりました。Kivy Canvas Alpha Issue

この動作を停止する方法はありますか?

+0

私はこの動作に精通していません。最小限の実行可能な例を提供できますか? – inclement

+0

特定のコードはありません。私のアプリはこのように分解されています... 1ウィジェットクラスはゲームの世界を表します。他のすべてのウィジェットは、この1つのウィジェットから追加および削除されます。スクロールビューは、ゲームワールドウィジェットを保持するために作成されます。私は、ゲーム世界のオブジェクトを表す他のモジュールにウィジェットクラスを持っています。各オブジェクトクラスにはキャンバスからイメージをレンダリングするウィジェットのセットがあります。各画像はio.BytesIOメソッドでローアされ、テクスチャに変換された後、キャンバスのRectangleプリムにtexture = bytesimageとして描画されます。 – chitondihk

+0

私のアプリを実行すると、一部のPNG画像は完全に透過的で、他の部分は透けて見えます。ウィンドウを拡大すると、すべてのウィジェットのサイズを変更するモジュールがあります。ウィンドウを拡大すると、画像の透明なレンダリングがシャッフルするようです。見ることのできないウィジェットの一部が見える一方で、見えているものは見えなくなります。 Kivy 1.9.0 – chitondihk

答えて

0

kivy開発に関係する誰かが、イメージと共にウィジェットのバックグラウンドプロパティを使っている間に、rgbaを扱うmod/dllを壊しました。キャンバスは、kivyでグラフィックスを描く唯一の信頼できる方法です。デスクトップ/ラップトップのビジュアルであなたを欺くことはできません。アプリをkivyランチャーで実行するかapkにビルドするまで、この問題は表示されません。

Androidでテストされています(ios以外)。