Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }
Beispiel #4
0
        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();
        }
Beispiel #5
0
        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);
Beispiel #9
0
 public string ToHtml(this DocumentPart documentPart)
 {
 }
Beispiel #10
0
 public string Convert(DocumentPart part)
 {
     return(this.ConvertTo((dynamic)part)); // Use only dynamic (type conversion)
 }
Beispiel #11
0
        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));
        }