問題タブ [catextlayer]

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 に答える
399 参照

cocoa - NSView をホストするレイヤーをファイルにレンダリングする方法

各 CALayer のメソッド (または同様に、各レイヤーのデリゲートのメソッド) を実装せずに、NSView をホストするレイヤー (画面上に表示される) を PDF またはビットマップ ファイルにレンダリングする方法はありますか? 最小限の余分な描画コードを使用して、NSView の内容を正確に表示したいだけです。–drawInContext:-(void)drawLayer:inContext:

PDFにレンダリングするには、を実装する必要があると言う多くの情報源を読みましたが-drawInContext:、これは、カスタムレイヤーサブクラスを扱っている場合には理にかなっています(そうでなければ、何を描画するかを他にどのように知るでしょうか)が、私はしたいですCATextLayer や CAShapeLayer など、ビューに追加するだけで「機能する」レイヤーをレンダリングします。CATextLayer のコードを書き直さなければならないのは、完全に冗長に思えますが、CATextLayer がそれ自体を画面に完全に描画できるのに、どのように自分自身を描画するかを指示します。

明らかな何かを見逃しましたか?

0 投票する
2 に答える
615 参照

xcode - ラップされた iOS CATextLayer が期待どおりに機能しない

複数行のテキストを持つ CATextLayer があります。ラップされたオプションは YES に設定されています。ただし、最後の行のテキストは折り返されません。\n とスペースを使用して別の行を追加すると、折り返しが発生します (ただし、これによりレイアウトが破壊されます)。

これは iOS >= 8.3 でのみ発生します

これを引き起こす可能性のあるアイデアはありますか?

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

cocoa - スケール変換を使用したぼやけた CATextLayer

私は途方に暮れています。ぼやけを取り除くためにすべてだと思うことを試してみましたが、CATextLayer役に立ちませんでした。確かに、いくつかのことは役に立ちますが、テキストは 2 倍に拡大するとまだぼやけすぎており、CATextLayerテキスト以外の鮮明さにはほど遠いものです。

これが私の状況です。CATextLayers(カスタムCALayerコンテナー内)を含む多くのサブレイヤーを含めることができるレイヤー ホスト ビューがあります。これで、ユーザーはメイン コンテンツ レイヤー (すべてのサブレイヤー コンテンツを含む) をズームできます。これは、スケール変換をコンテンツ レイヤーに適用することによって行われます。

これが私が現在行っていることです。大きな違いではありませんが、ほとんどの場合違いがあります。完全にズームインすると (倍率が 2 倍になります)、テキストがひどくぼやけてしまいます。

  • 積分座標を確認する - 機能し、かなりの違いが生じますが、2x スケールではまだぼやけすぎています

  • CATextLayerコンテナー レイヤーの影をオフにします - 2 倍のスケールではありませんが違いが生じます

  • テキストレイヤーの背景色が完全に不透明であることを確認してください - 2倍のスケールではありませんが、違いがあるようです

  • contentsScaleプロパティをすべてのレイヤーのウィンドウバッキングスケールファクターに設定します-2倍のスケールではありませんが、違いがあるようです

  • -drawInContext:このカスタムサブクラスをオーバーライドCATextLayerして、すべてをスムーズ、アンチエイリアス、およびサブピクセル量子化します。フォントはより忠実にレンダリングされますが、2 倍スケールではまだぼやけています。

コードフラグメント:

私は何が欠けていますか?

0 投票する
0 に答える
37 参照

objective-c - CATextlayerで書き換えるには?

カスタム カレンダーのデザインに CATextLayer を使用しています。CAlayer を使用して毎月の数字を描画しています。しかし、次のボタンを押して次の月に移動すると、日付が重なっています。サブレイヤーを削除しようとしましたが、役に立ちませんでした。私を助けてください..

初期カレンダー

しかし、12月に移動すると。日付が重なる

ここに画像の説明を入力

私が使用したコードは次のとおりです。

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

objective-c - CATextLayer() のシステム フォントを設定するには?

の場合UILabel、システム フォントを次のように設定できます。

の場合CATextLayer、フォント名を直接指定する代わりに、システム フォントを設定する同様の方法はありますか?

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

objective-c - UILabel でシステム フォントと同じフォントを表示するには、CATextLayer をどうすればよいですか?

を使用するときはUILabel、システム フォントを次のように設定します。

CATextLayer、私は使用しようとして、オンラインで検索したところ、iOS 9 のシステム フォントは でSan Franciscoあり、フォント名は.SFUIText-Mediumであることがわかったので、フォント名を次のように設定しようとします。

ただし、デバイス画面に表示されるフォントは、上記で説明したUILabel&とは異なります。とまったく同じフォントを表示できるように、ここCATextLayerで使用する正しいフォント名は何ですか?CATextLayerUILabel