HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0906
nepissatいろいろな解像度の場合での 中心4解決


nepissat

リンク

2014/9/6(Sat) 13:49:22|NO.64716

1920x1200の解像度で、pos命令を実行して画像をど真ん中に表示しても、
1366x768の解像度で1920x1200の時と同じposで画像を表示すると、位置がずれてしまいます。

そこで、ginfoで解像度を取得して、計算で中心を求めるみたいなことをしたいのですが、
どうすればできますか?

(なんか日本語おかしくなってすいません。 また、ほかに方法があるなら教えてください。"



この記事に返信する


たんす

リンク

2014/9/6(Sat) 13:57:28|NO.64717

図を描くとわかりやすいのですが、
「画面の幅の半分」から「画像の幅の半分」を引けば、画像の左端座標になります。
計算式なら「(画面幅−画像幅)÷2」ですかね。
縦も同様で。



kanahiron

リンク

2014/9/6(Sat) 14:03:31|NO.64718

表示させる文字列が予め決まっていたり動的に変化しないのであれば、
bufferに描画させ高さ幅を取得してディスプレイのクライアント領域(ry

	gsel 0,-1
buffer 1 font "MS Pゴシック",30 mes "ワロタ〜〜よワロタ" mesw = ginfo_mesx mesh = ginfo_mesy screen 2,ginfo_dispx,ginfo_dispy,0,,,640,480 font "MS Pゴシック",30 repeat redraw 0 color 255,255,255 boxf color line ginfo_winx/2,-1,ginfo_winx/2,ginfo_winy+1 line -1,ginfo_winy/2,ginfo_winx+1,ginfo_winy/2 pos (ginfo_winx-mesw)/2,(ginfo_winy-mesh)/2 mes "ワロタ〜〜よワロタ" redraw 1 await 16 loop stop
screen 2なので自由に大きさを変えられます
描画文字を変えたいときはgselで描画先を変えて取得してまたgselで変えて…でしょうか(スマートじゃないですね…)



kanahiron

リンク

2014/9/6(Sat) 14:06:32|NO.64719

あ 画像でしたね ちゃんと質問文読んでなかった
↑のは応用ということで
失礼しました



nepissat

リンク

2014/9/6(Sat) 14:12:11|NO.64720

ありです。
できました。



ONION software Copyright 1997-2023(c) All rights reserved.