問題タブ [cgimage]

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.

0 投票する
1 に答える
5897 参照

iphone - iPhone-CGImageCreateWithImageInRectがカメラロールの写真を回転させる

私はiPhone用のピクセル化アプリケーションに取り組んでいます。iPhone 4カメラで撮影した写真は大きすぎて、ピクセル化された写真を更新するときにアプリケーションの動作が非常に遅いため、最初に写真のタイルを作成し、穴の写真ではなくタイルを更新しようとしています。

タイルを作成する場合、横向きモード(2592 x 1936 pxl)で撮影されたカメラロール画像と低解像度の写真では機能しますが、縦向きモード(1936 x 2592 pxl)で撮影された写真では機能しません。

元の画像からタイルを切り取るためのコードは次のようになります。

問題は、これらのタイルで作成された画像が反時計回りに90度の角度に回転することです。

どうもありがとう、アンドレイ

0 投票する
4 に答える
2766 参照

iphone - -[UIImage CGImage] nilを返す

このコードが2番目のアサートでどのような状況で壊れるのか疑問に思っています。言い換えれば、いつ-[UIImage CGImage]戻ることができnilますか?ドキュメントはここではあまり語っていません。

UIImage は app bundle からフェッチされるため、正しいと確信しています。これまでのところ、このケースを再現することはできませんでしたが、いくつかのユーザー クラッシュ レポートが表示されます。

0 投票する
1 に答える
9124 参照

iphone - iPhone - nil を返す UIImage imageWithData

バイト配列から UIImage を作成する必要があります。ここで、バイト配列を作成します。

データ変数は unsigned char です。

そして、これは私がUIImageを取得しようとする方法です:

img (UIImage) は nil のままです。

OK、これは背景ではありません。ピクセル化アプリケーションを作成しようとしています:)。iPhone 4 カメラの画像はサイズが大きすぎるため、画像を小さい画像に分割しました。そうすることで、ピクセル化効果を表示するためにピクセル化された (タッチされた) 領域を更新する必要がある場合、より小さな UIImage を更新しています。以前のテストでは、UIImage の更新が CPU を殺しているように見えたので、このようにする必要がありました。それでも、小さい画像は現在約 80x100 ピクセルであり、更新は可能な限りスムーズに機能していません。時々、指を動かして速くすると、いくつかのスポットが失われます:D. このメソッドを使用してバイト配列から UIImage を作成すると、これよりも高速になると思います。

私は正しいですか?

0 投票する
1 に答える
7230 参照

objective-c - NSData から NSImage を表示する

私の目標は、ビューに画像を表示することです。私が持っていることを考えると:

  • IBOutlet NSImageView *自分の画像を表示するための画像
  • NSData *画像ファイルを読み込むためのimageData
  • NSImage *imageView

imageData には画像が格納されます (initWithContentsOfFile メソッドを使用しました)。

ここで、imageView を次のように初期化すると:

画像のレンダリングは正しく表示されますが、この方法ではファイル システムから 2 回読み込んでいます。

私がしようとすると:

表示される画像は非常に小さいです..親指のように

CGImageRef:

画像のレンダリングがまだ小さすぎます。

画像を元の解像度で表示するにはどうすればよいですか?

0 投票する
5 に答える
20813 参照

iphone - iPhone CGContextRef CGBitmapContextCreate サポートされていないパラメーターの組み合わせ

私のアプリケーションでは、ローカルおよびオンラインに保存されているいくつかの画像のサイズを変更してトリミングする必要があります。を実装するTrevor Harmon のチュートリアルを使用していますUIImage+Resize

私の iPhone 4 (iOS 4.3.1) では、すべて問題なく動作します。問題はありません。しかし、私の iPhone 3G (iOS 3.2) では、サイズ変更とトリミングの方法がどの画像に対しても機能しません (ローカルに保存されているものは PNG です)。これはコンソール出力です:

剪定方法はこちら

サイズ変更方法は次のとおりです。

誰かが私がこの問題を抱えている方法を説明できますか?

ありがとう、アンドレイ

0 投票する
1 に答える
429 参照

iphone - 最初のロードでUIImageが途切れる

ダブルタップでPNG画像をズームインおよびズームアウトするUIScrollviewがあります。設定方法では、UIGraphicsBeginImageContext / UIGraphicsEndImageContextを使用してPNG画像の複数のサイズをいくつか作成し、すべてのUIImageをNSMutableArrayに保存します。次に、UIImageViewの画像を現在のズームレベルに基づいて正しいUIImageに交換することにより、画面に正しい画像を表示します(元の画像だけを拡大縮小するのではなく、常にアンチエイリアス処理された画像を表示するためにこれを行います)。

私が抱えている問題は、画像が以前に表示されていない画像に初めてスワップされるときに、わずかなスタッターが発生することです。初めての場合は、一日中ズームインとズームアウトが可能で、途切れることはありません。ここここで提案された解決策を試しましたが、問題は解決しませんでした。

