我刚刚开始使用python-docx,我正试图将我的表的内容集中在一起。我有:
table = document.add_table(rows=1, cols=1)
tableHeader = table.rows[0].cells
tableHeader[0].text = 'test'
row_cells = table.add_row().cells
row_cells[0].text = 'example'
table.style = 'MediumGrid3'
输出带有标题test
和文本example
的表格。
我认为table.alignment = 1
会起作用,但它什么也没做。
那么如何将所有文本对齐到中心?
答案 0 :(得分:4)
以下是表格单元格垂直对齐的方法:
import traceback
from docx.oxml.shared import OxmlElement, qn
def set_cell_vertical_alignment(cell, align="center"):
try:
tc = cell._tc
tcPr = tc.get_or_add_tcPr()
tcValign = OxmlElement('w:vAlign')
tcValign.set(qn('w:val'), align)
tcPr.append(tcValign)
return True
except:
traceback.print_exc()
return False
答案 1 :(得分:1)
您在python-docx中支持的设置尚未得到支持。
如果您为它添加了一个问题,可能标题为:" feature:Table.alignment",在GitHub问题列表中,我们会将其添加到待办事项列表中。 https://github.com/python-openxml/python-docx/issues
如果您还没有遇到过,可以在此处找到python-docx的文档: http://python-docx.readthedocs.org/en/latest/
答案 2 :(得分:1)
在单元格中使用段落。 像这样:
import React from 'react';
import { useSelector, useDispatch } from 'react-redux';
// Count() actually would be in a different file and CountNoodle.js
// would import that file
function Count({count, increment, decrement}) {
return (
<div>
<button onClick={increment}> + </button>
{count}
<button onClick={decrement}> - </button>
</div>
);
}
function CountNoodle() {
const count = useSelector(state => state.countNoodle);
const dispatch = useDispatch();
const increment = () => dispatch({ type: 'INCREMENT_NOODLE' });
const decrement = () => dispatch({ type: 'DECREMENT_NOODLE' });
return <Count ...{count, increment, decrement} />;
// or return Count({count, increment, decrement});
}
export default CountNoodle;