A simple solution for this seems something like this in mainbody.php:
if ($_GET["pdf"]) {
include 'pdf.php';
} else if ($_GET["print"]){
include 'print.php';
} else {
include 'web.php';
}
Then you can load custom content type code for
www.yourdomain.com/category/article.html (regular content type for browser) or
www.yourdomain.com/category/article.html?pdf=1 (load your custom pdf functions) or
www.yourdomain.com/category/article.html?print=1 (load your custom print functions)
If you want to link this views you can use...
$currenturl = JUri::getInstance();
$pdfurl = $currenturl . "&pdf=1";