`
汝亚莉
  • 浏览: 6898 次
  • 性别: Icon_minigender_2
  • 来自: 黑龙江
社区版块
存档分类
最新评论

pdf在线预览功能

阅读更多
1、contentfile 是webroot目录下的文件夹 待预览的文件上传到此文件夹。
2、Specificate 存放预览文件信息的实体类(表)。
3、spath + "\\" + specificate.getTitle(); 路径加 文件名取到文件。

public void preview() {
		
		String spath = ServletActionContext.getServletContext().getRealPath("")
				+ "\\contentfile\\";
		specificate = (Specificate) baseService.getById(Specificate.class, id);
		String fileName = specificate.getTitle();
		String fileNameWithPath = spath + "\\" + specificate.getTitle();
		log.info("文件名=" + fileName);
		// File file = new File(fileName);

		try {
			// 转码(UTF-8-->GB2312),现在环境下的编码是UTF-8,但服务器操作系统的编码是GB2312
			if (fileName != null && fileName.trim().length() > 0) {
				fileName = URLEncoder.encode(fileName, "GB2312");
				fileName = URLDecoder.decode(fileName, "ISO8859-1");
			} else {
				fileName = "moren.pdf";
				fileNameWithPath = spath + "\\" + fileName;
			}
			File file = new File(fileNameWithPath);
			FileInputStream fileinputstream = new FileInputStream(file);
			long l = file.length();
			int k = 0;
			byte abyte0[] = new byte[65000];
			getResponse().setContentType("application/pdf");
			getResponse().setContentLength((int) l);
			getResponse().setHeader("Content-Disposition",
					"inline; filename=" + fileName);
			while ((long) k < l) {
				int j;
				j = fileinputstream.read(abyte0, 0, 65000);
				k += j;
				getResponse().getOutputStream().write(abyte0, 0, j);
			}
			fileinputstream.close();
		} catch (IOException e) {
			log.error("打开失败,文件路径为:" + fileNameWithPath, e);
			e.printStackTrace();
			// return this.ajaxText("打开失败");
		}
		// return "";
	}


jsp页面
<input type="button" id="<s:property value='spId'/>"														class="btn btn-success" value="预览"	onclick="viewPDF(this)" />

script
<script type="text/javascript">
	
	function viewPDF(cur){   
       // alert($(cur).attr('id'));
      var   fileid = $(cur).attr('id');
     var strURL = "preview.action?id="+fileid;  
     var sheight = screen.height-70;  
    var swidth = screen.width-10;  
    var winoption="left=0,top=0,height="+sheight+",width="+swidth+",toolbar=yes,menubar=yes, location=yes,status=yes,scrollbars=yes,resizable=yes";  
    var tmp=window.open(strURL,'',winoption);  
}  
    
    </script>
分享到:
评论

相关推荐

    vue3.0pdf在线预览

    总之,Vue3.0结合PDF.js库,为我们提供了强大的工具来实现PDF在线预览功能。通过善用Composition API和Suspense组件,我们可以构建出结构清晰、性能优秀的PDF预览组件。在实际项目中,不断优化和调整,以满足不同...

    jquery实现PDF在线预览 jquery实现在线预览PDF文档

    本文将深入探讨如何使用jQuery实现PDF在线预览功能,这在许多Web应用中都是一种常见且实用的需求。 首先,我们需要理解PDF在线预览的基本原理。PDF(Portable Document Format)是一种通用的文件格式,用于保存文档...

    SpringBoot在线预览PDF文件

    本项目的核心是实现PDF在线预览功能,它利用了SpringBoot的Web服务特性,结合PDF.js库来实现在浏览器中预览PDF文件。 首先,我们需要理解SpringBoot的Web开发基础。SpringBoot内置了对HTTP请求处理的支持,通过创建...

    SpringBoot集成Freemarker+FlyingSaucer实现pdf在线预览.pdf

    为了实现PDF在线预览功能,我们需要先搭建一个SpringBoot项目。首先,需要在pom.xml文件中添加相应的依赖项,包括Freemarker和FlyingSaucer依赖项。然后,创建一个 PdfUtils 工具类,用于生成PDF文档。 四、PDF工具...

    pdf在线预览demo

    在“pdf在线预览demo”中,JQuery Media Plugin是实现预览功能的关键。这个插件扩展了jQuery的功能,允许开发者轻松地集成PDF预览到他们的网页中。使用该插件,开发者可以通过简单的API调用来加载PDF文档,并在用户...

    C#在线预览PDF

    此外,还可以使用第三方服务,如PDF.js(JavaScript库)、Google Docs Viewer API或Azure Blob Storage的PDF预览功能,通过API接口获取预览内容。 2. **PDF转图片**:一个简单的方法是将PDF页面转换为图片,然后在...

    pdf.JS-前端无需跳转在线预览pdf功能

    将PDF.JS集成到uni-app中,可以实现跨平台的PDF在线预览功能,这对于构建移动应用或响应式网站尤其有帮助。 在实现这个功能时,首先需要理解PDF.JS的基本工作原理。PDF.JS的核心是将PDF文件解析为一系列的图像或者...

    pdf在线预览

    本项目提供了前端和后台的完整代码,以及调用的JavaScript库,帮助开发者快速集成PDF在线预览功能。 前端部分: 前端主要负责展示PDF文档,通常会使用JavaScript库如PDF.js(由Mozilla开发)来处理。PDF.js能够解析...

    html在线预览pdf(pdf.js)

    这个库利用 JavaScript 实现了 PDF 文件的解析和渲染,使得开发者能够在 HTML 页面上实现 PDF 的在线预览功能,而无需依赖任何插件。然而,需要注意的是,PDF.js 不支持 Internet Explorer 8 及以下版本的老式浏览器...

    PDF文件在线预览+c#+flexpaper

    本文将深入探讨如何使用C#编程语言结合FlexPaper和SWFTools来实现高效的PDF在线预览功能。 FlexPaper是一款开源的JavaScript库,专为在网页上展示PDF和图像文件而设计。它提供了流畅的用户体验,支持多页滚动、缩放...

    Vue+ElementUI使用vue-pdf实现预览功能

    以下是从给定文件信息中提取出的关于实现Vue+ElementUI中使用vue-pdf实现PDF预览功能的知识点。 首先,要使用vue-pdf插件,需要通过npm命令安装vue-pdf依赖到项目中。安装的命令是npm install --save vue-pdf。安装...

    pdf在线预览插件

    本篇文章将深入探讨如何利用ViewerJS这个开源库来实现PDF在线预览功能。 ViewerJS是一个轻量级的JavaScript库,它基于HTML5技术,如Canvas和SVG,提供了一个交互式的PDF、图片和其他文件的在线查看器。它的核心优势...

    pdf在线预览插件pdf.js

    通过深入理解并利用PDF.js,开发者可以构建出高效且用户体验优秀的PDF在线预览功能,同时还能根据业务需求进行定制化开发,提升产品的专业性和易用性。在压缩包中的"文件预览pdfJS前台plugins"可能包含了PDF.js的...

    pdf在线预览脱壳组件

    PDF在线预览脱壳组件是一种专门用于在Web环境中实现PDF文件预览的技术解决方案。它允许用户无需下载PDF文件即可...通过这样的组件,开发者可以构建出安全、高效且用户友好的PDF在线预览功能,提升网站或应用的实用性。

    js插件让你的网站支持在线预览pdf功能.zip

    在本例中,我们关注的是一个名为“js插件让你的网站支持在线预览pdf功能.zip”的压缩包,它包含了实现PDF在线预览功能的JavaScript代码。这个插件特别适用于那些希望在自己的网站上提供PDF文件预览服务的开发者。 ...

    pdf在线预览功能,解决微信浏览器无法在线预览pdf文件,直接跳转下载的问题

    将此文件夹上传至服务器,使之能够访问,访问https://你的域名/pdfjs/web/viewer.html?file=可访问的pdf地址,用于解决微信浏览器无法在线预览pdf文件,而直接跳转下载的问题

    在线pdf预览插件pdfobject.js设置参数使用pdf预览器打印下载

    它使得用户无需离开当前页面就能预览PDF文档,提供了一种便捷的方式在Web应用中集成PDF在线预览功能。本篇文章将深入探讨如何使用PDFObject.js设置参数,实现PDF预览、打印和下载功能。 首先,引入PDFObject.js库。...

    pdf直接在线预览相关文件压缩包

    在Web项目中,为用户提供PDF在线预览功能,不仅可以提高用户体验,也能避免用户需要下载文件到本地的潜在安全风险。下面我们将详细介绍如何实现PDF在线预览,特别是通过Java代码来完成。 一、PDF在线预览原理 在线...

    AsposePdf在线预览pdf并lodop打印

    在IT行业中,AsposePdf和LODOP是两个非常重要的工具,它们分别在PDF处理和打印服务方面扮演着关键角色。...通过持续学习和实践,我们可以更好地应对这些挑战,实现高效、稳定的PDF在线预览和打印功能。

    C# Winfrom PDF 在线预览控件

    PDFXVwer是一个被描述为“非常好用的pdf文件编辑、注释工具中文版”,这表明它不仅提供预览功能,还可能包括编辑和注释PDF文档的能力。在实际应用中,这样的工具可以使开发者轻松地在C# Winform界面中集成PDF处理...

Global site tag (gtag.js) - Google Analytics