2013-06-06 4 views
1

Kivy에서 RstDocument를 투명하게 만들 수 있습니까?Kivy에서 RstDocument의 투명도

설정 색상에 사용할 수있는 DICT 속성 colors,있다 :

class TipRstDocument(RstDocument): 
    colors = DictProperty({ 
     'background': '000000', 
     'link': 'ce5c00', 
     'paragraph': '202020', 
     'title': '204a87', 
     'bullet': '000000'}) 

하지만 어떻게 설정하는 투명성은?

답변

0

에서

, 그래서 때마다 RstDocument는 백그라운드에서 RGBA을 설정 한 경우에도 (투명도없이 캔버스에 그릴 수있다 in DictProperty).

나를위한 해결책은 rst.py 파일에서이 섹션을 삭제 한 다음 자신의 canvasrgba 속성 (투명도 포함)으로 설정하는 것입니다.

2

모든 Kivy Widget에는 Opacity 속성이 있습니다.이 속성은 위젯의 불투명도를 설정할 때 사용할 수 있으며 그 자식입니다. 따라서 rst_doc_instance.opacity = .5를 사용하면 인스턴스의 불투명도를 50 %로 변경할 수 있습니다.

업데이트 : 1.7.2-dev RstDoc에는 이제 기본 설정에 따라 배경색을 설정하는 데 사용할 수있는 background_color 속성이 있습니다. 따라서 귀하의 경우 : 내가 kivy/uix/rst.py에서 기본 설정에서 rgb 속성이 있음을 canvas을 발견

RstDocument: 
    background_color: 1, 1, 1, .5 # 50 translucent white  
+0

나는이 속성을 놓쳤으므로 대단히 감사합니다. 매우 빠르고 간단한 해결책으로 +1합니다. 그러나 불투명도는 배경이 아닌 전체 위젯에 설정됩니다 (배경, 텍스트 등). 나는 당신이 아래에서 찾을 수있는 나를 위해 더 나은 해결책을 찾았습니다. –

+0

그런 경우 질문에서 RstDoc 위젯 배경에서만 투명성을 찾고, 질문에서 암시하는 전체 위젯이 아니라는 점을 명확히해야합니다. 귀하의 대답은 작품, 그것은 또한 kivy 자체에서 해결되어야하는 불일치를 강조 표시합니다. –

+1

1.7.2-dev에서 수정되었으므로 http://kivy.org/docs/api-kivy.uix.rst.html#kivy.uix.rst.RstDocument.background_color를 사용할 수 있습니다. –