Grails: 从GSP生成PDF

5
我的 GSP 页面有多个表格和其他 HTML 元素,例如文本输入框和标题 <h1> <h2>
我希望所有这些信息都能被捕获并生成文本。
目前我只看到示例可以用于生成一个表格。
有没有快速的方法可以从已经填充到 GSP 中的所有数据中生成 PDF?
我正在使用导出插件。
compile ':export:1.6'

以下是我迄今为止尝试的示例代码。
它绘制了一个带有标题但行中没有数据的表格。
def myPDFexport () {
        String userNumber = params.UserInfoInstance;

        UserInfo userObj = UserInfo.findByNumber(userNumber);

        params.format = "pdf";
        params.extension = "pdf"
        List fields = ["User ID", "User Name", "User Password"]
        Map labels = [userID: "User ID", userName: "User Name", userPW: "User Password"]

        if(params?.format && params.format != "html"){
            response.contentType = grailsApplication.config.grails.mime.types[params.format]
            response.setHeader("Content-disposition", "attachment; filename=${woNumber}.${params.extension}")
            exportService.export(params.format, response.outputStream, userObj.list(params), fields, labels, [:], [:])
        }
    }

我对Grails和PDF生成都没有任何经验,所以我几乎迷失了方向。

如果可能的话,请提供一些示例代码。

2个回答

8

有很多解决方案可以创建PDF文档。

首先,您可以查看Grails渲染插件,这是一种简单的方法。

您可以使用任何视图或模板来生成pdf文档(或图像)。

将插件添加到您的项目后,您可以在控制器中添加以下操作:

def createPdfReport = {
    renderPdf(template: '/templates/pdf/yourtemplate', model: yourmodel, filename: "yourTitle")
}

它将使用指定的模板生成PDF并将其作为响应发送给客户端。如需更多信息,请查看插件文档。

文档页面出现404错误,链接是否已更改? - Narayan Subedi

0
在你的grails-app > BuildConfig中添加以下内容
compile ':pdf:0.6'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接