Flexpaper 在线文档显示

本文提供了一步骤指南,说明如何使用FlexPaper和OpenOffice将Word和Excel文档转换为PDF格式。首先,从FlexPaper官方网站下载源码和示例。接着,安装Adobe Flash Builder 4.5并进行一些配置。最后,介绍如何利用OpenOffice将文档转换为HTML或PDF。同时,提供了Jodconverter项目的使用方法,并分享了测试和解决过程中遇到的端口问题的方法。

  第一步:先去下载Flexpaper的源码和例子,用TortoiseSVN下载下来地址是:http//flexpaper.googlecode.com/svn/trunk把上面的上个文件夹下载下来。


  第二步:安装Adobe Flash Builder 4.5,然后安装目录里有一个文件夹里面,可以安装eclipse插件。(安装后会把eclipse变为中文,在eclipse根目录下的eclipse.int配置文件中,填上两行字就行了,如下)

-startup
../Common/plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar

-nl
en_US

--launcher.library
../Common/plugins/org.eclipse.equinox.launcher.i18n.win32.win32.x86_3.2.0.v201103301700

  就是-nl en_US,还有就是装过之后会提示添加修改内存的东西,填在下边就行。

  第三步:

  把例子复制一下就行了。。。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>MyFirstFlexPaper</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="js/flexpaper_flash.js"></script>

<style type="text/css" media="screen">
html,body {
	height: 100%;
}

body {
	margin: 0;
	padding: 0;
	overflow: auto;
}

#flashContent {
	display: none;
}
</style>
</head>

<body>
	<div style="position:absolute;left:10px;top:10px;">
		<a id="viewerPlaceHolder"
			style="width:680px;height:480px;display:block"></a>
		<script type="text/javascript">
			var fp = new FlexPaperViewer('FlexPaperViewer',
					'viewerPlaceHolder', {
						config : {//new FlexPaperView要传三个参数  这里的是FlexPaperViewer,viewerPlaceHolder,和config
							SwfFile : escape('Paper.swf'),//需要Flex打开的文档,但是我发现没有FlexPaperViewer的时候就不恩能够运行。
							Scale : 0.6, //缩放的意思
							ZoomTransition : 'easeOut',//缩放样式的选择
							ZoomTime : 0.5,//缩放使用的时间
							ZoomInterval : 0.2,//缩放比例之间间隔,默认值为0.1,该值为正数。  神马意思???
							FitPageOnLoad : true,//自适应页面,工具栏上有
							FitWidthOnLoad : false,//自适应宽度,工具栏上有
							FullScreenAsMaxWindow : false,//如果设置为true的时候,点击全屏并不是全屏而是一个新页面,据说独立的flex播放的时候用这个比较合适
							ProgressiveLoading : false,//true的话不全部加载文档,边看边加载
							MinZoomSize : 0.2,//最大缩放比例
							MaxZoomSize : 5,//最小缩放比例
							SearchMatchAll : false,//为true的时候搜索的时候便会出现高亮
							InitViewMode : 'Portrait',//设置启动模式如"Portrait" or "TwoPage"  这句话什么意思???
							PrintPaperAsBitmap : false,

							ViewModeToolsVisible : true,//工具栏上是否显示样式选择框
							ZoomToolsVisible : true,//工具栏上是否显示缩放工具
							NavToolsVisible : true,//工具栏上是否显示导航工具
							CursorToolsVisible : true,//工具栏上是否显示光标工具
							SearchToolsVisible : true,//工具栏上是否显示搜索

							localeChain : 'en_US'//设置语言
						}
					});
		</script>
	</div>
</body>
</html>

  这样就可以了,至于怎样把word,excel之类的东西转换为pdf,有一个叫做openOffice的软件。


openOffice用法:

  注:下面的文章来自互联网的以为有心人,我稍作了些修改,因转载处较多不知道出处不挂上地址了。心存感谢,呵呵。

  1.下载并且安装,完成后通过cmd进入“安装目录\OpenOffice.org 3\program”文件夹下。运行一下命令

soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

  启动openoffice的一个服务,以备为其他程序使用。


  2.(个人省略了这一步,真要看去查看下端口就行了,命令netstat -a)测试一下8100端口是否能使用。cmd命令“telnet localhost 8100”,如果开启了,就会有黑的不能再黑的屏幕显现,如果没开启,就会出现连接不上的消息。


  3.下载jodconverter项目。


  4.自己创建项目,把jodconverter文件夹lib中的所有jar包都引用一下。然后写下以下代码

public class Test {
	public static void main(String args[]) {
		File inputFile = new File("E:\\Test\\aaa.doc");//源文件
		File outputFile = new File("E:\\Test\\bbb.html");//转换后的文件
		OpenOfficeConnection connection = new SocketOpenOfficeConnection(8100);
		try {
			connection.connect();
		} catch (Exception e) {
			e.printStackTrace();
		}
		DocumentConverter converter = new OpenOfficeDocumentConverter(
				connection);
		converter.convert(inputFile, outputFile);
		connection.disconnect();
	}
}


  5.上面的代码 doc->html;

    如果是xls->html,那就直接把“aaa.doc”改成“bbb.xls”;
    如果是doc->pdf,那就把“aaa.html”改成“aaa.pdf”。
    就测了这两个,其他的大家自己摸索吧。可以打开openoffice客户端程序,看看支持那些文件,保存时可以以那些格式保存。

  注:我转换的时候出了一个很诡异的错误,错误解决不了,而且出错后那个文件也删不掉,费了我大量的时间和精力。发现是office版本的问题,在进程中关掉openoffice,可以删掉文件。最好转换前,自己先测试下文件是否可以转换,就是打开软件先转转看。




评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值