使用FlashPaper在线转换.doc为.swf

FlashPaper 是Macromedia推出的一款电子文档类工具!通过使用FlashPaper,可以将需要的文档通过简单的设置转换为SWF格式的Flash动画,原文档的排版样式和字体显示不会收到影响,这样做的好处是不论对方的平台和语言版本是什么,都可以自由的观看你所制作的电子文档动画,并可以进行自由的放大,缩小和打印,翻页等操作!

展示的效果就像百度的文库查看效果。

Flashpaper的使用相信大多数人都知道,这里的Demo是用于在线转换 .doc文件转换为 .swf的flash文件。

其原理是通过进程指令对文件进行转换,所以会涉及到进程的操作,

而 doc转换为swf文件的指令则是:

"flashpaper执行文件路径 输入.doc文件路径 -o 输出.swf文件路径"

 

废话不多说,代码如下:

/// <summary>
/// 执行进程
/// </summary>
/// <param name="sourceFileName">输入.doc文件路径</param>
/// <param name="outPutFileName">输出.swf文件路径</param>
public void ProcessExec(string sourceFileName, string outPutFileName)
{
    //FlashPaper文件安装路径 可自行设置
    string flashPrinter = "F:\\FlashPaper2.2\\FlashPrinter.exe";

    Process pss = new Process();
    pss.StartInfo.CreateNoWindow = false;
    pss.StartInfo.FileName = flashPrinter;
    pss.StartInfo.Arguments = string.Format("{0} {1} -o {2}", flashPrinter, sourceFileName, outPutFileName);
    try
    {
        pss.Start();
        while (!pss.HasExited)
        {
            continue;
        }

        System.Threading.Thread.Sleep(4000);
        Response.Write("Succefull!");
    }
    catch (Exception ex)
    {
        throw ex;
    }
}


protected void btnText_Click(object o, EventArgs e)
{
    string source = Server.MapPath("~/Files/Doc.doc");
    string output = Server.MapPath("~/Files/doc.swf");
    ProcessExec(source, output);
}

其中FlashPaper文件在Demo中 FlashPaper文件夹,

安装方法很简单,将Flashpaper文件夹复制到待安装文件夹,在初始化文件夹中点击 初始化.bat 文件即可执行安装(无病毒,呵呵,可放心安装)。

Demo下载:点击下载

这里补充下:在Server 2003 系统下,可能无法执行,这是因为IIS对Office文件操作权限限制的原因,解决方法可参考:

http://blog.csdn.net/phoenix_17th/archive/2010/05/28/5630677.aspx

posted @ 2011-02-14 10:15  沙茶叶  阅读(3402)  评论(5编辑  收藏  举报