使用浏览器自带打印功能,去除页眉页脚,横屏打印等

利用 jsPDF 实现动态 PDF 生成与自定义样式 本文详细介绍了如何利用jsPDF库在前端动态生成PDF文档。从基础入门到高级应用,涵盖了文本样式定制、图形图片插入、表格构建以及多页文档的页眉页脚管理。通过纯JavaScript实现,无需服务器端渲染,可高效创建数据报表、电子发票等个性化PDF文件,显著提升Web应用的用户体验。 阅读详情

HTML代码


<head>
    <script src="/Scripts/printCurrentPage.js" type="text/javascript"></script>
</head>
<body>
    <object id='WebBrowser' width="0" height="0" classid='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'
        viewastext>
    </object>

Javascript代码printCurrentPage.js文件


var hkey_root, hkey_path, hkey_key;
hkey_root = "HKEY_CURRENT_USER";
hkey_path = "\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";
// 设置网页打印的页眉页脚为空
function pagesetup_null() {
    try {
        var RegWsh = new ActiveXObject("WScript.Shell");
        hkey_key = "header";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "");
        hkey_key = "footer";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "");
    } catch (e) { alert(e); }
}
// 设置网页打印的页眉页脚为默认值
function pagesetup_default() {
    try {
        var RegWsh = new ActiveXObject("WScript.Shell");
        hkey_key = "header";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&w&b页码,&p/&P");
        hkey_key = "footer";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&u&b&d");
    } catch (e) { alert(e); }
}

function printMethod() {
    pagesetup_null();
    //window.print();
    WebBrowser.ExecWB(6, 6);
    //WebBrowser.ExecWB(6, 1);
    //WebBrowser.ExecWB(7, 1);
    window.opener = null;
    window.close();
}
//设置默认的页眉页脚 
function SetupPage() {
    try {
        var RegWsh = new ActiveXObject("WScript.Shell");
        hkey_key = "header"
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&w&b页码,&p/&P")
        hkey_key = "footer"
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "&b&d") //去掉了&u 因为我不想显示当前打印页的网址 
        hkey_key = "margin_bottom";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39"); //0.39相当于把页面设置里面的边距设置为10 
        hkey_key = "margin_left";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
        hkey_key = "margin_right";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
        hkey_key = "margin_top";
        RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
    }
    catch (e) { }
}
//设置纸张方向 
function SetupLandscape() {
    try {
        var wsShell = new ActiveXObject("WScript.Shell");
        //打印页面的Menubar必须可见,此操作类似按键盘上的Alt+F+U也就是 调出页面设置对话框 
        wsShell.sendKeys('%fu');
        //此操作类似按键盘上的Alt+A也就是 设置横向打印 
        wsShell.sendKeys('%a');
        //此操作类似按键盘上的回车 页面设置对话框的默认焦点在 确定上 所以直接确定 
        wsShell.sendKeys('{ENTER}');
    }
    catch (e) { }
}
window.onload = function () {
    //printMethod();
    SetupLandscape();
    //setTimeout("printMethod()", 2000);
    //setTimeout("SetupLandscape()", 1000);
    //setTimeout("SetupPage()", 2000);
    //setTimeout("printMethod()", 3000);
}

模板驱动型文档自动化:让内容秒变专业PDF的工程化实践 文档自动化并非简单排版提速,而是将内容组织、样式规则与输出逻辑封装为可复用的工程系统。其核心在于模板驱动——通过结构化模板定义标题层级、页眉逻辑、跨页行为等排版规则,实现从原始内容(如Word、URL、Markdown)到合规PDF/EPUB的零干预转换。这种机制显著降低知识工作者在格式调整、版本管理、协作反馈上的认知负荷,尤其适用于市场报告、培训手册、技术文档等强结构化场景。相比传统工具,它以约束换效率,用规则固化编辑经验,使‘内容即交付物’成为现实。 阅读详情

相关推荐

vue-pdf踩坑实录:从‘Cannot read properties of undefined’到完美预览的避坑指南

本文详细解析了使用vue-pdf插件时常见的‘Cannot read properties of undefined’错误及其解决方案,涵盖版本冲突、跨域问题、性能优化、移动端适配等核心难点。通过实战案例和代码示例,帮助开发者快速实现PDF预览功能,提升开发效率和应用稳定性。

