16

NSParagraphStyleAttributeNameCocoa のテキストに段落スタイルを適用するための属性名 ( ) があるようです。テキストは に格納されNSAttributedStringますが、その文字列の「段落」を定義するものは何ですか?それは改行文字\nですか? 他のキャラクター?の場合\n、新しい段落を開始せずに新しい行を作成するにはどうすればよいですか。最後に、ParagraphStyle を文字列にアタッチする場合、段落全体の正確な範囲を使用する必要がありますか、それとも段落内の任意のサブ範囲に配置できますか。サブ範囲である可能性がある場合、システムは同じ段落で 2 つ以上の ParagraphStyles をどのように処理しますか?

ありがとう、ロブ

4

3 に答える 3

16

Apple の cocoa-dev メーリング リストで Douglas から回答を得ました。

http://lists.apple.com/archives/Cocoa-dev/2010/Dec/msg00347.html

彼がここに書いたものをコピーします:

標準の段落区切り記号 (\n、\r、\r\n、Unicode 段落区切り記号) のいずれかを使用できます。段落区切りなしで新しい行を開始するには、Unicode の行区切り文字を使用します。段落スタイルを段落全体に適用することをお勧めします。そうしないと、レイアウト時に必要になるため、段落スタイル属性は属性固定時に自動的に固定され、各段落範囲で一定になります。

于 2010-12-12T14:51:24.730 に答える
4

Apple の String Programming Guide には段落と改行に関するセクションがあり、NSString は段落区切りを検索しなくても段落範囲を提供することに言及する価値があるかもしれません。

于 2010-12-13T01:24:34.597 に答える
3

私の経験からのiOSでの最良の方法は、使用することです

@"\n\r";

\nor evenを使用するだけで一貫性のない動作が見つかりました0x2029(これは NSParagraphSeparatorCharacter (iOS では定義されていません) と同等である必要があります)

使用時に問題が発生しNSAttributedStringNSParagraphStyle... @"\n" または (0x2029) を使用する場合と同様に、setParagraphSpacing は最初の段落以外によって無視されました...使用@"\n\r"すると段落が正しくなりました

于 2016-01-09T18:37:25.317 に答える