ลองแล้ว เวิคดีครับ
http://27.254.38.80/~fatsions/tcpdf/ 
ผมใช้ tcpdf ในการ gen pdf น่ะครับ หาโฟลดเอาใน google
ส่วนเมล์ก็หาพวก phpmailer ก็ได้ครับใช้งานง่ายดีครับ
***เพิ่มเติมโฟลเดอร์ data/ ที่ใช้เก็บไฟล์ต้อง chmod777 ด้วยน่ะครับ เด๋วมันเขียนไฟล์ลงไม่ได้
อันนี้โค้ดตัวอย่างผมครับเขียนสด 555 มั่วได้อีก ไม่เข้าใจตรงไหนลองถามมาถ้าตอบได้ก็จะตอบ ตอบไม่ได้ก็ ตัวใครตัวมันครับ

แต่ผมลองแล้ว ใช้ได้ครับ
<?php
$flag = false;
if($_POST){
require_once('mail.php');
require_once('config/lang/eng.php');
require_once('tcpdf.php');
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 001');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 001', PDF_HEADER_STRING);
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
//set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->setLanguageArray($l);
$pdf->setFontSubsetting(true);
$pdf->SetFont('freeserif', '', 14);//include this for support utf-8 language
$pdf->AddPage();
$html = '<h1> Hi :'.$_POST['email'].'</h1>';
$html .= '<p>';
$html .='Your Description :'.$_POST['enquiry'];
$html .='</p>';
$pdf->writeHTMLCell($w=0, $h=0, $x='', $y='', $html, $border=0, $ln=1, $fill=0, $reseth=true, $align='', $autopadding=true);
$filename = 'data/file_'.md5(mt_rand()).'.pdf';//เก็บไฟล์ลงในโฟลเดอร์ data
$pdf->Output($filename, 'F');
$subject = 'Message form'.$_POST['email'];
$mail = new Mail();
$mail->protocol = 'mail';
$mail->setTo($_POST['email']);
$mail->setFrom($_POST['email']);
$mail->setSender('NoobMan');
$mail->setSubject(html_entity_decode($subject, ENT_QUOTES, 'UTF-8'));
$mail->setHtml($html);
$mail->setText(html_entity_decode($text, ENT_QUOTES, 'UTF-8'));
$mail->addAttachment($filename);
$mail->send();
$flag = true;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</HEAD>
<BODY>
<?php if($flag){?>
<h1>ส่งข้อความแล้ว</h1>
<p><a href="<?php echo $filename; ?>">Download file ที่นี่</a></p>
<?php } ?>
<form name="sendmail" action="index.php" method="post">
<table>
<tr>
<td>
Your mail:</td><td><input type="text" name="email" size="30" /></td>
</tr>
<tr>
<td>
Your Description:</td><td><textarea name="enquiry" cols="50" rows="10"></textarea></td>
<tr>
<td>
<input type="submit" value="Send" /></td><td></td>
</table>
</form>
</BODY>
</HTML>