weixin_42526353的博客 336

去除IE浏览器打印时的页眉页脚及设置页边距--简单实用,一次性解决

 打印业务单,遇到IE浏览器不支持的打印控件,直接调用Intelnet Explorer的打印功能,那么每次都要设置一下页边距与页眉页脚,非常麻烦,如何设置一次就解决这个问题,需要直接修改windows xp的注册表,接下来请大家按照以下指引操作。 第一步:进入windows的注册表,首先要点击菜单的运行,然后录入命令regedit,如下图所示:  第二步:在注册表编辑

目标范式 1万+

掌握网页打印:隐藏页眉页脚及元素技巧

<title>Web打印示例</title><style>} /* 黑白打印时,确保文字颜色为黑色 */</style>

weixin_26854475的博客 1084

php打印

php对硬件的支持很弱,很难找到连接硬件的方法,只能用js对打印机的方法实现,以下是选取页面一部分内容打印的代码和取消打印页页眉页脚的代码

qq_38938763的博客 377

Word长篇文档高效排版实战技巧全解析

有时候你希望目录简洁些,比如只列一级和三级标题,隐藏中间层级。怎么办?简单!只需修改TOC域参数即可:其中\o "1,3"表示仅提取1级和3级标题。其他级别统统忽略。想进一步个性化?还可以手动插入TC字段控制收录行为:{ TC "附录A 数据采集方法" \f a \l 1 }\f a:分类标识,可用于生成独立附录目录;\l 1:指定目录级别;结合主目录和附录目录,轻松实现双目录体系。

weixin_28949937的博客 1989

Conformal LEC逻辑等价性检查介绍和参考脚本

分为三个产品:Conformal L、Conformal XL、Conformal GXL。L是功能性检查,XL支持复杂数据通路的综合和APR优化,GXL支持定制的stdcell和定制memory的检查。Cadence Conformal Equivalence Checker,就是常说的LEC,可以用来验证RTL、门级网表、甚至spice网表的逻辑等价性。do文件是conformal的脚本文件,可以由综合工具(RTL Compiler/Genus)自己产生(write_do_lec),也可以手写。

NanDigits的博客 7255

WebBrowser 打印设置,打印预览,去页眉和页脚

input type=button name=button_print value="打印" class="noprint" onclick="javascript:printit()"><input type=button name=button_print value="打印" class="noprint" onclick="javascript:printit()">Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P");

男神的专栏 1083

11种图像清晰度评价函数附MATLAB代码

博主的第一篇博客! 本科毕业论文是“基于图像处理的自动对焦技术研究”,对焦过程中的一个重要阶段是图像清晰度评价,博主自己用MATLAB实现了4类清晰度评价函数:基于图像梯度的清晰度评价函数、频域评价函数、信息熵评价函数、统计学评价函数,总计11种。博主之前没有用过MATLAB,完全是本科论文需要,没办法对着别人的代...

kungfu_rabbit的博客 5万+

【HTML】HTML浏览器打印自定义页眉页脚

1、IE(Internet Explorer)浏览(V) 注册表位置 计算机\HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\PageSetup 代码 说明 示例 &w 标题 ...

少莫千华 1万+

【Cadence】stb仿真和ac仿真——以一个简单的全差分反相放大器仿真为例

