Cuando hablamos de imprimir desde PHP tenemos que tener presente dos posible escenarios:
<?php $html = '<h1>Test de Impresión.</h1>'; $html = 'HOLA MUNDO'; $printer = 'PDFCreator'; $enlace = printer_open($printer); printer_write($enlace, $html); printer_close($enlace); ?>
Requiere php_printer.dll en XAMPP lo debes copiar en c:\xampp\php\ext y añadir dicha extension en el php.ini con la linea extension=php_printer.dll.
Aqui explicaremos el segundo caso, pero tambien hay dos opciones:
<!DOCTYPE html>
<Html>
<Head>
<Meta charset='UTF-8'>
<Title></Title>
<Script>
function imprime() {
if (window.print) {
window.print();
} else {
alert('La función de impresion no esta soportada por su navegador.');
}
}
</Script>
</Head>
<Body onload="imprime();">
Hola Mundo
</Body>
</Html>
<Body onLoad='javascript:window.print()'> <INPUT TYPE=button NAME=print VALUE=Imprimir onclick='window.print()'>
<?php
require('pdf_js.php');
class PDF_AutoPrint extends PDF_JavaScript{
function AutoPrint($dialog=false){
//Open the print dialog or start printing immediately on the standard printer
$param=($dialog ? 'true' : 'false');
$script="print($param);";
$this->IncludeJS($script);
}
function AutoPrintToPrinter($server, $printer, $dialog=false){
//Print on a shared printer (requires at least Acrobat 6)
$script = "var pp = getPrintParams();";
if($dialog)
$script .= "pp.interactive = pp.constants.interactionLevel.full;";
else
$script .= "pp.interactive = pp.constants.interactionLevel.automatic;";
$script .= "pp.printerName = '\\\\\\\\".$server."\\\\".$printer."';";
$script .= 'print(pp);';
$this->IncludeJS($script);
}
}
$pdf = new PDF_AutoPrint();
$pdf->AddPage();
$pdf->SetFont('Arial','',20);
$pdf->Text(90, 50, 'Print me!');
//Open the print dialog
$pdf->AutoPrint(true);
$pdf->Output();
?>