ake0929315
V2EX  ›  Java

关于 Java 实现生成 PDF 换页的事情

  •  
  •   ake0929315 · May 31, 2024 · 5809 views
    This topic created in 890 days ago, the information mentioned may be changed or developed.
    有没有哪个大神有这方面的经验,如果我要生成 PDF 文件,放凭证信息,有些时候一页 A4 可以容纳 3 个完整凭证,但是有些时候由于记录多了一点,3 个完整的凭证内容没有办法容纳,就会导致第三个凭证的部份内容会显示在第二页上面,这样子特别的不美观。

    请 v 友们,提供一下这方面的经验或相关开源项目的经验。
    14 replies  •  2024-05-31 19:04:43 +08:00
    perbugwei
    perbugwei
    May 31, 2024
    1
    直接每页只放一个凭证,想要放在一起再拼长图
    Mithril
    Mithril
    May 31, 2024
    2
    取决于你用的技术。

    如果是走的 HTML+Headless Browser ,那你需要从 CSS 入手去限制分页。
    如果使用 jsPDF 等等 “在某个位置插入 xx” 这类的库,找对位置就行了。

    但无论如何,如果你信息真的太多了,那不分页也不可能放得下。除非你全缩放了。
    zvvvvv
    zvvvvv
    May 31, 2024
    3
    根据页面大小和凭证数量调整凭证大小,然后用绝对路径将图片放置在指定位置
    dongdong12345
    dongdong12345
    May 31, 2024❤️1
    4
    你可以尝试做一个 word 模板,通过 word 模板生成你想要的内容,最后再 word 转 pdf
    kkocdko
    kkocdko
    May 31, 2024
    5
    We even never know which libs is used in your project.
    weenhall5
    weenhall5
    May 31, 2024
    6
    @kkocdko you are god damn right
    ake0929315
    ake0929315
    OP
    May 31, 2024
    7
    @lmq2582609 目前我就是通过 xls 的模板去处理的,但是转成 pdf 后,也会存在一个凭证跨页了的情况。
    ake0929315
    ake0929315
    OP
    May 31, 2024
    8
    @perbugwei 这样子太浪费纸张了,这种问题,一般就是会打印全量凭证的情况。
    Nnq
    Nnq
    May 31, 2024
    9
    跨页就跨页了吧,偶尔有问题就将就用咯,如果经常超出 那就设施每页少放些凭证不就好了么🧾
    ake0929315
    ake0929315
    OP
    May 31, 2024
    10
    @kkocdko 目前就是先生成 excel ,然后把 excel 转成 pdf 的方式的。
    vaynecv
    vaynecv
    May 31, 2024
    11
    用过 aspose 的 pdf 工具包,可以设置一页显示,但是宽度过宽貌似会缩放
    参考:
    PdfSaveOptions saveOptions = new PdfSaveOptions();
    saveOptions.setOnePagePerSheet(true);
    saveOptions.setAllColumnsInOnePagePerSheet(true);
    ake0929315
    ake0929315
    OP
    May 31, 2024
    12
    @vaynecv 好的,这种方式,我先试试,感谢!
    Hozoy
    Hozoy
    May 31, 2024
    13
    可以试试 x-easypdf ,用这个好像会自动处理表格换页这种情况。
    Ashe007
    Ashe007
    May 31, 2024 via iPhone
    14
    https://www.cnblogs.com/ashet/p/17540963.html
    我转 PDF 是使用 spire.xls.free 这个 lib 非常好用,你可以试试
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   704 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 22:35 · PVG 06:35 · LAX 14:35 · JFK 17:35
    ♥ Do have faith in what you're doing.