最近在补一些仿真方法学的问题,以及一些一直以来都有点模糊的概念,简单记录一下。搭建一个以两个CMOS反相器构成的全差分放大器(28nm工艺,PMOS和NMOS尺寸一致)激励的设置方便共模和差模仿真用同一个TB(这里有一个问题:这个放大器需要在开环下仿真还是闭环下?哪些放大器应用在开环,哪些闭环?这种应用场景不同会导致需要仿真得到开环还是闭环增益,或者环路增益?(我知道放大器在设计的时候肯定都是闭环应用的多,但是什么时候没必要闭环应用?光验证ac和stb仿真是否一样的话有必要有回路吗?

weixin_44951108的博客 5万+

Mask2former自定义数据集实现滑坡语义分割

先介绍一下这次用的数据集:Bijie Landslide Dataset,是武汉大学在Triplesat卫星上裁剪的数据集,包含770张滑坡(image、mask、dem、边界坐标txt)和2003张非滑坡数据(dem、image)。直接在ade20k修改,按照路径和设置将预处理数据放好,该步骤很快就能结束,打开的图片是全黑的,因为0和1在图片上肉眼较难区分。bijie的数据集可以直接使用,接下去的步骤是1、预处理数据。配置文件修改训练类别和训练类型,由于我们分割的是滑坡,所以进行语义分割。

weixin_57812838的博客 2216

Web的打印方案:WebBrowser(WScript.Shell)、ScriptX(即smsx.cab)

WebBrowser 我们可以方便地通过 Internet Explorer 用户界面更改页边距、页眉和页脚设置和默认 Internet Explorer 打印机,IE也提供了一个叫WebBrowser 控件来供我们调用,通过调用,可以在页面上调出打印的设置窗口,在设置窗口里,用户可以更改页边距、页眉和页脚设置等。 &lt;object classid="CLSID:8856F961-...

887

2.4G跳频算法 2.4G切信道算法 (简例示意nRF52832)

2.4G跳频算法 nRF52832示例 2.4G自适应信道算法

Peter.Min 957

HTML生成PDF、web打印动态分页、预览。内容满了,自动换页、移动端兼容 bookjs-eazy

web打印自动分页,生成PDF。内容满了,自动换页。bookjs-eazy 转自:https://www.zhouwuxue.com 预览案例 eazy-2.html 另一个小说案例 除了自动分页,打印页码。还可以生成目录 使用方式: 配置页面参数: 在全局定义一个bookConfig <script> bookConfig = { pageSize : 'A4', // 定义纸张大小 // orientation : 'portrait',// lands

NOP 7782

2026年数学建模国赛B题无线电干扰源的快速自动定位与清除 论文详细解析

数学建模竞赛论文无线电干扰源的快速自动定位与清除2026 年高教社杯全国大学生数学建模竞赛 B 题完整求解论文交会定位、极大极小测点优化、自适应多频道搜索与定向源恢复的统一建模模型、算法、代码、图表与验证一体化交付本文研究圆形目标区域中多个未知无线电干扰源的快速检测、定位与清除问题,建立了由误差楔交会模型、角度观测信息模型、分层勘测模型、鲁棒射线交会模型和定向覆盖反馈模型组成的统一求解框架。模型同时覆盖题目中的四个子问题:多测向射线形成的多边形定位区域及直径、第二个测点的极大极小优选、全向源自动搜索清除策略

YOLO 359

华为OD机试 - 整型数组按照个位数排序(Java 双机位C卷 100分)

华为OD机试 双机位C卷题库疯狂收录中,刷题。

学Java,找哪吒 349

css - 使用@media print:打印完美网页

摘要:本文详细介绍CSS打印样式(@media print)的应用技巧,帮助优化网页打印效果。主要内容包括:1)基础语法与逻辑操作符;2)核心技巧如隐藏非必要元素、颜色优化和链接处理;3)关键分页控制方法;4)打印专用尺寸单位;5)高级特性如页眉页脚和计数器;6)实战案例展示。通过合理应用这些技术,可有效解决默认打印存在的导航栏干扰、背景浪费墨水、链接不可见等问题,提升打印文档的专业性和可读性。(149字)

尽日寻春不见春,芒鞋踏遍陇头云。归来笑拈梅花嗅,春在枝头已十分。 1390

借助AI高效写出结构严谨、内容专业的课题申报书:10大核心模块拆解(附实用提示词)

在很多老师和科研人员眼中,写一份高质量的课题申报,确实是一件非常困难的事。难就难在不只是要说清楚写了什么研究内容,还要体现申报书的可行性和创新性。七哥除了自己写课题,也经常指导会员同仁使用高级学术版搞定课题的申报工作,摸索出了一套行之有效的借助AI申报课题的技巧,在这篇文章中,我将给大家点明课题申报书的10大核心模块的写作技巧,还会给大家一些提示词模板供大家参考,如果你也正准备申报课题,那么这篇文章一定不要错过!特别说明的是,提示词的使用并不是一蹴而就的,是专业思考的延伸和AI化专业表达,过程中需要多次的调

