Объединение ячеек в Word с помощью Java

В этой статье рассказывается, как объединить ячейки в Word с помощью Java. В ней есть настройки IDE, список шагов и пример кода, показывающий как объединить таблицы в Word с помощью Java. В ней используется предопределенный метод и показано использование этого метода для объединения диапазона ячеек в целевой таблице.

Шаги по объединению ячеек в Word с помощью Java

  1. Настройте среду на использование Aspose.Words for Java для объединения ячеек таблицы
  2. Добавьте предопределенный метод mergeCells() в ваше приложение
  3. Загрузите исходный Word document с таблицей в нем
  4. Доступ к целевой таблице из загруженного файла Word
  5. Создайте ссылку на начальную и конечную ячейки, которые вы хотите объединить.
  6. Вызовите метод mergeCells() и укажите начальную и конечную ячейку.
  7. Save измененный файл Word

Эти шаги определяют как объединять таблицы в Word с помощью Java. Добавьте предопределенный метод в свое приложение, загрузите исходный файл Word в объект класса Document, получите ссылку на целевую таблицу и определите начальные/конечные ячейки диапазона, который вы хотите объединить. Наконец, вызовите метод mergeCells(), который обновит загруженный файл Word и сохранит его как новый файл Word с другим именем.

Код для объединения ячеек в таблице Word с использованием Java

import com.aspose.words.*;
import java.awt.*;
public class Main
{
static void mergeCells(Cell startCell, Cell endCell)
{
Table parentTable = startCell.getParentRow().getParentTable();
// Define start and ending cell
Point startCellPos = new Point(startCell.getParentRow().indexOf(startCell), parentTable.indexOf(startCell.getParentRow()));
Point endCellPos = new Point(endCell.getParentRow().indexOf(endCell), parentTable.indexOf(endCell.getParentRow()));
// Create a range of cells
Rectangle range = new Rectangle(Math.min(startCellPos.x, endCellPos.y), Math.min(startCellPos.y, endCellPos.y),
Math.abs(endCellPos.x - startCellPos.x) + 1, Math.abs(endCellPos.y - startCellPos.y) + 1);
for (Row currentRow : parentTable.getRows())
{
for (Cell cell : currentRow.getCells())
{
Point currentPos = new Point(currentRow.indexOf(cell), parentTable.indexOf(currentRow));
// Validate the current cell
if (range.contains(currentPos))
{
cell.getCellFormat().setHorizontalMerge(currentPos.x == range.getX() ? CellMerge.FIRST : CellMerge.PREVIOUS);
cell.getCellFormat().setVerticalMerge(currentPos.y == range.getY() ? CellMerge.FIRST : CellMerge.PREVIOUS);
}
}
}
}
public static void main(String[] args) throws Exception // Merge Table Cells in Java
{
// Set the licenses
new License().setLicense("License.lic");
Document tableDoc = new Document("Table.docx");
Table tbl = tableDoc.getFirstSection().getBody().getTables().get(1);
Cell startingCell = tbl.getRows().get(1).getCells().get(1);
Cell endingCell = tbl.getRows().get(2).getCells().get(2);
// Merge the cells
mergeCells(startingCell, endingCell);
tableDoc.save("MergeCells.docx");
System.out.println("Word table merged successfully");
}
}

Этот фрагмент кода демонстрирует, как объединить ячейки в Microsoft Word с помощью Java. Предопределенный метод обращается к родительской таблице и устанавливает горизонтальные и вертикальные свойства слияния всех ячеек в диапазоне, предоставленном в качестве аргументов. В вашем примере кода вам не нужно вдаваться в подробности этого метода, просто вызовите метод mergeCells() с начальной конечной конечной ячейкой.

Этот урок показал нам, как объединить ячейки в Word с помощью Java. Если вы хотите разделить документы Word по разделам, обратитесь к статье Разделить документ Word на разделы с помощью Java.

 Русский