partially resolve performance issue
PDFDocument: do not re-read PDF document