※ ChatGPTを利用し、要約された質問です(原文:objective-c initWithFocusedViewRectについて)
objective-c initWithFocusedViewRectについて
このQ&Aのポイント
objective-cにて、画像を読み取り上下反転して保存する処理を行っているんのですが、縮尺が思ったとおりにいきません。
bitmapとrbitmapのサイズが異なることが問題となっています。
NSRectとinitWithFocusedViewRectについて調べてみましたが、縮尺に関する記載はみつかりませんでした。
objective-c initWithFocusedViewRectについて
objective-cにて、画像を読み取り上下反転して保存する処理を行っているんのですが、次のプログラムを動作させてたときに縮尺が思ったとおりにいきません。
[bitmap lockFocus];
NSRect r = (0, 0, width,height);
NSBitmapImageRep *rbitmap = [[NSBitmapImageRep alloc] initWithFocusedViewRect:r];
[bitmap unlockFocus];
ここで、bitmapとrbitmapのサイズを調べてみると異なる数値が表示されます。
縮尺された感じです。
[bitmap]width:2272 height:1704
[rbitmap]widht:909 height:682
NSRectとinitWithFocusedViewRectについて調べてみたのですが、縮尺に関する記載がないように思えます。
同じサイズのbitmapを生成するには、initWithFocusedViewRectではダメなのでしょうか?
ご教授の程、宜しくお願いします。
お礼
harawoさん、アドバイスありがとうございます。 ご指摘の方法で解決しました。 ありがごうございました。 あと、フォーカスの設定の前に以下の記述の追加でも解決しました。 [bitmap setScalesWhenResized:YES]; NSSize sz ={width, height}; [bitmap setSize:sz];