public static string Convert(DocumentPart part, ConversionType type) { string result; if (type == ConversionType.Html) { result = part.ToHtml(); return(result); } if (type == ConversionType.LaTeX) { result = part.ToLaTeX(); return(result); } if (type == ConversionType.PlainText) { result = part.ToPlainText(); return(result); } return(null); }
public void Visit(DocumentPart part) { if (part == null) { throw new ArgumentNullException($"{nameof(part)} is null"); } Visit((dynamic)part); }
public static string ToBase64(this DocumentPart part) { if (part == null) { throw new ArgumentNullException($"{nameof(part)} is null"); } Base64DocumentPartVisitor visitor = new Base64DocumentPartVisitor(); visitor.Visit(part); return(visitor.Base64Text); }
private static string toLaTeX(DocumentPart part) { if (part is PlainText) { return(part.Text); } else if (part is Hyperlink) { return("\\href{" + (part as Hyperlink).Url + "}{" + part.Text + "}"); } else if (part is BoldText) { return("\\textbf{" + part.Text + "}"); } throw new NotImplementedException(); }
private static string toPlainText(DocumentPart part) { if (part is PlainText) { return(part.Text); } else if (part is Hyperlink) { return(part.Text); } else if (part is BoldText) { return(part.Text); } throw new NotImplementedException(); }
private static string toHTML(DocumentPart part) { if (part is PlainText) { return(part.Text); } else if (part is Hyperlink) { return("<a href=\"" + (part as Hyperlink).Url + "\">" + part.Text + "</a>"); } else if (part is BoldText) { return("<b>" + part.Text + "</b>"); } throw new NotImplementedException(); }
public string DynamicVisit(DocumentPart part) => Visit((dynamic)part);
public string Visit(DocumentPart text) => Visit((dynamic)text);
public string ToHtml(this DocumentPart documentPart) { }
public string Convert(DocumentPart part) { return(this.ConvertTo((dynamic)part)); // Use only dynamic (type conversion) }
public static string ToPlainText(this DocumentPart docPart) { var visitor = new Visitor(); return(visitor.DynamicToPlainText(docPart)); }
public static string ToPlainText(this DocumentPart part) { var visitor = new ToPlainTextVisitor(); return(visitor.DynamicVisit(part)); }
public static string ToLatex(this DocumentPart part) { var visitor = new ToLaTeXVisitor(); return(visitor.DynamicVisit(part)); }