問題タブ [quartz-graphics]
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-touch - 線の描画をアニメーション化する (Quartz 2D?)
iPhone の UIView で線の描画をアニメーション化するにはどうすればよいでしょうか? これは可能ですか?描くことはできますが、手描きのように簡単にアニメーション化できますか?
ios - iOS: Quartz を使用して文字列の幅と高さをどのように測定しますか?
質問する前に、これは Apple のドキュメント re: how to determine the width of a string using Quartz: からのものです。
アプリケーションにとってテキストの測定値が重要な場合は、Quartz 2D 関数を使用してそれらを計算することができます。とはいえ、文字のレイアウトや採寸に強みを持つATSUIをまずは検討してみてはいかがでしょうか。ATSUI には、テキスト メトリックを取得する関数がいくつかあります。レイアウト後のテキスト メトリックを取得できるだけでなく、必要に応じて、レイアウト前のテキスト メトリックを取得することもできます。自分で計算しなければならない Quartz とは異なり、ATSUI は測定値を計算します。たとえば、ATSUI 関数 ATSUMeasureTextImage を呼び出すことによって、テキストのイメージ境界四角形を取得できます。
Quartz のテキストが ATSUI (または Cocoa) よりもニーズに適していると判断した場合は、次の手順に従って、Quartz がテキストを描画する前にテキストの幅を測定できます。
- 関数 CGContextGetTextPosition を呼び出して、現在のテキスト位置を取得します。
- 関数 CGContextSetTextDrawingMode を使用して、テキスト描画モードを kCGTextInvisible に設定します。
- 関数 CGContextShowText を呼び出してテキストを描画し、現在のテキスト位置にテキストを描画します。
- 関数 CGContextGetTextPosition を呼び出して、最終的なテキスト位置を決定します。
- テキストの幅を決定するには、終了位置から開始位置を引きます。
ここに私の質問があります:
これは本当に Core Graphics を使用して文字列の幅を決定する最良の方法ですか? 私のテキストは 2D グラフィック要素と共存しているので、すべてのレンダリングに同じコンテキストを使用したいと考えています。次のようなコンパクトな方法があることを望んでいました。
/li>ATSUI は時代遅れで、Core Text に置き換わろうとしていると読みました。それは本当ですか?もしそうなら、それはiOSにありますか?
objective-c - Quartz 2D で、必要なカラー チャンネル以外をすべて削除して画像をマスクすることは可能ですか?
そこで、Quartz CGImageCreateWithMaskingColors 関数を使用しようとしましたが、唯一の問題は、選択している色の範囲をマスクすることです。
選択している色の範囲以外をすべてマスクしたい。たとえば、画像内のすべての赤色を表示し、他のチャネル (緑と青) を削除したいとします。
私はObjective-Cでこれを行っています。私は初心者なので、例を教えてください:)
どんな助けでも大歓迎です。
iphone - 移動中にUIImageViewをロックする
、、、で移動しUIImageView
ます。それはうまく機能しますが、タッチは他のにも適用され、周りに横たわっています。touchesBegan
touchesMoved
touchesEnded
UIImageView
移動中にタッチアクティビティをロックするにはどうすればよいUIImageView
ですか?ブール値でこれを試しましたが、1回だけでなく、移動するtouchesMoved
たびに呼び出されるため、機能しませんでした。UIImageView
iphone - iPhone + Quartz: 水の効果を得る方法
iPhone で Quartz を使用して水の効果を作成する機会はありますか?
これに似たもの:
iphone - GLPaint 保存画像
iPhone で複雑なペイント アプリケーションを開発しようとしています。私は現在、Quartzを使用して描画しています(例CGContext
...)。残念ながら、Quartz のオーバーヘッドは、私が行っている種類の描画には遅すぎるため、GLPaint の例を参照点として使用して OpenGL 呼び出しに移植しています。
EAGLview クラス (Quartz に相当) から UIImage/CGImage を取得する方法はあり UIGraphicsGetImageFromCurrentImageContext
ますか? 基本的にはGLPaintアプリで描いた絵を保存する必要があります。
iphone - imagePickerController から選択されたクォーツ ストレッチ イメージ
ユーザーがカメラまたは写真ライブラリから画像を選択できるアプリがあります。次に、その画像を ImageView に配置します。次に、Quartz を使用してその画像ビューから画像を取得し、いくつかの基本的なオーバーレイなどと共にレンダリングします。
問題は、画像がカメラから、またはカメラ ロールから選択されたときに、Quartz が 90 度回転して画像を描画し、画像を垂直方向に引き伸ばすことです。フォト ライブラリから他の写真を選択しても問題ありません。また、allowsImageEditing が YES に設定されている場合、問題は発生しません。
誰かが光を当てることができれば、それは役に立ちます。私はこれで比較的初心者です。
私の CameraViewController のコード
Quartz を描画するビューのコード
macos - 登録する以外に、Quartz コールバックを取得するために何か必要なことはありますか?
Mac OS X の Quartz でディスプレイ再構成イベントを取得するために使用しようとしていますCGDisplayRegisterReconfigurationCallback
。非常に単純なコードは次のとおりです。
ただし、モニターを接続/取り外したときにコールバックが呼び出されないなど、 CGDisplayRegisterReconfigurationCallback
成功が返されます。
「os x 開発の初心者」は、ここでの私の背景知識の誇張です。コールバックを機能させるには、クオーツ イベント ループのようなものをインスタンス化する必要がありますか?
iphone - Objective-Cで表示の順序を設定する方法
CGContextパス描画コマンドを使用してUIImageView描画と線描画を混在させようとしていますが、描画順序が正しくありません。画像の上にパスを描く必要がありますが、逆になります。
私がそれを実装した方法:
- UIImageView内でUIImageを設定し、UIImageViewをメインビューのサブビューとして追加します。
- 次に、「drawRect」(描画の更新関数)を使用して、UIKitCGContextStrokePath関数を使用してパスを描画します。
さて、コンテキスト画像描画機能を直接使用する以外に(複数のUIImageViewで画像リソースを再利用するため、これを避けたい)、順序を正しく設定する方法はありますか(フラグが設定されている可能性があります)?
ここでも問題は、線/パスがUIImageViews(親UIViewへの接続を介して自動的に描画される)の前に描画されるため、画像/UIImageViews上に表示されないことです。
ありがとう
iphone - iPhoneの初心者の質問: 長方形を描きます。私は何を間違っていますか?
ここで私が間違っていることを理解しようとしています。いくつかのことを試しましたが、画面上にそのとらえどころのない長方形が表示されることはありません。今、やりたいことはそれだけです。画面上に 1 つの四角形を描くだけです。
CGContextSetRGBFillColor() 以外のすべてで「無効なコンテキスト」を取得しています。その後、コンテキストを取得するのはちょっと間違っているように思えますが、昨夜使用した例を家に見ているわけではありません。
私も何か他のことを台無しにしましたか?せめて今夜はここまでやりたい…。
ありがとう、
ショーン。