社区
JavaScript
帖子详情
window.print() 页面打不全该如何解决
jittyhoum
2006-05-24 04:07:54
由于页面过宽或怎么样,调用了window.print()打印到A4纸,会被截掉很多东西
调用JS的打印能否实现此问题?
请问这个该如何解决呢
谢谢
...全文
4524
4
打赏
收藏
window.print() 页面打不全该如何解决
由于页面过宽或怎么样,调用了window.print()打印到A4纸,会被截掉很多东西 调用JS的打印能否实现此问题? 请问这个该如何解决呢 谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aosong11
2006-05-25
打赏
举报
回复
我遇到了与搂主同样的问题,搂主你的问题解决了吗?怎么解决的?CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'这个是怎么确定的?
d80
2006-05-24
打赏
举报
回复
楼上的那个方法和不错的我就是用那个来解决打印的。
而且可以打印你想要的内容,不要的可以不打印的。
danis_cn
2006-05-24
打赏
举报
回复
不错,路过学习!
vincentmax
2006-05-24
打赏
举报
回复
《WEB打印的相关技术分析》
现有的Web打印控制技术分成几种方案
自定义控件完成打印
利用IE自带的WebBrowser控件实现打印
利用第三方控件实现打印
以下主要谈前两个方面的内容
一、 自定义控件方式
自定义控件方式就是利用VB或VC等工具生成COM组件,用定义好的打印格式来分析打印源文件从而实现打印。只有将生成的组件下载并注册到客户机上,才能实现在客户端的打印。
难点主要是定义打印格式、如何来分析打印源文件。现有的比较好的方法是利用XML技术来全面的解决问题,利用XML可以非常容易地定义打印目标的文本、表格等内容的格式。但对程序员的开发要求高,难度比较大。
二、 利用WebBrowser实现Web打印
WebBrowser是IE内置的浏览器控件,无需用户下载。本文档所讨论的是有关IE6.0版本的WebBrowser控件技术内容。与其相关的技术要求有:打印文档的生成、页面设置、打印操作的实现等几个环节。
(一)、 打印文档的生成
1、 客户端脚本方式
客户端脚本分为VBScript、JavaScript、JScript几种脚本语言。在IE下开发应用使用的语法为JScript的语法,由于它和JavaScript几乎没有什么区别,所以也可以称其为JavaScript(下面简写为JS)。一般情况下,主要使用JS来实现DOM文档的分析,DOM为微软提出的一种Web文档模型,主要用来实现Web脚本编程。
利用JS可以分析源页面的内容,将欲打印的页面元素提取出来,实现打印。通过分析源文档的内容,可以生成打印目标文档。
优点:客户端独立完成打印目标文档的生成,减轻服务器负荷;
缺点:源文档的分析操作复杂,并且源文档中的打印内容要有约定;
2、 服务器端程序方式
服务器端程序方式,主要是利用后台代码从数据库中读取打印源,生成打印目标文档。当的页面生成时,还应适当考虑使用CSS来实现强制分页控制。
优点:可以生成内容非常的丰富的打印目标文档,目标文档的内容的可控性强。由于打印内容是从数据库中获取的,所以生成操作相对简单;
缺点:服务器端负载比较大;
(二)、 页面设置
页面设置主要是指设置打印文档的页边距、页眉、页脚、纸张等内容。页面设置将直接影响到打印文档版面的生成效果,所以它和打印文档的生成有着密切的关系。比如:表格的行数、大小、位置、字体的大小等。
现有的技术是利用IE6.0内置的打印模板方式来控制页面设置,其可以对打印目标文档产生非常大的影响。打印模板可以控制页边距、页眉、页脚、奇偶页等内容,并可以将用户的设置取得,还可以将设置发送到服务器端。
打印模板技术可以自定预览窗口和打印格式,最大限度地影响目标文档和打印效果。
(三)、 打印操作的实现
此功能的实现主要是利用WebBrowser控件的函数接口来实现打印、打印预览(默认的)、页面设置(默认的)。
<object ID='WebBrowser1' WIDTH=0 HEIGHT=0
CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'>
//打印
WebBrowser1.ExecWB(6,1);
//打印设置
WebBrowser1.ExecWB(8,1);
//打印预览
WebBrowser1.ExecWB(7,1);
三、 本项目采用的打印方案
服务器端程序方式、打印预览接口调用,下面为例,主要参考项目中的:pageErrorPrint.aspx.vb文件
主调用页
function PrintPage(iPageIndex,strQuery)
{
var strURL;
strURL = "PageErrorPrint.aspx?PageIndex=" + iPageIndex + "&QueryString=" + strQuery;
winPrint=window.open(strURL,"","left=2000,top=2000,fullscreen=3");
}
打印页HTML源中的预览控制
<SCRIPT language="javascript">
document.write("<object ID='WebBrowser' WIDTH=0 HEIGHT=0
CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object>");
WebBrowser.ExecWB(7,1);
window.opener=null;
window.close();
</SCRIPT>
程序头
'首先声明表格容器
Protected WithEvents phContainer As System.Web.UI.WebControls.PlaceHolder
'每个表格中的记录数量
Private Const ItemPerTable As Integer = 20
关键的实现部分
'创建一个符合打印要求的表格
tabPagePrint = NewPrintTable()
'将表头添加到此表格中
Call AddTableTitle(tabPagePrint)
'初始化记录器
i = 0
iItemIndex = iStartPoint
For Each clsItem In clsAllData.ErrorCollection
If i > 0 And i Mod ItemPerTable = 0 Then
'添加表格控件到页面中
phContainer.Controls.Add(tabPagePrint)
'在页面中添加一个换行符
Call AddPageBreak()
'创建新一轮的表格
tabPagePrint = NewPrintTable()
Call AddTableTitle(tabPagePrint)
End If
'将记录添加到表格中
Call AddItemToTable(iItemIndex, tabPagePrint, clsItem)
iItemIndex = iItemIndex + 1
i = i + 1
Next
'添加表格控件到页面中
phContainer.Controls.Add(tabPagePrint)
支持函数
'功能:添加页的换行符
Private Sub AddPageBreak()
Dim ltBreak As LiteralControl
ltBreak = New LiteralControl("<p style='page-break-before:always'>")
phContainer.Controls.Add(ltBreak)
End Sub
'功能:创建一个符合打印要求的表格
Private Function NewPrintTable() As Table
Dim tabSrc As New Table()
tabSrc.Width = Unit.Percentage(100)
tabSrc.Attributes("border") = "1"
tabSrc.CellPadding = 4
tabSrc.CellSpacing = 0
tabSrc.BorderWidth = Unit.Pixel(2)
tabSrc.BorderColor = Color.Black
tabSrc.Style.Add("FONT-SIZE", "12px")
NewPrintTable = tabSrc
End Function
WEB
页面
性能测试:
页面
加载过程+
页面
性能指标+
页面
性能工具实战课程
通过
页面
性能测试概念+
页面
加载过程+
页面
性能指标+
页面
性能测试工具的学习,可以学到如下内容:①WEB网站
页面
性能的指标(白屏时间、首屏加载完成时间、FP、FCP、DCL、CLS、FPS等);②WEB网站
页面
性能测试策略;③WEB网站
页面
加载过程(前端基础语言:HTML+CSS+JavaScript,DOM、CSSOM、渲染树、布局、绘制);④WEB网站
页面
性能测试工具的实际操作和功能介绍(开发者工具:控制台、网络、性能、Lighthouse、FPS渲染统计等);⑤WEB网站
页面
性能测试报告编写。⑥WEB网站
页面
性能测试步骤和实际操作。课程内容:第一章:课程简介1、课程介绍2、课程大纲第二章:
页面
性能测试1、
页面
性能测试概念2、
页面
性能测试专业术语3、
页面
性能测试策略第三章:
页面
加载过程1、HTML概念,HTML5实例,HTML5文档2、CSS概念,CSS实例,CSS文档3、JavaScript概念,JavaScript脚本实例和作用4、DOM和CSSOM理解5、HTML5渲染引擎理解6、HTML5
页面
内容渲染的过程,HTML渲染树第四章:
页面
性能测试工具1、
页面
性能测试具体工具2、Chrome开发者工具介绍第五章:
页面
性能测试工具-控制台:
window
.performance1、控制台:
window
.performance介绍2、
window
.performance.timing执行结果加载字段理解3、
window
.performance.timing执行结果属性对应
页面
阶段理解4、
window
.performance
页面
性能参数计算5、
window
.performance
页面
性能关键指标计算第六章:
页面
性能测试工具-网络面板1、Chrome-开发者工具-网络面板介绍2、Chrome-开发者工具-网络-瀑布流指标第七章:
页面
性能测试工具-性能面板1、Chrome-开发者工具-性能面板-使用方法2、Chrome-开发者工具-性能面板介绍3、Chrome-开发者工具-性能面板-控制按钮区域4、Chrome-开发者工具-性能面板-Overview区域5、Chrome-开发者工具-性能面板-火焰图区域6、Chrome-开发者工具-性能面板-内存图区域7、Chrome-开发者工具-性能面板-统计汇总区域8、Chrome-开发者工具-性能面板-统计汇总区域-摘要内容9、Chrome-开发者工具-性能面板-统计汇总区域-事件时长、调用、发生顺序第八章:
页面
性能测试工具-FPS监控1、Chrome-开发者工具-FPS监控-FPS介绍、FPS视觉效果、FPS查看方法第九章:
页面
性能测试-Lighthouse面板1、Chrome-开发者工具-Lighthouse介绍、操作方法、运行的生命周期2、Chrome-开发者工具-Lighthouse报告指标分析3、Chrome-开发者工具-Lighthouse的报告优化建议第十章:
页面
性能测试工具-Performance insights面板1、Chrome-开发者工具-Performance insights操作方法2、Chrome-开发者工具-Performance insights分析报告第十一章:网速调研1、
全
国网速的调研和本机网速测试第十二章:
页面
性能测试总结1、
页面
性能测试指标采集方式2、
页面
性能测试报告3、
页面
性能测试-操作步骤
关于
window
.
print
打印el-table列表打印不
全
的问题
解决
【代码】关于
window
.
print
打印el-table列表打印不
全
的问题
解决
。
React中使用
window
.
print
()出现
页面
无响应问题
解决
记录
文章目录一、问题背景:`
window
.
print
()
页面
打印出现
页面
无响应`二、问题原因:可能操作了document但是并未进行销毁(可能是)三、问题
解决
:总结: 一、问题背景:
window
.
print
()
页面
打印出现
页面
无响应 看了网上很多办法都是让用
window
.location.reload(),对于这个
解决
方案不置可否,刷新
页面
当然可以
解决
这个问题,但是不高级 二、问题原因:可能操作了document但是并未进行销毁(可能是) 三、问题
解决
: 封装一个
print
Fun()方法 //该方法参数 c
通过
window
.
print
() 打印
页面
及 遇到的坑
在IE11下 通过打印
页面
时候发现 bootstrap.Css文件会影响到
window
.
print
()的css样式,发生冲突 ,
解决
方法:[这是在下的现在的看法,可能对于前段理解还不够,还未找到更好的方法] 1.style里覆盖bootstrap.css 里关于
print
的代码 2.不用bootstrap 我是通过iframe来创建,自定义了样式 通过css,直接通过<style>或者 标签上 都可以 要背景色等样式需要设置一下
页面
的浏览器。 <di...
window
.
print
()打印
页面
进行缩放
window
.
print
()打印
页面
进行缩放
JavaScript
87,917
社区成员
224,617
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章