4

Renpy は、 を使用して画面に表示されるテキストを表示するために、多くの python とカスタム コードを使用しsay statementます。

renpy 内でいくつかの問題に遭遇した後nvl mode、画面に表示される行数を知る必要があることがわかりました (当然のことながら、フォント サイズとテキスト ウィンドウのサイズを考慮して)。

だから私の質問

それに関してドキュメントに何も見つからなかったので、表示されるテキストの高さを事前に計算するコマンドまたはその他の可能性があるかどうか疑問に思っていますか?

4

1 に答える 1

1

get_virtual_layout()の一部class Textですtext.py

私はこれをコピーしましたtext.py

# Find the virtual-resolution layout.
virtual_layout = self.get_virtual_layout()
# The laid-out size of this Text.
vw, vh = virtual_layout.size

これは有望だと思います。

仮想テキスト サイズ (幅、高さ) を使用すると、テキスト ウィンドウのサイズ (幅、高さ) を使用してテキスト行を計算できる可能性があります。

pseudo code:
lines = int(vw/text_window.width)
#the text height would then be
text_height_needed = int(lines*vh)
# does it fit in completely
complete_text_in_window = text_window.height >= text_height_needed
# visible lines
visible_lines = int(text_window.height/vh)

また、の使用法を知るために、text.py(たとえば)を詳しく調べることも価値があります。def render(self, width, height, st, at)virtual_layout

それが何らかの形で役立つことを願っています。

更新

def render(...)仮想レイアウトを初期化するため、もう None ではありませんが、幅と高さがスケーリングされget_virtual_layout()た のインスタンスを表します。Layout()

于 2016-12-23T06:58:09.083 に答える