javascript - 如何只打印Canvas内容?

标签 javascript html angular canvas

我正在 Angular 5 中开发一个 pdfviewer。我的 html 页面如下所示:

enter image description here

pdf内容使用canvas元素显示。下面的代码片段是打印按钮。

<button  (click)="print()" title="Print" >
                  <span data-l10n-id="print_label">Print</span>
</button>

print(){
    window.print();
  }

当我点击它时,它现在正在打印整页。如下所示:

enter image description here

我只想打印 pdf 内容而不是整个 hmtl 页面。有什么办法可以做到吗?

提前致谢!!

最佳答案

您可以添加用于打印网页的css文件

<link rel="stylesheet" type="text/css" href="print.css" media="print" />

在此 css 文件中,您可以隐藏打印时不想显示的元素。

或者您可以在打印之前隐藏元素不推荐

更新 由于它是 css 文件上的 Angular 应用程序,因此您可以这样提及

@media print{
  .no-print{
    display: none;
  }
}

然后你可以添加no-print您不想打印的每个元素上的类。

关于javascript - 如何只打印Canvas内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49643678/

相关文章:

Javascript 书签在 Firefox 中输出 'true' 而不是执行脚本

javascript - Safari 画中画 - 自定义 HTML5 视频 Controller

HTML/CSS 如何在不使用 "position:absolute;"的情况下创建覆盖某个容器的覆盖层?

javascript - 如何制作从 mysql 获取图像的 slider 最后 5 张图像

html - 相同版本的 Firefox 在具有相同系统的不同计算机上的页面看起来不同

angular - 如何在 Ionic2 中单击时更改按钮颜色?

javascript - 我如何计算一个组件被调用的次数 Angular 4

javascript - 在 nodeJS MySql 中发送 DBNull.Value 而不是 'null'

angular - 模态组件关闭后如何刷新父组件

javascript - Angular (4.1.3) ng-select2 错误