The $pdf->Output(); call issues headers so the mime type is right so the browser can view the file as a .pdf. Outputting anything directly to the browser before the output call causes a HTML header to be sent at that point, breaking the PDF file.
Any output after the call gets interpreted as part of the file, corrupting the PDF file format. Watch those empty lines after the ?>
To add functionality, you extend the class. There are many examples of class extensions in the 'scripts' page.