You've reached a page on the Ren'Py wiki. Due to massive spam, the wiki hasn't been updated in over 5 years, and much of the information here is very out of date. We've kept it because some of it is of historic interest, but all the information relevant to modern versions of Ren'Py has been moved elsewhere.
Some places to look are:
Please do not create new links to this page.
Ren'Py 6.15 以降では、日本語などにおける縦書き表示をサポートしています。
部分的に縦書き表示を行う場合は vert
タグを使用します。このタグを使用すると、横書きテキストの中に縦書きテキストが90度回転された状態で表示されます。
ゲーム全体にわたって縦書き表示を行う場合は、screens.rpy
を修正して画面を縦書き用のレイアウトに変更する必要があります。縦書き表示の途中に英単語などを横書き表示する場合は horiz
タグを使用します。この場合、テキストは-90度回転した状態で表示されます。
縦書き表示を行う場合、縦書き表示に対応したフォントを使用することをお勧めします。縦書きに対応したフォントは、縦書き用のグリフや縦書き用のメトリックを保持しているため、一般的なフォントに比べて適切に表示されることが期待できます。例えば日本語における句読点の位置や括弧の向きは、縦書き時と横書き時で異なります。
多くの日本語フォントが縦書きに対応しています。フリーのものでは、例えばIPAフォントやY.OzFontなどがあります。
縦書き表示に関係する主な設定項目を以下に示します。
以下に一例を示します。
screen say:
# Defaults for side_image and two_window
default side_image = None
default two_window = False
# Decide if we want to use the one-window or two-window varaint.
if not two_window:
# The one window variant.
window:
id "window"
has hbox:
style "say_hbox"
box_reverse True
xalign 1.0
if who:
text who id "who" vertical True
text what id "what" vertical True
else:
# The two window variant.
hbox:
style "say_two_window_hbox"
box_reverse True
xalign 1.0
if who:
window:
style "say_who_window"
text who:
id "who" vertical True
window:
id "window"
has hbox:
style "say_hbox"
box_reverse True
xalign 1.0
text what id "what" vertical True
# If there's a side image, display it above the text.
if side_image:
add side_image
else:
add SideImage() xalign 0.0 yalign 1.0
# Use the quick menu.
use quick_menu
screen choice:
window:
style "menu_window"
xalign 0.5
yalign 0.5
hbox:
style "menu"
spacing 2
box_reverse True
for caption, action, chosen in items:
if action:
button:
action action
style "menu_choice_button"
xminimum None xmaximum None
text caption style "menu_choice" vertical True
else:
text caption style "menu_caption" vertical True
init -1 python:
config.narrator_menu = True
style.menu_window.set_parent(style.default)
style.menu_choice.set_parent(style.button_text)
style.menu_choice.clear()
style.menu_choice_button.set_parent(style.button)
style.menu_choice_button.yminimum = int(config.screen_height * 0.75)
style.menu_choice_button.ymaximum = int(config.screen_height * 0.75)
screen nvl:
window:
style "nvl_window"
xmaximum 800
ymaximum 600
has hbox:
style "nvl_hbox"
box_reverse True
xalign 1.0
# Display dialogue.
for who, what, who_id, what_id, window_id in dialogue:
window:
id window_id
has vbox:
spacing 10
xalign 1.0
if who is not None:
text who id who_id vertical True xalign 1.0
text what id what_id vertical True
# Display a menu, if given.
if items:
hbox:
box_reverse True
id "menu"
for caption, action, chosen in items:
if action:
button:
style "nvl_menu_choice_button"
action action
xfill False yfill True xmargin 0
text caption style "nvl_menu_choice" vertical True
else:
text caption style "nvl_dialogue" vertical True