0

iPadでnaturalWidthを取得する方法はありますか?

私が達成しようとしていること

現在、ポイント領域の質問タイプを持つクイズアプリを開発しています。質問に答えるには、ユーザーは画像上の場所を指定する必要があります。その場所は、クリックされた場所が正しい地域内にある場合にブール値を返すサーバーに送信されます。

すべてのブラウザで完全に動作し、画像が大きすぎなければ iPad でも動作します。画像が大きすぎる場合は、画面に合わせて自動的にサイズ変更されます。画像の特定の場所をタップすると、元のサイズのままの場合とは異なる座標が表示されるようになりました。

自動サイズ変更はiPadのリソース制限と関係があることがわかりました。どうやらこれを防ぐことはできませんが、それはそれほど問題ではありません。サイズ変更に使用された要因を知りたいだけです。

係数を取得するには、元の幅と実際の幅が必要です。

4

1 に答える 1

0

サーバーに画像の幅をHttpHeaderとして送信させることで修正しました(サーバー側の言語はVBです)

Dim objImage As Image = Image.FromFile(strFilePath.ToString())
context.Response.AddHeader("imagewidth", objImage.Width.ToString())
context.Response.ContentType = "text/plain"

下に、クライアント側で取得する方法を示します。

cacheImage.imageWidth = $.ajax( arguments[i] + '&returnsize=true', { async: false } ).getResponseHeader( 'imagewidth' );

arguments [i]は、メディアIDをパラメーターとして持つメディアローダーへのURLです。

returnsize = true

すべてのメディアタイプの幅は必要ありません。リクエストの後にreturnsize=trueを指定した場合にのみ、メディアアイテムの幅を取得します。

于 2012-04-24T07:24:01.817 に答える