java根据模板生成word文档

有个问题迷惑我好久了,用java根据模板生成word文档,如果要生成的文档内容、格式基本固定,比如荣誉证书之类的比较简单,只要在模板中将姓名等需要替换的内容用特殊字符标记即可,但是,如果是要生成一份A3的试卷,又该如何实现,求解,谢谢!