タグの属性に追加のデータが保存されている HTML を使用しています。テキストを表示するために、DTCoreText
HTML を に変換するために使用していますNSAttributedString
。ユーザーがテキストを操作するとき、戻ってこのテキストに対応するデータを見つけたいと思います。私の最初の考えは、HTML をNSAttributedString
変換に変更し、追加情報を属性として追加することでした。これは簡単な作業ではないかもしれません。NSAttributedString
、DTCoreText
、またはの経験のある方にお聞きしたいのDTRichTextEditor
ですが、可能ですか? 非標準属性をNSAttributedString
アタッチメントとして保存することはできますか?f
1 に答える
NSAttributedString Class Referenceによると:
属性付き文字列は、NSDictionary オブジェクトを使用して指定された名前で値を格納し、属性を名前で識別します。任意の属性名/値のペアを一連の文字に割り当てることができます。カスタム属性を解釈するのはアプリケーション次第です (属性付き文字列プログラミング ガイドを参照)。Core Text フレームワークで属性付き文字列を使用している場合は、そのフレームワークで定義されている属性キーも使用できます。iOS では、標準属性キーは NSAttributedString UIKit Additions Reference の「定数」セクションで説明されています。OS X では、標準属性キーは NSAttributedString Application Kit Additions Reference の「Constants」セクションで説明されています。
属性付き文字列に任意の属性を格納できます。したがって、元の HTML とそれが生成する属性付き文字列の両方に一意の識別子を手動で追加することにより、HTML と属性付き文字列テキストを 1 対 1 で照合できるはずです。
そのような一意の識別子が HTML にまだ存在しない場合は、HTML を手動で前処理してチャンクに分割し、チャンクを個別の属性付き文字列に変換して一意の識別子を追加することを意味する場合があります。これにより、その HTML が変更されます。ですから、それはもはや本当の原文ではありません!