問題タブ [nsattributedstring]

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

cocoa - NSButtonの推奨サイズを取得するにはどうすればよいですか?

NSMenuItemを含むのカスタムビューがありNSButtonます。ボタンのタイトルは実行時に決定されるので、コンテンツ(ボタンのタイトル)が常に収まるようにボタンのフレームを調整したいと思います。

私は知っ[NSAttributedString boundingRectWithSize:options:]ていますが、NSButtonsまたはNSViewレベルでこれを行うための組み込みの方法があるかどうか疑問に思っています。

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

ios - UIWebView なしで iOS デバイスに .RTF ファイルを表示する - iOS で initWithRTF?

.RTFを使用して iOS でファイルをレンダリングすることができますUIWebView(こちらを参照)。依存せずに、.RTFファイルをカスタムレイヤーに直接「レンダリング」するにはどうすればよいUIWebViewですか?

カスタムのテーブル ビューを表示していますUITableViewCell。セルの形式は次のとおりです。

RTF コンテンツは、アプリに同梱されている一連のファイルから直接取得されます。歴史的には、RTF を HTML に変換してUIWebView. モバイル ユーザーとデスクトップ ユーザーの間でコンテンツを共有するためのユーザー コンテンツと追加機能がますます増えているため、使用するのに適したファイル形式は.RTF.

MacOS では、 を使用(id)initWithRTF:(NSData *)data documentAttributes:(NSDictionary **)dictして NSAttributedString. iOSで同等のものは何ですか? それは可能ですか?

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

iphone - CTLine または NSAttributedString -- グラフィック コンテキストなしで画像境界を取得しますか?

これは可能ですか?基本的に、NSAttributedString オブジェクトと対応する CTLine オブジェクトがたくさんあります。drawRect ステージの前に画像の境界を取得したい。したがって、この時点では、引き込むものは何もありません。次に、これらの画像境界を使用して、描画用に何を作成する必要があるかを正確に決定します。

編集: サイズの別の測定は、おそらく問題なく機能します。しかし、一見して名前が付けられた CTLineGetTypographicBounds 関数を呼び出すと、幅のみが返されます。上昇浮動小数点数と下降浮動小数点数のアドレスを渡すと、ゼロとして返されます。

編集:与えられた答えはMacOSでうまく機能します。誰でもiOSでできますか?

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

ios - NSAttributed文字列を含む辞書をPListまたはNSUserDefaultsに保存する

私は辞書を持っていますNSAttributtedString

この辞書をPlistとしてDocumentsフォルダーに保存し、辞書をに保存してみましたNSUserDefaults。どちらも機能しませんでした。辞書の属性付き文字列が削除された場合、両方の方法が機能します。

ドキュメントフォルダのPlistに保存するために使用されるコード:

辞書を保存するために使用されるコードNSUserDefaults

誰か助けてください。私は何かが足りないのですか?

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

cocoa - NSTextFieldには、配置またはフォントのいずれかを設定できますが、両方を設定することはできません

テキストフィールドの1つに出口があるパネルペン先があります。これは、ペン先に中央揃えで設定されています。パネルを表示するときは、このテキストフィールドを太字にします。NSTextFieldはNSControlのサブクラスであるため、setAttributedStringValueメソッドを使用して、属性付き文字列を取得できます。そこで、次のような太字のフォントを組み込みました。

太字は[OK]と表示されますが、フィールドは左揃えになっています。

setAlignmentを追加しようとしましたが、効果がありませんでした。

そこで、属性付き文字列の属性に中央揃えのパラプラフスタイルを追加してみました。

これで、テキストフィールドは再び中央に配置されますが、太字はなくなります。これは、属性付き文字列が1つだけの属性設定を受け入れることができるかのようです。私は何か簡単なものが欠けていますか?

0 投票する
10 に答える
66574 参照

nsattributedstring - Core Text - NSAttributedString の行の高さは正しく設定されていますか?

Core Text の行間隔については、完全に理解できません。私は NSAttributedString を使用しており、次の属性を指定しています: - kCTFontAttributeName - kCTParagraphStyleAttributeName

これから CTFrameSetter が作成され、コンテキストに描画されます。

段落スタイル属性で、行の高さを指定したいと思います。

kCTParagraphStyleSpecifierLineHeightMultiple を使用すると、テキストがこの高さの中央に表示されるのではなく、各行がテキストの上部にパディングを受け取ります。

kCTParagraphStyleSpecifierLineSpacing を使用すると、テキストの下部にパディングが追加されます。

テキストが行の一番下または一番上にあるのではなく、その高さの真ん中にあるテキスト(グリフ)で指定された行の高さを達成するのを手伝ってください。

CTLine などを明示的に作成するルートをたどらないと、これは不可能ですか?

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

ipad - NSAttributedString でのテキスト配置 (CTTextAligment) の設定 - ipad

色、フォント、サイズ、配置を指定してカスタム文字列を描画しようとしています。

以前はすべて NSMutableAttributedString で動作していましたが、テキスト アラインメントは、非可変バージョンの NSString でのみ動作する段落アラインメントでのみ動作するようです。

したがって、以前のコードを次のように変更する必要がありました。

しかし、テキストの配置はまだ機能しません。それ以外は問題ありませんが、テキストは左揃えのままです。

なんで ?

編集:私の文字列はそれぞれ、CATextLayerのサブクラスであるクラス内に作成されます。これらの各 TextLayer は、サブレイヤーとして CALayer に追加されます。更新時に、サブレイヤーに変換マトリックスを適用し、setNeedsDisplay. これは、画面にテキストを表示する方法です。CTParagraphStyleRef セットが機能しない理由がここにあるのではないでしょうか?

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

ios - NSAttributedString は範囲を指定しますか?

使用時に範囲指定は可能-[NSAttributedString initWithString:attributes:]ですか?

でできることはわかっていますがNSMutableAttributedString、 を使ってもっと効率的にしたかったのNSAttributedStringです。

0 投票する
10 に答える
42839 参照

string - NSAttributedStringのサブストリングを別のNSAttributedStringに置き換えます

@"replace"の部分文字列(例)NSAttributedStringを別の。に置き換えたいNSAttributedString

NSString'sforstringByReplacingOccurrencesOfString:withString:と同等のメソッドを探していNSAttributedStringます。