public TextColumnsComposer(List <string>[] columnsData)
        {
            _defaultColumnSpecs = new TextColumnSpecs();
            _defaultRowSpecs    = new TextRowSpecs();

            Reset(columnsData);
        }
        public TextColumnsComposer(IEnumerable <string> columnsData, int columnsCount)
        {
            _defaultColumnSpecs = new TextColumnSpecs();
            _defaultRowSpecs    = new TextRowSpecs();

            Reset(columnsData, columnsCount);
        }
        public TextColumnsComposer(int columnsCount)
        {
            _defaultColumnSpecs = new TextColumnSpecs();
            _defaultRowSpecs    = new TextRowSpecs();

            Reset(columnsCount);
        }
        public TextColumnsComposer SetRowAlignment(TextRowAlignment alignment, int rowIndex)
        {
            if (rowIndex < 0)
            {
                throw new IndexOutOfRangeException();
            }

            if (_rowSpecsDictionary.TryGetValue(rowIndex, out var rowSpecs) == false)
            {
                rowSpecs = new TextRowSpecs();
                _rowSpecsDictionary.Add(rowIndex, rowSpecs);
            }

            rowSpecs.Alignment = alignment;

            return(this);
        }