internal FontElement(int?size, NsColor?color, NsColor?outlineColor, MarkupContent content) { Size = size; Color = color; OutlineColor = outlineColor; Content = content; }
private MarkupNode?ParseElement() { MarkupTag startTag = ParseTag(); MarkupNode?node; switch (startTag.Name) { case "FONT": node = ParseFontElement(startTag); break; case "span": case "SPAN": node = ParseSpan(startTag); break; case "RUBY": node = ParseRubyElement(startTag); break; case "pre": case "PRE": node = ParsePreformattedText(); break; case "voice": node = ParseVoiceElement(startTag); break; case "k": case "K": return(new HaltElement()); case "?": return(new NoLinebreaksElement()); case "br": case "BR": return(new LinebreakElement()); case "i": case "I": MarkupContent content = ParseContent(startTag.Name); return(new ItalicElement(content)); case "u": case "U": return(ParseContent(startTag.Name)); default: throw new NotImplementedException($"Markup tag '{startTag.Name}' is not yet supported."); } return(node); }
public virtual void VisitContent(MarkupContent content) { }
internal ItalicElement(MarkupContent content) { Content = content; }
internal RubyElement(MarkupContent rubyBase, string rubyText) { RubyBase = rubyBase; RubyText = rubyText; }
public SpanElement(int size, MarkupContent content) { Size = size; Content = content; }