智能AI让学术科研更容易 446

无涯教程 - Latex 格式(Format)

格式参数用于为文件或文档提供独特的样式,有多种格式化文档的方法,如下所列: 可选参数 流行的可选参数是: twocolumn -这是2列页面 titlepage - \maketitle生成标题页 openright -如果使用了两个侧面,则本章从右侧页面开始 landscape -用于在横屏中显示 legno -将等式编号放在左侧 flegn -左对齐方程式与中心对齐 ...

无涯教程 5149

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

前端网页打印成PDF( JSX TSX 页面打印)

关于前端页面的打印成PDF,有不同的方法。 window有一个自带的print(),window.print() 。 (1)这个方法比较简单明了, 调用方法,就会打印出body里面的内容,这种方法根据弹窗,可以自主选择是否添加页眉页脚,横屏竖屏等功能,比较灵活。 (2)同时,根据项目,有可能需要在打印的时候显示或隐藏某些内容,或者在打印的时候修改样式等,此刻需要: @media print {} 把需要打印的时候出现的特殊样式,写到这个函数里面,即可在打印的时候起作用,在页面显示的时候不会有效果。 jsP

m0_48367310的博客 1206

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

将小写金额转换为大写金额,根据对象的某属性排序,打印@media print

1.将小写金额转换为大写金额 moneyTurn(number) { if(number === 0 || number === '0'){ return '零' } let AA = new Array(...

Loria1的博客 313

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

模板驱动的文档自动化:无代码出版系统原理与实践

文档自动化是现代知识工作者提升交付效率的核心技术路径,其本质是通过结构化模板替代人工排版决策,实现内容到专业出版物的确定性转化。其底层依赖云原生架构、语义化内容解析与出版级渲染引擎,技术价值在于将排版规则编码为可执行契约,显著降低PDF生成、目录维护、跨页续接等重复劳动门槛。典型应用场景覆盖营销白皮书、培训手册、咨询报告及在线课程电子书等轻量级专业出版需求。本文聚焦模板驱动(Template-Driven)与无代码出版(No-Code Publishing)两大关键范式,解析其如何在不牺牲专业度的前提下,让

weixin_30340819的博客 384

html-ppt 之 xhs-white-editorial:用纯 CSS 组件实现小红书白底杂志风 HTML 演示模板

xhs-white-editorial 是 html-ppt(HTML PPT Studio)内置的 15 套 full-deck 模板之一,它把「小红书图文帖」的白底杂志排版与「横屏演示 deck」合并进同一套静态 HTML:纯白背景、顶部 10 色彩虹条、80–110px 巨型负字距标题、紫→蓝→绿→橙→粉渐变文字、马卡龙软色卡片,以及黑底白字的 `.focus` 强重点框。读完本文,你将掌握

gitblog_00071的博客 452

1小时快速开发一个定制化Markdown编辑器原型

现在每次有新的产品灵感,我都会先在这里快速跑通原型,确认需求真实存在再投入深度开发。通过npm安装后,只需简单封装成React组件即可使用,关键是要处理好内容变化时的实时预览联动。平台提供的实时预览功能帮了大忙——每次修改代码都能立刻看到效果,避免了反复打包的等待。选择React+Node.js组合,React负责动态渲染编辑器界面,Node.js处理文件导出等后端逻辑。我这个版本暂时跳过了复杂插件实现,先用空函数占位,但通过完善的接口文档(用JSDoc生成)让后续迭代方向清晰可见。

AgatePanther34的博客 537

impeccable 的 adapt 命令实战:将既有设计真正适配到新上下文(响应式 / 多端 / 多场景)

> 导读:本文以 impeccable 技能系统中 `adapt` 命令的完整参考文档([.grok/skills/impeccable/reference/adapt.md](https://link.gitcode.com/i/3bf20843d9e28c92ae9607348890728a),仓库内还有 [skill/reference/adapt.md](https://link.gitc

gitblog_00047的博客 441
上一篇: 你不可不知的JSON
下一篇: C#上传图片,同时生成缩略图
我心V飞翔
博客等级 码龄16年 55粉丝 82原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值