V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lygmqkl
V2EX  ›  问与答

PHP 环境下 Html to Word/PDF 有什么好用的库吗?

  •  
  •   lygmqkl · 2017-01-09 10:12:27 +08:00 · 1945 次点击
    这是一个创建于 2875 天前的主题,其中的信息可能已经有所发展或是发生改变。
    环境:是 PHP ,然后有一些不是很复杂的 html 代码要转换成 PDF 和 Word 。

    PDF
    用了 mpdf 可以直接转换出来,但是因为有一些需要动态替换的内容,所以格式有点不整齐,有的地方多点,有的地方少点。所以想上个文本编辑器,允许用户编辑然后再生成,但是比较担心不能很好的兼容文本编辑输出的 html


    Word
    因为上面的不稳定性,所以考虑生成 word 备用,结果, html to word 就没找到合适的方案, phpWord , phpdocx 都试过,不理想,想问下是不是我用的不对?还是没找对东西?

    不知道以上的情况有没有更好的解决方案,求思路,谢谢。
    8 条回复    2017-01-10 18:23:24 +08:00
    helone
        1
    helone  
       2017-01-09 10:22:41 +08:00
    word 的话其实不用遵从格式,直接保存 html 内容然后扩展名改成 doc 或者 docx 就可以了。。。
    holyghost
        2
    holyghost  
       2017-01-09 10:25:30 +08:00
    关于 PDF

    尝试过 mpdf 和各种 wrapper ,肥肠严重的问题是页面的样式和 pdf 的样式需要各写一套,改起来非常麻烦。
    后来改成直接调用 phantomjs 打印成 pdf 了,省心


    关于 word

    尝试过使用 html 另存为的方案,仍然存在各写一套的问题,我这暂时还没有好的办法。
    lygmqkl
        3
    lygmqkl  
    OP
       2017-01-09 11:22:59 +08:00
    @holyghost 所以 pdf 允许富文本编辑,然后直接用 chrome 之类打印出来?



    @holyghost
    @helone
    然后 word 直接用 html 改名 真的可以吗?
    holyghost
        4
    holyghost  
       2017-01-09 11:42:03 +08:00   ❤️ 1
    @lygmqkl

    1. 对,就是使用 phantomjs 访问目标页面,调用类似于 chrome 的 ctrl+p 其他打印机 - 本地打印机 - 打印成 pdf 的这个功能,只不过是在服务器上用命令行执行的而已。

    2. 可以,但是好像需要改 html 的一部分注释才能正常显示,资料很多查查看。
    lygmqkl
        5
    lygmqkl  
    OP
       2017-01-09 11:54:17 +08:00
    @holyghost 非常感谢,
    lygmqkl
        6
    lygmqkl  
    OP
       2017-01-09 13:43:57 +08:00
    @helone
    @holyghost

    请教一下,我直接把模版 html 改成.docx 然后尝试编辑,比如添加一个 1 ,然后保存, 直接得到

    “该网页将用以组织支持文件的文件夹已经保留为在当前位置上使用”

    google 和 baidu 都没找到任何解决办法,毫无头绪,能帮忙看下吗
    ACTom
        7
    ACTom  
       2017-01-10 14:49:19 +08:00
    如果是 html 转 pdf 的话,推荐用 wkhtmltopdf 。
    github 上有各种 php 的 wrap 。
    lygmqkl
        8
    lygmqkl  
    OP
       2017-01-10 18:23:24 +08:00
    @ACTom 3Q
    我去看下 mpdf 用的有点小不爽
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2678 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 05:20 · PVG 13:20 · LAX 21:20 · JFK 00:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.