Я использую MemoryStream, чтобы собрать PDF-файл таким образом (извините, в C #, но он должен быть легко конвертируемым):
public byte[] GetPDF()
{
using (MemoryStream ms = new MemoryStream())
{
Document document = new Document(PageSize.A4, 38f, 30f, 15f, 35f);
PdfWriter writer = PdfWriter.GetInstance(document, ms);
...
document.Close();
return (ms.GetBuffer());
}
}
Затем вы можете предоставить поток байтов обратно в поток ответов, в MVC я делаюэто с возвращением FileResult следующим образом:
return File(GetPDF(), System.Net.Mime.MediaTypeNames.Application.Pdf, "generated.pdf");