最近、私のプロジェクトで問題が発生しました。NSAttributedStringをHTMLファイルに変換する必要があります。解決策TagNameとidNameおよびClassNameのみを使用してHTMLファイルを出力すると同時に、CSSスタイルファイルを出力してHTMLファイルの表示方法を制御するため、ここをクリックしても機能しません。これが私のサンプルコードです。私の意図を理解していただければ幸いです。
-(NSDictionary *)html {{ NSTextStorage * textStorage=[自己コンテンツ]; NSArray * arr=[textStorage段落]; //CSS辞書を初期化します NSMutableDictionary * dict = [NSMutableDictionary dictionaryWithObjectsAndKeys: nil]; NSEnumerator * paragraphEnumerator; paragraphEnumerator = [arr objectEnumerator]; NSAttributedString*段落; NSMutableArray * paragrapHTMLStrings = [[NSMutableArray alloc] initWithCapacity:[arr count]]; NSMutableString * cssString = [[NSMutableString alloc] initWithCapacity:0]; [cssString appendString:@ "div {"]; [cssString appendString:[NSString stringWithFormat:@ "-webkit-column-count:%ld;"、self.columnCount]]; [cssString appendString:[NSString stringWithFormat:@ "width:%fpx;"、self.bounds.size.width]]; [cssString appendString:[NSString stringWithFormat:@ "height:%fpx;"、self.bounds.size.height]]; [cssString appendString:@ "}"]; [dict setObject:cssString forKey:@ "css"]; while(paragraph = [paragraphEnumerator nextObject]){ //初期化します NSUIntegerの長さ; NSRangeeffectiveRange = NSMakeRange(0、0); id attributeValue; 長さ=[段落の長さ]; //フォント属性を取得します attributeValue = [段落属性:NSFontAttributeNameatIndex:NSMaxRange(effectiveRange)effectiveRange:&effectiveRange]; NSLog(@ "font is%@"、[attributeValue fontName]); NSLog(@ "font-size is%f"、[[[attributeValue fontDescriptor] objectForKey:NSFontSizeAttribute] floatValue]); NSMutableString * htmlString = [NSMutableString stringWithFormat:@ ""、[attributeValue fontName]、 [[[attributeValue fontDescriptor] objectForKey:NSFontSizeAttribute] floatValue]]; [htmlString appendString:[段落文字列]]; [htmlString appendString:@ ""]; NSLog(@ "htmlString is%@"、htmlString); [paragrapHTMLStrings addObject:htmlString]; htmlString = nil; } NSMutableString * htmlStringOfGraphToReturn = [NSMutableString stringWithString:@ ""]; NSString * stringToAdd; NSEnumerator * stringEnumerator; stringEnumerator = [paragrapHTMLStrings objectEnumerator]; while(stringToAdd = [stringEnumerator nextObject]) {{ [htmlStringOfGraphToReturn appendString:stringToAdd]; } [htmlStringOfGraphToReturn appendString:@ ""]; [dict setObject:htmlStringOfGraphToReturn forKey:@ "html"]; //テストパーツ CSSSetGenerator * generator = [[CSSSetGenerator alloc] init]; NSMutableString * string = [ジェネレータ出力CSSStyleContent:self]; NSLog(@ "%@"、文字列); dictを返します。 }