Ok, I've finished my project involving generating Pdf reports, so as promised, here is what I used - RRTCPdf.zip
I've basically just made a wrapper to transform TCPdf into a Yii component with autoloading goodness.
There is a component class file which allows you to set options and paths in your main.php config file, and an example TCPDF class extension file that you can use, or replace with your own custom one (at the very least you'll want to modify/extend it to implement your own page headers and footers).
My experience with TCPdf is that it is a beast. Most of the code is in a >1Mb class file, and depending on what you're doing, generating Pdf files can be slow (although in my case it wasn't too bad - I didn't have much content per document).
I didn't make much use of the Html conversion functions (although the whole class seems to be geared to Html conversion anyway), but from what I've read, using big chunks of Html as source can make things quite slow.
All in all, TCPdf is obviously very useful - it is quite powerful, and of course it is free!
However, while I'm certain that a lot of clever code has gone into it, I didn't think much to the coding. Coding standards are not too good, and the whole thing is not very readable. I found myself adding getters in my extension class, because there were a lot of setters that had no counterpart getter (which you'll need, for example, if you want to change margin sizes for something in particular, and then reset them back to what they were, without having to hard-code those sizes).
I think the whole thing could do with rewriting the Yii way (not necessarily for inclusion in Yii, just because it is so much clearer and cleaner). Proper use of getters and setters would be good, and using arrays to pass options into functions a la Yii (rather than some very long lines of mostly optional parameters) would be great. I'm also sure that there must be some way of compartmentalizing in places, so that the one massive class could be split into several files and classes that are only loaded if needed - maybe if I had a spare year I could go for it!
Anyway, there is my experience on the thing - I hope it's useful to someone.