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


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0906
pumpkin画像ファイルのサイズを縦と横で別々に取得する6解決


pumpkin

リンク

2015/9/6(Sun) 08:45:57|NO.71399

screen 0,640,480
dialog "jpg|png|bmp|gif",16 picload refstr,1 exist refstr repeat redraw 0 color 255,255,255 boxf pos 0,0 picload refstr,1 color 255,0,0 mes strsize redraw 1 await 1 loop

指定したファイルのサイズを表示させるプログラムです。未完成な上に試行錯誤しながら作ってるので、かなり汚いです。
実行すると分かりますが、これだと縦サイズと横サイズが一度に表示されます。
縦サイズと横サイズを別々に取得することは出来ないのでしょうか



この記事に返信する


mamo

リンク

2015/9/6(Sun) 09:33:42|NO.71400

試行錯誤しながらと言う事なので、
別のウィンドウへpicloadのモード0で画像を読み込みクライアント領域の情報を取得するなんてどう?


mes "x = " + ginfo.12 mes "y = " + ginfo.13



リンク

2015/9/6(Sun) 09:36:13|NO.71401

>縦サイズと横サイズが一度に表示されます。

の意味がわかりませんが、
とりあえずファイルサイズは赤字で正常に表示されています。
表示した画像の縦横のサイズを取得したいのであれば、
ginfo(12)、ginfo(13)を使用すればいいと思います。



雪月夜

リンク

2015/9/6(Sun) 10:11:50|NO.71402

一番手っ取り早いのは、すでに言われていますが、bufferに画像をpicloadしてginfo(12)、ginfo(13)を取得することです。

bufferを使いたくないというのなら、こちらのモジュールのImgF_GetPicSizeを利用するという手もあります。
http://www.tvg.ne.jp/menyukko/cauldron/hmimage.html

/* ここにモジュール */ x=0:y=0 ImgF_GetPicSize "画像のパス",x,y mes"縦:"+x+"\n横:"+y



pumpkin

リンク

2015/9/6(Sun) 11:29:44|NO.71404

>>撃さん
例えばサイズが200×300なら、表示が「200300」になってしまうということです。
縦サイズと横サイズを別々に取得できれば、読み込んだファイルのサイズに合わせて余白を作るなどの、画面の大きさの調整ができるので。



pumpkin

リンク

2015/9/6(Sun) 11:39:13|NO.71406

すみません、何故か大きさ(情報量)のサイズと大きさ(広さ)のサイズがごっちゃになってました。
bufferを使う方法で解決しました、ありがとうございます。



スペース

リンク

2015/9/6(Sun) 14:32:23|NO.71410

ちなみにginfo(12)、ginfo(13)よりもginfo_winx、ginfo_winyのほうがわかりやすいのでそちらの使用をお勧めします。
もちろん取得できる内容も処理速度も変わらないので、お好みで。



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