在 国家中小学智慧教育平台 可以查找所需要的教材。
点击进入教材预览页面,如 普通高中教科书·语文必修 下册 后,F12进入开发者面板的网络选项卡中,搜索 .pdf,双击跳转后,修改 url 中的两个地方:
- 去掉 -private
- url 的最后一级文件名改成 pdf.pdf
上面的办法似乎已经失效,可以在 iframe 的源页面使用以下 js 脚本(系用豆包生成,对话见 在 PDFJS 页面保存 PDF ):
js// 保存当前PDF文件的函数function saveCurrentPdf() {try {// 获取PDFViewer实例const viewer = window.PDFViewerApplication;if (!viewer || !viewer.pdfDocument) {alert('未检测到PDF文档,请确保文档已加载完成');return;}// 显示加载提示alert('正在准备PDF文件,请稍候...');// 获取PDF数据viewer.pdfDocument.getData().then(function(data) {// 创建Blob对象const blob = new Blob([data], { type: 'application/pdf' });// 获取PDF标题作为文件名let fileName = viewer._title || 'document.pdf';// 确保文件名以.pdf结尾if (!fileName.endsWith('.pdf')) {fileName += '.pdf';}// 创建下载链接并触发下载const url = URL.createObjectURL(blob);const a = document.createElement('a');a.href = url;a.download = fileName;document.body.appendChild(a);a.click();// 清理资源setTimeout(() => {document.body.removeChild(a);URL.revokeObjectURL(url);}, 100);alert('PDF文件保存成功!');}).catch(function(error) {console.error('获取PDF数据失败:', error);alert('保存失败: ' + error.message);});} catch (error) {console.error('保存PDF时发生错误:', error);alert('保存过程中发生错误: ' + error.message);}}// 执行保存操作saveCurrentPdf();
