Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Иногда определенные строки в таблице требуют заголовка или больших блоков текста, которые занимают всю ширину таблицы. Для правильного оформления таблицы пользователь может объединить несколько ячеек таблицы в одну. Aspose.Words Поддерживает слияние ячеек при работе со всеми форматами ввода, включая импорт HTML-контента.
В Aspose.Words, Слитые клетки представлены следующими свойствами CellFormat класс:
Значения этих свойств определяют слияние поведения клеток:
Чтобы проверить, является ли клетка частью последовательности слитых клеток, мы просто проверяем HorizontalMerge и VerticalMerge свойств.
Следующий пример кода показывает, как печатать горизонтальный и вертикальный тип слияния ячеек:
Слияние клеток в таблице, созданной с помощью DocumentBuilder, Вы должны установить соответствующий тип слияния для каждой ячейки, где ожидается слияние. CellMerge.First А потом CellMerge.Previous.
Кроме того, вы должны помнить, чтобы очистить настройку слияний для тех клеток, где слияние не требуется - это можно сделать, установив первую несливающуюся клетку. CellMerge.None. Если этого не сделать, все ячейки в таблице будут объединены.
Следующий пример кода показывает, как создать таблицу с двумя рядами, где ячейки в первой строке сливаются горизонтально:
Следующий пример кода показывает, как создать таблицу с двумя столбцами, где ячейки в первой колонке вертикально слиты:
В других ситуациях, когда DocumentBuilder не используется, например, в существующей таблице, слияние ячеек предыдущим способом может быть не таким простым. Вместо этого мы можем обернуть основные операции, связанные с применением свойств слияния к клеткам, в метод, который значительно облегчает задачу. Этот метод аналогичен методу автоматизации слияния, который называется объединением ряда ячеек в таблице.
Код ниже будет объединять ячейки таблицы в указанном диапазоне, начиная с данной ячейки и заканчивая конечной ячейкой. В этом случае диапазон может охватывать несколько строк или столбцов:
Следующий пример кода показывает, как объединить ряд клеток между двумя указанными клетками:
В зависимости от версии .NET Framework Если вы используете этот метод, вы можете улучшить его, превратив его в метод расширения. В этом случае вы можете вызвать этот метод непосредственно на клетке для слияния ряда клеток, таких как: cell1.Merge(cell2).
Как уже говорилось в предыдущих статьях, таблица Microsoft Word Это набор независимых рядов. Каждая строка имеет набор клеток, которые не зависят от клеток других строк. Таким образом, в Microsoft Word В таблице нет такого объекта, как “колонка”, а “1-я колонка” - это что-то вроде “набора 1-й ячейки каждой строки в таблице”. Это позволяет пользователям иметь таблицу, в которой, например, 1-й ряд состоит из двух ячеек - 2 см и 1 см, а 2-й ряд состоит из двух разных ячеек - 1 см и 2 см в ширину. И Aspose.Words Поддерживает эту концепцию таблиц.
Таблица в HTML имеет существенно разную структуру: каждая строка имеет одинаковое количество ячеек и (это важно для задачи) каждая ячейка имеет ширину соответствующего столбца, одинаковую для всех ячеек в одном столбце. Если так, HorizontalMerge и VerticalMerge вернуть неверное значение, используйте следующий пример кода:
Иногда невозможно определить, какие ячейки слиты, потому что некоторые новые версии Microsoft Word Флаги слияния больше не используются, когда ячейки сливаются горизонтально. Но для ситуаций, когда клетки сливаются в ячейку горизонтально по ширине с помощью флагов слияния, Aspose.Words обеспечивает ConvertToHorizontallyMergedCells Способ преобразования клеток. Этот метод просто преобразует таблицу и добавляет новые ячейки по мере необходимости.
Следующий пример кода показывает вышеупомянутый метод в работе:
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.