A:遇到这种情况,大概率是服务器的内存被打满了或者执行时间超时了。很多老旧的测评系统在生成 PDF 时,是单线程串行处理。也就是生成完第一份,再生成第二份,几百份一起下,服务器扛不住就直接断开连接。建议分批次下载,比如每次选 50 份导出。橙星云技术团队在底层设计时,采用了异步任务队列的方式,你在后台点导出后,任务会放到队列里慢慢跑,跑完直接生成一个打包好的 ZIP 下载链接,这样就不会出现卡死的问题。
Q:下载出来的 PDF 报告,用电脑自带的浏览器打不开,提示文件损坏?
A:这个情况经常出现在网速不稳定的时候。文件没下载完整,但是后缀名已经是 .pdf,这时候双击打开就会提示损坏。你可以看下文件大小,如果一个好几页的测评报告只有几 KB,那肯定是没下全。解决方法是换个稍微稳定的网络,或者用专门的下载工具重新下一次。另外,有些时候是系统生成的 PDF 格式不标准,建议用专业的 PDF 阅读器(比如 Adobe Acrobat)尝试修复打开。
Q:好不容易打开了,结果里面的字全是方块乱码,这怎么搞?
A:出现方块乱码,基本是字体缺失导致的。测评系统在服务器上把网页转换成 PDF 的时候,如果服务器里没有安装对应的中文字体(比如微软雅黑、宋体),转换出来的文字就会变成一个个小方块。这属于系统层面的环境问题。作为使用者,你没办法直接修,只能去联系平台的客服,让他们在服务器上补装一下中文字体。我们橙星云的系统是这样处理的:直接在生成引擎里内嵌了常用的中文字体库,确保不管在哪里导出都不会出现这种乱码。
Q:文字能看懂,但是表格和图表全都挤在一起,排版严重重叠,为什么?
A:排版重叠通常是因为有些长文本没有自动换行,或者图表的尺寸超出了 A4 纸的宽度。网页和 PDF 的渲染机制不一样,网页可以无限往下滚,横向也能滑动,但 PDF 的宽度是写死的。如果系统在生成时没有做好 CSS 分页截断和宽度限制,内容就会相互覆盖。遇到这个问题,你可以试试在导出前,把浏览器窗口拉窄一点,看下页面的响应式效果,如果网页上就已经重叠,那导出来肯定也重叠。最终解决还是得靠平台优化他们的打印样式表(Print CSS)。
Q:生成的报告里,有些人的雷达图是空白的或者只显示一半?
A:雷达图或者柱状图这类图表,通常是靠 JavaScript 在网页上动态画出来的。如果在图表还没完全画好、动画还没结束的时候,系统就抓取页面去生成 PDF,那抓到的就是个半成品甚至空白。这个问题在批量导出时特别常见,因为系统跑得太快了,没等图表加载完就截了图。应对办法是可以尝试单份导出看是否正常,如果单份正常,那就是系统的批量处理机制有缺陷,少给了一个“等待渲染完成”的指令。
Q:为什么我导出的 PDF 报告超级大,几十份就有几百兆?
A:报告体积过大,一般是因为系统在生成 PDF 时,把整个网页当成了一张超高清的大图片贴了进去,而不是文本。这种“纯图版”的 PDF 不仅体积大,里面的文字也无法复制。还有一种情况是,报告里嵌入了未经压缩的高清背景图或者大体积的 Logo。要解决这个,只能让平台调整生成参数,输出纯文本格式的 PDF,不仅文件小,打开速度也快很多。
