問題タブ [ctlineref]
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.
objective-c - Objective C-コアテキスト位置でインデックスを見つけますか?
ポイントに最も近い文字のインデックスを取得しようとしています。
以下のコードは、テキストの配置が左に設定されているので、完全に正常に機能します。右または中央に変更すると、間違ったインデックスが表示されます。ポイントに最も近いインデックスを取得しながら、テキストの配置を検討するための解決策は何でしょうか?
編集:
私のテキストの配置は、textAlignment設定を持つ段落スタイルを追加することによって行われます。kCTCenterTextAlignment
objective-c - Objective C - コア テキスト、1 行の文字数は?
現在の文字のインデックスが与えられた場合、選択した文字の行数を特定するにはどうすればよいですか?
CTLine が与えられた場合、その中の文字数をどのように判断できますか?
iphone - CTLine または NSAttributedString -- グラフィック コンテキストなしで画像境界を取得しますか?
これは可能ですか?基本的に、NSAttributedString オブジェクトと対応する CTLine オブジェクトがたくさんあります。drawRect ステージの前に画像の境界を取得したい。したがって、この時点では、引き込むものは何もありません。次に、これらの画像境界を使用して、描画用に何を作成する必要があるかを正確に決定します。
編集: サイズの別の測定は、おそらく問題なく機能します。しかし、一見して名前が付けられた CTLineGetTypographicBounds 関数を呼び出すと、幅のみが返されます。上昇浮動小数点数と下降浮動小数点数のアドレスを渡すと、ゼロとして返されます。
編集:与えられた答えはMacOSでうまく機能します。誰でもiOSでできますか?
iphone - iOS の CTLineGetTypographicBounds -- 上昇と下降は常にゼロとして返されます
NSAttributedString の iOS カテゴリには、次のものがあります。
ドキュメントによると、これらはラインの上昇と下降であるように思われます。しかし、そうではありません。
幅はゼロを返しません。
そうは言っても、線を引くと、うまく描画されます。
何か不足していますか?
objective-c - CTLineRefは属性付き文字列を所有していますか?
私はアップルでGUIのプログラミングを始めたばかりです(これまでのところフレームワークは問題ないようですが、ドキュメントは他のドキュメントよりもはるかに有益ではありません... Qt、.Net、javaなど)。
私が抱えていた問題の1つは、誰が何を所有しているかを理解することです。たとえば、CTLineRefCreateWithAttributedStringを呼び出すと、結果のCTLineRefは属性付きの文字列を所有しますか?属性付きの文字列が変更可能で、変更した場合はどうなりますか?これはCTLineRefを台無しにしますか?
ドキュメントは啓蒙的ではありませんでした。
CTLineRefのリファレンスには、この件に関する情報は含まれていません: https ://developer.apple.com/library/mac/#documentation/Carbon/Reference/CTLineRef/Reference/reference.html
いくつかの例では、文字列が解放されていません。これは、所有されていることを示すものです: https ://developer.apple.com/library/mac/#documentation/StringsTextFonts/Conceptual/CoreText_Programming/Operations/Operations.html
いくつかの例は文字列をリリースしますが、そうではないことを示唆しています: https ://developer.apple.com/library/mac/#samplecode/CoreAnimationText/Listings/VectorTextLayer_m.html
(これはリンゴではありませんが、彼は私にもっと情報を与えているようです) http://www.cocoanetics.com/2011/01/befriending-core-text/
それで、文字列はコピーされますか?CFMutableAttributedStringRefを使用する場合、それを変更することはできますか(後で新しいCTLineRefを作成する必要があると思います)?
これは具体的な例ですが、これは私が無数の場所で出くわした質問です。どんな助けでも大歓迎です。これらを支配するルールがいくつかあるに違いないと思いますが、それらのルールが何であるか、どこで見つけることができるかについては、少しもわかりません。
iphone - CTLine に「文字列アクセス」があるとはどういう意味ですか?
私はUILabelで毛むくじゃらの問題を解決しようとしています.1つのことを除いて、ほとんどのことを理解しましたCTLine
.「文字列アクセス」を持つことの意味を理解するのに苦労しています.
私が使用したい方法はCTLineGetOffsetForStringIndex
. メソッドのドキュメントへのリンクは次のとおりです。
これが私が理解していないドキュメントの一部です(強調は私のものです):
charIndex のベースラインに沿ったプライマリ オフセット、またはラインが文字列アクセスをサポートしていない場合は 0.0。
このメソッドを実行すると0.0
元に戻るので、その行が文字列アクセスをサポートしていないことを意味していると思いますが、それは正確にはどういう意味ですか?