2016-07-19 12 views
0

携帯電話の幅全体を使用したいと思う私のサポートファイルフォルダのイメージがあります。彼らはこのようなものです:イメージをロードする

NSLog(@"@@@ Width: %f - Height: %f", img.size.width, img.size.height); 
@@@ Width: 375.000000 - Height: 205.000000 

なぜ私のイメージのロード異なると:私は私が手にこの画像の大きさを記録するとき

UIImage *img = [UIImage imageNamed:@"img"]; 

img.png -> 320x205 
[email protected] -> 750x410 
[email protected] -> 1242x615 

は、私はこのような画像を読み込みますそのファイルからサイズ?

+0

:iPhone 6プラス

次の方法でスケール値を得ることができますうまくいけばあなたのイメージはrght値を示します。 img @ 2xのサイズが750x410の場合、img shudは375x205になります。 –

+0

私はこのイメージのサイズが間違っている可能性があります。私は自分のイメージが全体のiPhoneの幅になりたい。 iPhone 5では320dp、スケールは1です。したがって、幅は320ピクセルにする必要があります。そして、iPhone 6では375dp、スケールは2で、幅は750pxです。私は間違っていると思いますか? –

答えて

-1

ここで、2xと3xは、イメージのサイズが元のイメージに2インチ、元のイメージに3であることを意味します。 イメージサイズがこの形式でないため、このタイプの出力が表示されます。

例: - 私のイメージ1Xの場合: - :640 * 480 そして3Xは次のようになります。 - - 2倍より320 * 240になる960 * 720 これは2倍と3倍の画像を置くための適切な形式です。あなたのログチア行った後

0

size.widthまたはsize.height正解が表示されますポイント、ないピクセルで測定されています。

アップルでは、​​画像を電話の解像度とは独立に拡大/縮小できるようにポイントを使用しています。

イメージは、電話機ごとに異なる縮尺でレンダリングされます。 1X @

:2倍@オリジナルのiPhoneの

:iPhone 4、5、6

3X @は:

CGFloat scale = [UIScreen mainScreen] scale]; 
関連する問題