gpt4 book ai didi

pdf - 在Grails中的PDF渲染插件中嵌入字体

转载 作者:行者123 更新时间:2023-12-02 14:56:21 26 4
gpt4 key购买 nike

我想将“HelveticaNeueLTCom-BdCn.ttf”嵌入PDF文档中。我正在使用Grails渲染0.4.4插件来生成PDF文件。
我尝试跟随

@font-face {
font-family: 'Helvetica';
src: url('${grailsApplication.config.grails.serverURL}/fonts/HelveticaNeueLTCom-BdCn.ttf');
-fs-pdf-font-embed: embed;
-fs-pdf-font-encoding: Identity-H;
}

但这不起作用。

最佳答案

字体嵌入要求遵循以下步骤。这对我有用。
尝试告诉我您的反馈意见

  • 插件内的PdfRenderingService类应为
    对此字体模拟进行了如下编辑。
        protected doRender(Map args, Document document, OutputStream outputStream)           
    {
    def renderer = new ITextRenderer()

    // add the real font path from the server to be deployed to.
    //I have it in the assets folder of my project
    def path=servletContext.getRealPath("/")+"assets/HelveticaNeueLTCom-BdCn.ttf"
    ITextFontResolver fontResolver=renderer.getFontResolver();

    //add the encoding and embedded types to the font
    fontResolver.addFont(path,BaseFont.IDENTITY_H, BaseFont.EMBEDDED);

    configureRenderer(renderer)
    renderer.setDocument(document, args.base)
    renderer.layout()
    renderer.createPDF(outputStream)
    outputStream.close();
    }
  • 在您的模板文件中添加以下代码
     @font-face {
    font-family: "Helvetica";
    src: url("${grailsApplication.config.grails.serverURL}/assets/HelveticaNeueLTCom-BdCn.ttf") format("truetype"),
    url("${grailsApplication.config.grails.serverURL}/assets/HelveticaNeueLTCom-BdCn.woff") format("woff"),
    url("${grailsApplication.config.grails.serverURL}/assets/HelveticaNeueLTCom-BdCn.svg#HelveticaNeueLTCom-BdCn") format("svg");
    -fs-pdf-font-embed: embed;
    -fs-pdf-font-encoding: Identity-H;
    }
  • 关于pdf - 在Grails中的PDF渲染插件中嵌入字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30890837/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com