現在、0.01秒後に画像をスワップし、その間に保留中のスワップ要求をキャンセルすることで回避策を見つけました。これは問題なく動作しますが、確実な修正ではありません。明らかに、画像が最初に表示された後に準備ができているので、画像を準備完了状態にする方法が必要です。私を助けてください!

0 投票する
1 に答える
623 参照

iphone - (iphone)CGImageRef NSObjectですか?cポインタ?

CGImageRef変数をperformSelectorOnMainThreadに
渡して、NSValue内でvalueWithPointerでラップするのが適切ですか?

CGImageRefのタイプは何ですか?
それはcポインタのtypedefですか?

ありがとうございました

0 投票する
3 に答える
21891 参照

iphone - 空/空白のUIImageまたはCGImageを作成し、その上のピクセルを操作する方法(Xcode)?

私は次の問題を抱えていますが、まだ部分的にしか解決できませんでした。私はXCode3.2.5を使用しており、iOS4以降用に開発しています。

事前定義されたサイズの画像を作成し、その上のピクセルを操作してから、UIImageViewに画像を表示しようとしています。私のビューは、「buttonClicked」と呼ばれるIBActionに接続された単純なButtonと、「qrImage」と呼ばれ、「IBOutlet」として設定されているUIImageViewで構成されています。私は次のコードを使用します:

ヘッダーファイル:myClassViewController.h

メインファイルmyClassViewController.m

ここに短い説明がない場合でも、コードが非常に自明であることを願っています。

A.ボタンをクリックすると、UIImageを返すメソッドdrawQRImageを呼び出します。B. drawQRImage内で、PNGファイルを開きます。これまでのサイズは210x210で、背景は白のみです。他には何もありません。次に、その上のピクセルのいくつかを操作して、「それらを黒く塗りつぶします」。現在のコードはピクセル番号を設定する必要があります。11黒。終了したら、新しく作成した画像を返します。C.メソッドbuttonClickedは、UIImageView内にこの画像を表示します。

全体として、実際には非常に単純です。また、(ほぼ)完全に機能します。しかし今、私はいくつかの変更を加えたいのですが、今までそれらを機能させることができません:

  1. 返す必要のある画像は必ずしも210x210ピクセルではないため、サイズを変更できる必要があります。「空白の」PNGファイルをロードしてそのピクセルを操作することが、これまで私がうまく機能するようになった唯一の回避策でした。よりエレガントな方法は、現在の方法で使用できる希望のサイズの白いBGで空白の画像を作成することです。残念ながら、そのテーマについてはまだ何も見つかりませんでした。既存のすべての画像のピクセルを操作する場合のみ。それが私が現在の回避策を思いついた方法です。私はすでに次のリンクからサイズ変更のために切り取ってみました:UIImageの正しいサイズ変更

  2. ボタンは数回クリックでき、ペイントされたピクセルも変更されます。今の私の問題は、行をコメントアウトしたためにメモリリークが発生しているように見えることです

    // CGImageRelease(imageRef);

しかし、UIImageRef "imageRef"を解放すると、ボタンをもう一度クリックするとEXC_BAD_ACCESS-Errorが発生します。つまり、これは、すでにリリースされているオブジェクトにアクセスしようとすることを意味します。しかし、どうすればこの問題を解決できますか。ここですべてがうまくいったかどうかはわかりません。imageRefは、メソッド「drawQRImage」の先頭で新しく作成されると思っていたので、別の方法でメソッドを呼び出したときに、それを解放しても問題はないはずです。しかし、私は間違っているようです。

少しでも助けていただければ幸いです。

0 投票する
1 に答える
1896 参照

iphone - UIImageView で UIImage の Alpha Mask を編集しても、あまりメモリを移動する必要はありませんか?

画像(ブラシ)を取り、表示された画像に描画したい。その画像のアルファに影響を与えたいだけで、後でエクスポートする必要があります。

私が見てきたことから、ほとんどの指示は、実際にはうまくいかないコストのかかる操作にしか入りません。つまり、オフスクリーン コンテキストに描画し、マスクの CGImage を作成し、ブラシが適用されるたびに CGImageWithMask を作成することをお勧めします。

これを実行してコンテキストに描画するだけでも、iPhone ではかなり大雑把であるため、これにはコストがかかることは既にわかっています。

私がやりたいのは、UIImageView の UIImage を取得し、そのアルファ チャネルを直接操作することです。また、ピクセル単位ではなく、独自の柔らかさを持つ大きな (半径 20 ピクセル) ブラシを使用します。

0 投票する
1 に答える
905 参照

cocoa - CGCreateImageで無視されるデコード値

次のコードでモノクロ画像を作成しています。

ここで、はに等しいdecodeValues2の配列です。これにより、すばらしい画像が得られますが、私のデータ(PDFイメージマスクから取得)は、白地に黒ではなく黒地に白であるようです。画像を反転させるために、の値をに設定しようとしましたが、何も変更されませんでした。実際、私が無意味な値を入れても、同じイメージが得られます。CGFloat{0,1}decodeValues{1,0}decodeValues

なぜdecodeValuesここで無視されるのですか?白黒を反転するにはどうすればよいですか?