How to set "table title and table on the same page"

Hello, may I ask how to set “table name and table on the same page”. I am a beginner who has just started learning ASPose. Please demonstrate with code. Thank you in advance

@Mikeykiss

To ensure that a table title and the table itself appear on the same page in Aspose.Words for Java, you can use the DocumentBuilder class to insert the title before the table. Additionally, you can control the page breaks and formatting to prevent the title from being separated from the table.

Here’s a simple example demonstrating how to achieve this:

import com.aspose.words.*;

public class TableWithTitle {
    public static void main(String[] args) throws Exception {
        // Create a new document and a DocumentBuilder
        Document doc = new Document();
        DocumentBuilder builder = new DocumentBuilder(doc);

        // Insert the title for the table
        builder.Writeln("Table Title: Example Table");

        // Start the table
        builder.StartTable();
        
        // Insert cells into the table
        builder.InsertCell();
        builder.Write("Header 1");
        builder.InsertCell();
        builder.Write("Header 2");
        builder.EndRow();

        builder.InsertCell();
        builder.Write("Row 1, Cell 1");
        builder.InsertCell();
        builder.Write("Row 1, Cell 2");
        builder.EndRow();

        builder.InsertCell();
        builder.Write("Row 2, Cell 1");
        builder.InsertCell();
        builder.Write("Row 2, Cell 2");
        builder.EndRow();

        // End the table
        builder.EndTable();

        // Save the document
        doc.save("TableWithTitle.docx");
    }
}

Explanation:

  1. Document and DocumentBuilder: A new document is created, and a DocumentBuilder is instantiated to facilitate the insertion of content.
  2. Title Insertion: The title for the table is added using Writeln(), which ensures it is placed above the table.
  3. Table Creation: The table is started with StartTable(), and cells are inserted using InsertCell(). Rows are completed with EndRow().
  4. Saving the Document: Finally, the document is saved to a file.

This approach ensures that the title and the table are kept together on the same page, as long as there is enough space on the page for both. If you encounter issues with page breaks, you may need to adjust the document’s layout settings or check for any existing content that could affect the placement.

Feel free to modify the title and content of the table as per your requirements!

@Mikeykiss The question is already answered here:
https://forum.aspose.com/t/how-to-set-header-and-table-body-on-the-same-pagewrod/302109/6