1)下载软件
SwfTools http://www.swftools.org/download.html
flexpaper http://code.google.com/p/flexpaper/
2)设置FlexPaperViewer各个参数的意义请自行google
var fp = new FlexPaperViewer(
'/swfFiles/FlexPaperViewer',
'viewerPlaceHolder',
{ config : {
SwfFile : escape('shwopdf/pdfFile/'+data),
Scale : 0.6,
ZoomTransition : 'easeOut',
ZoomTime : 0.5,
ZoomInterval : 0.2,
FitPageOnLoad : true,
FitWidthOnLoad : true,
PrintEnabled : true,
FullScreenAsMaxWindow : false,
ProgressiveLoading : true,
MinZoomSize : 0.2,
MaxZoomSize : 5,
SearchMatchAll : false,
InitViewMode : 'Portrait',
ViewModeToolsVisible : true,
ZoomToolsVisible : true,
NavToolsVisible : true,
CursorToolsVisible : true,
SearchToolsVisible : true,
localeChain: 'zh_CN'
}});
3)java代码的转换处理
private Runtime r;
@SuppressWarnings("rawtypes")
private void pdfToSwf(HttpServletRequest request, HttpServletResponse response, Map model) throws Exception {
String fileStr = request.getParameter("fileStr");
File f = new File(this.getClass().getResource("/").getPath());
File pdfFile = new File(f.getPath().substring(0,f.getPath().indexOf("WEB-INF")) + "pdfFile/" +fileStr+".pdf");
File swfFile = new File(f.getPath().substring(0,f.getPath().indexOf("WEB-INF")) + "pdfFile/" +fileStr+".swf");
r = Runtime.getRuntime();
if(!swfFile.exists()){
if(pdfFile.exists()) {
try {
String cmdString = "D:/SWFtools/pdf2swf.exe -t " + pdfFile.getPath() + " -o " + swfFile.getPath() + " -s T=9 ";
r.exec(cmdString);
} catch (Exception e) {
e.printStackTrace();
}
} else {
System.out.println("PDF文件不存在");
}
} else {
System.out.println("已经转为SWF文件");
}
output(swfFile.getName(), response);
}