PHP 打开打印浏览器


php open print browser

我发现这段代码会自动下载在GET方法中声明的pdf文件。 是否有另一个 php 代码可以打开浏览器打印窗口并允许用户单击打印? 我可以使用相同的 GET 方法吗? 谢谢

 <?php
$name = isset($_GET["name"])? trim($_GET["name"]): "";
if ($name && preg_match("/'.pdf$/i",$name) && file_exists($name)) {
    header ("Content-Type: application/octet-stream");
    header ("Content-Transfer-Encoding: binary");
    header ("Content-Length: " . filesize($name));
    header ("Content-Disposition: attachment; filename=$name");
    readfile($name);
    exit;
}
?>

我也发现了这个Javascript代码,但它仅适用于Chrome function printTrigger(elementId) { var getMyFrame = document.getElementById(elementId); getMyFrame.focus(); getMyFrame.contentWindow.print(); }

听起来你正在寻找window.print()

与其将文档作为具有attachment配置的octet-stream发送(这将强制用户下载它),不如简单地将 PDF(使用正确的header('Content-type: application/pdf');)加载到页面上的隐藏 iframe 中,然后使用 javascript print()函数(针对该框架)。