导航:首页 > 文件类型 > jsppdf文件

jsppdf文件

发布时间:2024-10-22 19:22:38

jsp页面如何导成pdf格式

先在服务器上生成PDF文件,然后用户通过点击指向PDF文件的超链接选择下载或打开。这是一个思路,或者说是思路之一。本文实现了这个思路,又给出另外一个思路并通过两种途径实现之。

1)直接在服务器上生成PDF文件。

<%@ page import ="com.lowagie.text.*
,com.lowagie.text.pdf.*, java.io.*"%>
<%
String filename =
"PDF"+(new Random()).nextInt()+".pdf" ;
Document document =
new Document(PageSize.A4);
ServletOutputStream out1
= response.getOutputStream();
try{
PdfWriter writer =
PdfWriter.getInstance(document,
new FileOutputStream(filename) );
document.open();
document.add(new Paragraph("Hello World"));
document.close();
}
catch(Exception e){}
%>

上面的程序在服务器上生成了一个静态的PDF文件。显然,每次运行所得的PDF文件的名称应该是独一无二不能有重的。本程序通过随机函数来命名生成的PDF文件。本程序的缺点就是,每次运行都会在服务器上产生一个PDF文件,如果不及时删除,数量会越来越大,这显然是站点维护者所不愿意看到的。

2)将PDF文件通过流的形式输送到客户端的缓存。这样做的好处是不会在服务器上留下任何“遗迹”。

i)直接通过JSP页面生成

<%@
page import="java.io.*,
java.awt.Color,com.lowagie.text.*,
com.lowagie.text.pdf.*"%>
<%
response.setContentType
( "application/pdf" );
Document document = new Document();
ByteArrayOutputStream buffer
= new ByteArrayOutputStream();
PdfWriter writer=
PdfWriter.getInstance( document, buffer );
document.open();
document.add(new Paragraph("Hello World"));
document.close();
DataOutput output =
new DataOutputStream
( response.getOutputStream() );
byte[] bytes = buffer.toByteArray();
response.setContentLength(bytes.length);
for( int i = 0;
i < bytes.length;
i++ )
{
output.writeByte( bytes[i] );
}
%>

ii)通过Servlet生成

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.lowagie.text.*;
import com.lowagie.text.pdf.*;
public void doGet
(HttpServletRequest request,
HttpServletResponse response)
throws IOException,ServletException
{
Document document =
new Document(PageSize.A4, 36,36,36,36);
ByteArrayOutputStream ba
= new ByteArrayOutputStream();
try
{
PdfWriter writer =
PdfWriter.getInstance(document, ba);
document.open();
document.add(new
Paragraph("Hello World"));
}
catch(DocumentException de)
{
de.printStackTrace();
System.err.println
("A Document error:" +de.getMessage());
}
document.close();
response.setContentType
("application/pdf");
response.setContentLength(ba.size());
ServletOutputStream out
= response.getOutputStream();
ba.writeTo(out);
out.flush();
}

㈡ jsp打开PDF

PDF 文件的 MIME 类型是 "application/pdf"。要用 servlet 来打开一个 PDF 文档,需要将 response 对象中 header 的 content 类型设置成 "application/pdf":

// MIME type for pdf doc
res.setContentType( "application/pdf" );

若要打开一个 Microsoft word 文档,你就要将 response 对象的 content 类型设置成 "application/msword":

// MIME type for MSWord doc
res.setContentType( "application/msword" );

如果是一个 Excel 文档,则使用 MIME 类型 "application/vnd.ms-excel"。其中 vnd 表示该应用程序的制造者,必须将它包含在 MIME 类型里才能够打开该类型文档。
有时候浏览器不能识别文档的 MIME 类型。通常这是由于没有安装这些文档需要的插件而导致的。这种情况下,浏览器会弹出一个对话框,询问用户是否需要打开该文件或是将它保存到本地磁盘上。

㈢ 怎么用jsp网页直接打开pdf文件.达到预览的效果,像百度那样的

网上有个开源组件叫flexpaper,使用的flash技术
网站后台把pdf文档转换成swf,就可以使用flexpaperviewer观看了。

㈣ 如何把 JSP 文件转换为PDF文件

只要是可以打印,就可以使用虚拟打印机来处理:
方法一:使用虚拟打印内机pdf factory即可,而容且其他格式文件只要是能够打印,选择这个虚拟打印机,都可以做成PDF文件,很简单实用;
方法二:用其他虚拟打印机转成PDF文件。

实在不能打印,还可以截屏嘛,然后按照下面的方法做出PDF的:
方法一:使用虚拟打印机pdf factory即可,而且其他格式文件只要是能够打印,选择这个虚拟打印机,都可以做成PDF文件,很简单实用;
方法二:使用FreePic2Pdf软件,进行批量转换;
方法三:用其他虚拟打印机转成PDF文件。

阅读全文

与jsppdf文件相关的资料

热点内容
眼睛很痒怎么办app 浏览:235
电脑管家添加信任程序 浏览:340
哪个网站能免费找大学作业 浏览:48
乐橙监控搜索不到网络怎么办 浏览:183
商品股指怎么查看商品基金数据 浏览:213
如何查数据库网址 浏览:520
浙江电子文件档案管理系统多少钱 浏览:915
javastring类型传值 浏览:395
网络通讯 浏览:592
贴片ic如何编程 浏览:695
非root管理应用程序 浏览:963
糯米购票app是什么 浏览:467
老版本三国杀下载地址 浏览:76
word怎么设置字体效果 浏览:310
tmpgenc教程 浏览:731
jsppdf文件 浏览:459
比特币怎么看链上数据 浏览:401
微信发送给朋友回调 浏览:630
lol文件修改分辨率 浏览:714
3g怎么开通4g网络 浏览:668

友情链接