我想导出一个HTML文件到一个PDF文件在Golang。我试图使用来自https://pkg.go.dev/github.com/SebastiaanKlippert/go-wkhtmltopdf的go-wkhtmltopdf,我最初将其发布到Go论坛:https://forum.golangbridge.org/t/html-to-pdf-error/26811我们已经取得了一些进展,在添加:
page.EnableLocalFileAccess.Set(true)
当前的问题是没有应用样式表。
file, err2 := os.Open("./templates/tutorial.html")
if err2 != nil {
fmt.Println(err2)
}
defer file.Close()
b1 := make([]byte, 1000)
_, err2 = file.Read(b1)
pdfGenerator, err := pdf.NewPDFGenerator()
pdfGenerator.Dpi.Set(300)
pdfGenerator.Orientation.Set(pdf.OrientationPortrait)
pdfGenerator.Grayscale.Set(true)
page := pdf.NewPageReader(bytes.NewReader(b1))
page.EnableLocalFileAccess.Set(true)
page.Allow.Set("./styles/")
page.Allow.Set("./templates/")
pdfGenerator.AddPage(page)
err = EnsureBaseDir("./pdfFiles/test.pdf")
if err != nil {
fmt.Println("EnsureBaseDir failed error: ", err)
}
err = pdfGenerator.Create()
if err != nil {
fmt.Println("pdfGenerator.Create error: ", err)
http.Error(w, err.Error(), http.StatusInternalServerError)
}
err = pdfGenerator.WriteFile("./pdfFiles/test.pdf")
如果我在浏览器中打开这个html文件:
如果生成PDF,则如下所示:
我希望在这个问题上有任何帮助。
发布于 2022-03-23 20:09:50
我通过这样的改变解决了这个问题:
<base href="http://localhost">
<link rel="stylesheet" type="text/css" href="/styles/style.css">
https://stackoverflow.com/questions/71588641
复制相似问题