There is no built in method to distribute columns evenly. But, you can write your own function which calculates the page width and then sets the width of each column to fit equally.
function colWidth() {
var doc = DocumentApp.getActiveDocument().getBody();
// Get the table. If you have multiple, you'll need another loop.
var table = doc.getTables();
// Calculate the width of the document
var docWidth = (doc.getPageWidth() - doc.getMarginLeft() - doc.getMarginRight());
// Rows are children of tables. Loop through each row.
for(var i=0; i<table[0].getNumChildren(); i++) {
// Columns are children of rows. Loop through each column.
for(var j=0; j<table[0].getRow(i).getNumChildren(); j++) {
// Get the cell and set the calculated width. You probably only need to do this for the first row.
var cols = table[0].getRow(i).getCell(j);
cols.setWidth((docWidth / table[0].getRow(i).getNumChildren()));
}
}
}
Update
Setting row height is similar. There is no method to get the height of the table, so you need to calculate it from individual row heights.
function rowHeight() {
var doc = DocumentApp.getActiveDocument().getBody();
var table = doc.getTables();
// set an integer to hold the current table height
var tableHeight = 0;
var numRows = table[0].getNumChildren();
// get the height of the table
for(var i=0; i<numRows; i++) {
tableHeight += table[0].getRow(i).getMinimumHeight();
}
// loop again to set the height for each row evenly
for(var j=0; j<numRows; j++) {
table[0].getRow(j).setMinimumHeight(tableHeight / numRows);
}
}