在网页上显示自定义格式的文件 大家一定试过在直接在网页上打开pdf格式文件,进行阅读和操作。这个功能是怎么实现的?如何才能在网页上显示自定义格式的文件呢??? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 方式有很多种,给你一种方式:package print;import java.util.List;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServletResponse;import com.lowagie.text.Cell;import com.lowagie.text.Chunk;import com.lowagie.text.Document;import com.lowagie.text.Paragraph;import com.lowagie.text.Table;import com.lowagie.text.pdf.BaseFont;import com.lowagie.text.pdf.PdfWriter;public class PdfJava { private JobsDAO jobsdao; public PdfJava(){ this.jobsdao = new JobsDAO(); } public Document getPdf(HttpServletResponse response){ Document document = new Document(); try{ response.setContentType("application/pdf"); response.setHeader("Content-Disposition","attachment;filename=testport.pdf"); ServletOutputStream sos = response.getOutputStream(); PdfWriter.getInstance(document, sos); //PdfWriter.getInstance(document, new FileOutputStream("E:/test.pdf")); document.open(); BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED); com.lowagie.text.Font FontChinese = new com.lowagie.text.Font(bfChinese, 12, com.lowagie.text.Font.NORMAL); //document.add(new Paragraph("jobs的PDF打印s",FontChinese)); document.add(new Paragraph(new Chunk("jobs的PDF打印s",FontChinese))); Table table = new Table(5); table.setBorderWidth(1); //cell = new Cell("序号"); table.addCell(new Cell(new Chunk("序号",FontChinese))); table.addCell(new Cell(new Chunk("工作编号",FontChinese))); table.addCell(new Cell(new Chunk("工作描述",FontChinese))); table.addCell(new Cell(new Chunk("最小水平",FontChinese))); table.addCell(new Cell(new Chunk("最大水平",FontChinese))); List<Jobs> list = jobsdao.query("select * from jobs"); for(int i=0;i<list.size();i++){ Jobs job = new Jobs(); job = list.get(i); table.addCell(String.valueOf(i+1)); table.addCell(job.getJob_id()); table.addCell(job.getJob_desc()); table.addCell(job.getMin_lvl()); table.addCell(job.getMax_lvl()); } document.add(table); document.close(); sos.close(); }catch(Exception e){ e.printStackTrace(); } return document; }} 给servlet调用。PdfJava pj = new PdfJava(); pj.getPdf(response);这样就行。 licip 兄提供的是 java 语言,如果是 python 写的网站呢? 求一个功能强大的正则表达式 有没有办法不让javascript编译器忽略无法识别的转义序列呢 可滑动的tabs选项卡,如何实现 Javascript中利用WScript.Shell的空格问题? 菜鸟求救 高手大侠进 谢谢··· select对象,动态添加option 大家知道 宇翔运通 吗?东莞的 javascript写注册表的问题 高速结贴......超简单问题 非常急,如何循环读取 苹果官网的一个网页,谁知道是用什么技术实现的?告诉我一下,小弟在此谢过! 全角字符转换半角字符!
package print;import java.util.List;import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;import com.lowagie.text.Cell;
import com.lowagie.text.Chunk;
import com.lowagie.text.Document;
import com.lowagie.text.Paragraph;
import com.lowagie.text.Table;
import com.lowagie.text.pdf.BaseFont;
import com.lowagie.text.pdf.PdfWriter;
public class PdfJava {
private JobsDAO jobsdao;
public PdfJava(){
this.jobsdao = new JobsDAO();
}
public Document getPdf(HttpServletResponse response){
Document document = new Document();
try{
response.setContentType("application/pdf");
response.setHeader("Content-Disposition","attachment;filename=testport.pdf");
ServletOutputStream sos = response.getOutputStream();
PdfWriter.getInstance(document, sos);
//PdfWriter.getInstance(document, new FileOutputStream("E:/test.pdf"));
document.open();
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
com.lowagie.text.Font FontChinese = new com.lowagie.text.Font(bfChinese, 12, com.lowagie.text.Font.NORMAL);
//document.add(new Paragraph("jobs的PDF打印s",FontChinese));
document.add(new Paragraph(new Chunk("jobs的PDF打印s",FontChinese)));
Table table = new Table(5);
table.setBorderWidth(1);
//cell = new Cell("序号");
table.addCell(new Cell(new Chunk("序号",FontChinese)));
table.addCell(new Cell(new Chunk("工作编号",FontChinese)));
table.addCell(new Cell(new Chunk("工作描述",FontChinese)));
table.addCell(new Cell(new Chunk("最小水平",FontChinese)));
table.addCell(new Cell(new Chunk("最大水平",FontChinese)));
List<Jobs> list = jobsdao.query("select * from jobs");
for(int i=0;i<list.size();i++){
Jobs job = new Jobs();
job = list.get(i);
table.addCell(String.valueOf(i+1));
table.addCell(job.getJob_id());
table.addCell(job.getJob_desc());
table.addCell(job.getMin_lvl());
table.addCell(job.getMax_lvl());
}
document.add(table);
document.close();
sos.close();
}catch(Exception e){
e.printStackTrace();
}
return document;
}
}
PdfJava pj = new PdfJava();
pj.getPdf(response);这样就行。