从网站自动打印图像

Dev*_*inB 13 printing web-applications

一位同事和我正在讨论浏览器中的内容和内容.

然后提出一个问题,我们都不能肯定地回答.

您是否可以创建一个网页,当您导航到它时,它会启动客户端打印机并尝试打印文档.例如,每当你访问我的个人网站时,你都会被打印出我的照片,微笑着.

现在,这是一个可怕的想法.我意识到.但讨论引起了我的兴趣,如果可以做到,以及如何做到.我的朋友坚持认为,你能做的最好的就是为用户弹出打印对话框,他们必须自己点击打印.

是否有可能绕过这一步?或者只是一些花哨的脚本将鼠标移到打印按钮上并单击它?或者使用activeX控件直接与Printer API连接?

tj1*_*111 10

您必须提示用户打印当前页面,没有办法绕过此步骤(可能在activeX for IE中).也就是说,有两种不同的方法可以提示用户在页面加载时打印您微笑的图像.

这是在JavaScript中如何做到这一点.

window.onload = function() {
  var img = window.open("me-smiling.png");
  img.print();
}
Run Code Online (Sandbox Code Playgroud)

以下是如何在css/javascript/html中执行此操作(假设您的图片具有id'me-smiling'):CSS:

@media print {
   * {
     display:none;
   }
   img#me-smiling {
     display:block;
   }
}
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

 window.onload = function() { window.print() }
Run Code Online (Sandbox Code Playgroud)

  • 不,浏览器不支持打印两个大拇指的图片(IE支持一个拇指) (10认同)

小智 7

我发现避免打印对话框的唯一解决方案是在Mozilla Firefox上创建一个变量以设置自动打印.如果你需要使用其他浏览器,也许不是最好的解决方案,但在我的情况下,我只需要自动打印报告,它可以工作:

1-打开Firefox并在地址栏中输入"about:config"
2 - 右键单击​​任何首选项并选择"新建">"布尔"
3-添加一个名为"print.always_print_silent"的变量,其值为"true"值
4-重新启动Firefox浏览器.

希望能帮到你!