I’m using DOMPDF to generate about 500 reports from one script. It’s running out of memory after about 10-15 PDFs have been generated.
In debugging, it looks like it’s loading 8M every time it gets to the font loading stuff, but this seems like something that should be handled with the font caching code.
Any ideas of what’s going wrong here? I’d like to post a simple code snippet, but most of it is abstracted into multiple layers, so it’s not just a simple copy/paste.
First if this is for anything remotely commercial just get Prince XML. It’s substantially better and faster than any other HTML to PDF solution (and I’ve looked at them all). The cost will quickly be recouped in saved developer time.
Second, the quickest solution is probably to print each report in a separate process to solve any memory leak problems. If this is running from the command line have the outer loop be something like a shell script that will start a process for each report. If it’s run from the Web fork a process for each script if you’re on an OS that can do that.
Take a look at Convert HTML + CSS to PDF with PHP?.