Esempio n. 1
0
        public void RenderToRegion(
            Span span,
            Region region)
        {
            if (region == null)
            {
                throw new ArgumentNullException(nameof(region));
            }

            if (span == null)
            {
                span = Span.Empty();
            }
            else if (_resetAfterRender)
            {
                span = new ContainerSpan(
                    span,
                    ForegroundColorSpan.Reset(),
                    BackgroundColorSpan.Reset());
            }

            SpanVisitor visitor = null;

            if (_mode == OutputMode.Auto)
            {
                _mode = _terminal?.DetectOutputMode() ??
                        OutputMode.PlainText;
            }

            switch (_mode)
            {
            case OutputMode.NonAnsi:
                visitor = new NonAnsiRenderingSpanVisitor(
                    _terminal,
                    region);
                break;

            case OutputMode.Ansi:
                visitor = new AnsiRenderingSpanVisitor(
                    _console,
                    region);
                break;

            case OutputMode.PlainText:
                visitor = new FileRenderingSpanVisitor(
                    _console.Out,
                    new Region(region.Left,
                               region.Top,
                               region.Width,
                               region.Height,
                               false));
                break;

            default:
                throw new NotSupportedException();
            }

            visitor.Visit(span);
        }
        public void PrintHorizontalAndVerticalMerged()
        {
            //ExStart:PrintHorizontalAndVerticalMerged
            Document doc = new Document(MyDir + "Table with merged cells.docx");

            SpanVisitor visitor = new SpanVisitor(doc);

            doc.Accept(visitor);
            //ExEnd:PrintHorizontalAndVerticalMerged
        }
Esempio n. 3
0
        public static void PrintHorizontalAndVerticalMerged(string dataDir)
        {
            // ExStart:PrintHorizontalAndVerticalMerged
            Document doc = new Document(dataDir + "Table.MergedCells.doc");

            // Create visitor
            SpanVisitor visitor = new SpanVisitor(doc);

            // Accept visitor
            doc.Accept(visitor);
            // ExEnd:PrintHorizontalAndVerticalMerged
            Console.WriteLine("\nHorizontal and vertical merged of a cell prints successfully.");
        }
        public static void PrintHorizontalAndVerticalMerged(string dataDir)
        {
            // ExStart:PrintHorizontalAndVerticalMerged
            Document doc = new Document(dataDir + "Table.MergedCells.doc");

            // Create visitor
            SpanVisitor visitor = new SpanVisitor(doc);

            // Accept visitor
            doc.Accept(visitor);
            // ExEnd:PrintHorizontalAndVerticalMerged
            Console.WriteLine("\nHorizontal and vertical merged of a cell prints successfully.");
           
        }