問題タブ [nsimageview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cocoa - NSImageView からのドラッグを実装し、画像をファイルに保存する
Apple の例である CocoaDragAndDrop を調べました。画像を NSImageView にドラッグし、ビュー間で画像をドラッグする方法を理解しています。ただし、画像を Finder にドロップしたときに画像をドラッグしてファイルに保存する方法はまだわかりません。
誰か私に例を挙げてもらえますか?
cocoa - フルスクリーンモードに入った後、レイヤーでサポートされた NSImageView が画像を破損する
IBでレイヤーバッキングをオンにしたNSImageViewがあります。ImageView の画像がクイック ルック プレビューとして生成されます。ビューがより大きなサイズにサイズ変更されている場合、新しいプレビューを生成します。
アプリがフルスクリーンモードになるまで、すべて正常に動作します。その後、私のコードは新しいクイック ルック プレビューを取得し、それを imageView に設定します。imageView で画像のサイズを変更すると破損します。上下に同じ画像が作成されます。「下」の画像はサイズ変更時に正常に動作します-それは私が望むものですが、「上」の画像はサイズ変更されません-サイズ変更時に上下するだけで、レイアウトの動作が非常に奇妙です...
画像の破損をよりよく理解するためのスクリーンショットを次に示します。
フルスクリーンを終了した後 - 問題は消えます) このビューでレイヤーバッキングをオフにすると - 問題も消えます)
これはココアのバグのようですが、誰かがそのような問題を抱えている可能性があります。前もって感謝します!
macos - NSImageView 変更イベント ハンドラ
NSImageView で画像変更のイベントをキャッチしたいのですが、どうすればよいですか?
cocoa - NSImageView とカスタム NSView を使用してサムネイルを作成する
ココア アプリ (OS X) で次のことを行う必要があります。
- ユーザーが に画像をドロップできるようにします
NSImageView
。 - 画像がドロップされると、画像上に固定サイズの長方形が投影され、サムネイルとして使用される画像の領域が示されます。
- ユーザーが四角形をドラッグして、必要なサムネイルを特定できるようにします。
- 配置したら、ユーザーはボタンをクリックして、画像とサムネイルをファイルに保存します。
フィードバックをお願いしたいのは 2 番目の弾丸です。私の考えは、次のことを行うことです。
- IB
NSImageView
で、イメージを受け入れるビューに をドロップします。 - ドロップが完了したら、別の
NSView
( とまったく同じサイズNSImageView
) を作成し、 の上に投影してNSImageView
、サムネイル用の長方形を表示します。NSView
透過的で、長方形の描画と再配置をサポートするように、おそらくサブクラス化する必要があります。 - ユーザーが長方形をドラッグできるようにします。ユーザーがサムネイルの位置を受け入れたら、 で画像に四角形を投影して、画像からサムネイルを作成し
NSImageView
ます。
setWantsLayer: YES
重なり合うビューを操作するには、親ビューのレイヤー ( ) をオンにする必要があることを理解しています。ただし、これに関するいくつかの混合レポートを見つけましNSView
たCALayer
. また、 からサムネイルをキャプチャする簡単な方法があればNSImageView
、ご意見をいただければ幸いです。
cocoa - 画像の iPhoto のようなトリミング?
私はこれに数日間苦労してきましたが、解読できません。iPhoto で見られるようなきちんとした写真のトリミングを実現するにはどうすればよいですか?
切り抜きツールを描画できる半透明の CALayer で NSImageView を使用しようとしましたが、レイヤーが画像を非表示にするため (透明度が 0.5 に設定されていても) 機能しません。
私は詳細なコードを求めているのではなく、グローバルなアプローチだけを求めています。
cocoa - ぼやけたNSImageView
CoreAnimationを利用するビューにNSImageViewがあります。Core Animationを使用する前は、画像はきれいに見えましたが、現在はぼやけて低品質です。NSImageViewにベゼルの境界線を設定すると、問題は解決しますが、境界線がないようにする必要があります。これは他の誰かに起こったのですか?
境界線のない背景のImgae、境界線のある正面の同じ画像。
ありがとう
編集:画像がアイコンファイル(ICNS)であるため、さまざまなサイズがあることを忘れました。境界線のあるビューは正しいサイズをロードし、透明なビューは最小のサイズをロードして引き伸ばします。
cocoa - Cocoa/ObjC: GC が有効なときに大量の画像を読み込むとメモリ使用量が高くなりますか?
の画像をランダムにスライドする単純な画像ビューアをコーディングしました~/Pictures
。
新しいトランジションごとに、 を作成してロードしてから、新しいサブビューをNSImage
作成しNSImageView
て新しいサブビューとして設定し、古いサブビューを削除します。
基本これで全部です。新しい写真を撮るたびに記憶が絶えず高まっていますが、その理由は不思議です。私はそれが非常に低く、常にほとんど一定であると予想していました.
私はそれをデバッグしようとしましたが、プロファイラー ツールはリークしたメモリを見つけられないので、まだ参照されているか、より複雑になっていると思います。ただし、ほとんどのメモリは関数から取得されImageIO_malloc
ます。
完全な(関連する)コードはここで見ることができます(すでにかなり単純化されています - ほとんどの機能は削除されていますが、リークは残っています)。
ARC は無効です。
興味深い点: ObjC GC を無効にすると、期待どおりになります。それは(比較的)低いままです。
macos - 境界の原点の変更 + 画像のトリミング
私は Cocoa の初心者です。NSImage に関していくつか疑問があります。
質問1:
画像の境界原点を変更しても効果がないようです。新しく設定された原点から画像が描画されることを期待していましたが、そうではないようです。何か不足していますか?
コード:
注:imageViewはIBOutletです
質問2:
画像をトリミングしようとしましたが、画像をトリミングしていないようで、完全な画像が表示されます。私が見逃しているのは何ですか?
コード:
ありがとう
objective-c - Objective-C:フロートの配列を画像として表示する
Cocoaアプリで、NSImageViewにフロートの2D配列を表示したいと思います。コードをできるだけ単純にするために、データをfloatからNSDataに変換することから始めます。
次に、データを表示してみます(表示は空白のままです)。
これは正しいアプローチですか?CGContextが最初に必要ですか?私はNSDataでこれを達成したいと思っていました。
以前のStackの投稿に注目しました:32ビットデータ、近いが逆、ほとんど機能しましたが、NSDataはありません、ここにカラー画像データがありますが、これらの機能のバリエーションを得るのはあまり幸運ではありません。提案をありがとう。
objective-c - 窓に小さな青い正方形を作る際の問題
これはObjective-c画像の世界への私の最初の進出であり、すぐに困難に直面しました。私が持っているのは、TimeAdderという名前のNSWindowControllerによって制御されるTimeAdder.xibのカスタムNSWindowです。すべてが非常にうまく機能しているので、今は小さな青い長方形を追加しようとしています。
ウィンドウの目的の場所に16x16のサイズのNSImageViewを設定しました。次に、次のコードをwindowDidLoadメソッドに追加しました。
pickImage1はNSImageViewの名前であり、TimeAdder内のivarです。image1はTimeAdder内のivarであり、NSImageです。size、firstSet1Color、imageBoundsはすべてローカル変数であり、メソッドが完了すると消えます。それが重要かどうかはわかりませんでした。
コードは実行され、いかなる種類の例外も発生しませんが、何もしません。誰かが何が起こっているのかについて何か考えがありますか?