User-Generated Content Collection with PDF Output

We’d like to create a page that includes several sections (perhaps a form tool) that lets user answer short questions, input information, and upload multiple files with text attached to label/explain the image. There would also be a function for the user to add additional sections if the # given isn’t enough for the information they want to add.

Once the page is completely filled in/uploaded to and the user hits submit - it would generate a PDF with all the content/images/etc.

Is there an existing app or tool that would allow us to achieve something like this on a page on our site? Thanks!