NSAttributedString が iOS 6 で完全にサポートされるようになったので、マークダウンで NSString を取り、それを NSAttributedString に変換するライブラリはありますか?
7 に答える
軽量のマークアップ パーサーをMGBoxKitに追加しましNSString
た。Markdown ではありませんが、非常に似ています。これまでのところ、太字、斜体、下線、等幅、テキストの色、背景色、およびカーニングがサポートされています。NSAttributedString
MGMushParserクラスはスタンドアロン ポッドになりました。そのため、MGBoxKit から独立して簡単に使用できます。
NSString *markup = @"**bold**, //italics//, __underlining__, `monospacing`, and {#0000FF|text colour}";
UIFont *baseFont = [UIFont fontWithName:@"HelveticaNeue" size:18];
UIColor *textColor = UIColor.whiteColor;
myLabel.attributedString = [MGMushParser attributedStringFromMush:markup
font:baseFont color:textColor];
生のマークダウンを取り、それを NSAttributedString に変換するプロジェクトをオープンソース化しました。
https://github.com/dreamwieber/AttributedMarkdown
これは進行中の作業であり、さまざまなマークダウン要素に属性を割り当てる方法を示すデモ アプリケーションが含まれています。
DTCoreTextはhtmlをNSAttributedStringに変換します。また、OHAttributedLabelにはいくつかの基本的なマークダウンサポートがあります。
Bypassは、頻繁に更新される良い代替手段のようです (言及されている他のほとんどのリポジトリとは異なります)。UIView
レンダリング自体を処理するカスタム サブクラスも提供します。また、UITextView の代わりに Core Text を直接使用するため、より高速になります。
使いやすい完全な Markdown ライブラリを微調整するのに苦労していましたが、最終的にCocoaMarkdownを見つけました。
これは非常に優れており、ほとんどの構文をサポートし、使いやすい API を備えています。欠けていたのは画像のサポートだけだったので、それをフォークして完全な画像のサポートを追加し、キャッシュと URL にラップされた画像の使用を有効にしました。他の誰かの問題が解決されることを願っています。