当前位置 > 首页 > Asp.net

.Net初次使用FlashPaper

2012-9-6 15:31:00来源:Asp.net

需求及思路

  本文主要想实现在线上传文档并转换成Falsh。度娘说FlashPaper能实现此功能,以下是使用心得。

工具介绍

  FlashPaper 是Macromedia推出的一款电子文档类工具,通过使用本程序,你可以将需要的文档通过简单的设置转换为SWF格式的Flash动画,原文档的排版样式和字体显示不会受到影响,这样做的好处是不论对方的平台和语言版本是什么,都可以自由的观看你所制作的电子文档动画,并可以进行自由的放大,缩小和打印,翻页等操作,对文档的传播非常有好处,而且由于Flash动画的普及性和强大的可调节性。(注:该介绍摘自百度百科FlashPaper)

  在FlashPaper进行工作的时候你会发现一个自动跳出的程序(这个程序和你要转换的文档类型有关),等打印结束后,程序就会自动关闭。没错这就是他的工作原理:就是用FlashPaper虚拟打印机将可打印文档转换为SWF或PDF文档。

  调用方式为使用进程方式调用:"flashpaper执行文件路径 输入文件路径 -o 输出.swf文件路径"

工具下载

  附件中为绿色FlashPaper 2.02版,点击下载:绿色版FlashPaper2.02.rar

  下载解压完成后点击目录下\FlashPaper\初始化\初始化.bat进行组件注册;根据权限,可能需要用管理员身份运行。

初始代码

protected Boolean ConvertFile(string fileName)        {            //FlashPaper文件安装路径 可自行设置            string flashPrinter = Server.MapPath("~/FlashPaper/FlashPrinter.exe");            //获取文件输入输出绝对路径            string inFile = GetFilePath(fileName);            string outFile = GetFlashPath(GetFlashName(fileName));            //进程操作            Process pss = new Process();            pss.StartInfo.CreateNoWindow = false;            pss.StartInfo.FileName = flashPrinter;            pss.StartInfo.Arguments = string.Format("{0} {1} -o {2}", flashPrinter, inFile, outFile);            try            {                pss.Start();                while (!pss.HasExited)                {                    continue;                }                return true;            }            catch (Exception)            {                return false;            }        }                    

发布问题

  对组件的调用在Window2003中被限制。具体方法点击这里

  本文使用方法1:配置Web.Config文件,在每次请求时模拟本地系统的账户。

  具体操作:在Web.Config文件中添加如下节点:

  <identity impersonate="true" userName="accountname" password="password" />
  其中:userName是要模拟的本地账号,password是该账号的密码。

测试问题

  多次测试后发现这样做有很多问题,有待我们下次开发时解决:

  1. 不能同时转换多个文件,否则将导致失败
  2. 如果转换失败导致进程不结束,将会照成死循环
  3. Office文件总转换失败,之前能成功

  问题解决请看下篇.Net再次使用FlashPaper

 

本文链接



  • Commercial Blog on a Community Site?

    2009-5-6 0:55:00

    Does anyone else find it distasteful, annoying, and unfair that Visual WebGui consistently uses i

  • Pimp My Visual Studio

    2007-9-28 10:02:00

    Ill have to check out this list of things to make a Visual Studio Usable system (that is, what yo

  • WCF分布式开发步步为赢系列的(12):WCF事务机制(Transaction)和分布式事务编程

    2009-6-1 2:58:00

    摘要: 今天我们继续学习WCF分布式开发步步为赢系列的12节:WCF事务机制(Transaction)和分布式事务编程。众所周知,应用系统开发过程中,事务是一个重要的概念。它是保证数据与服务可

  • 10年编程无师自通

    2009-8-5 11:13:00

    摘要: 看园子已经有这篇文章,但是看到的人太少了,我连附带的评论一起转来了,希望能给大家一些想法。我斗胆发到精华区,挨批评了我再摘下来,虽然是转的,但是我思考了好几天,要不要发到园子里的首页,现在下

  • CUDA Anisotropic Diffusion on a 2D Image

    2009-7-24 0:48:00

    Anisotropic Diffusion有一个重要的应用就是实现Edge-Preserved Blur(保持边缘的模糊),可以用于边缘检测与HDR到LDR的转换。经过测试发现在CUDA上可以极大地

  • 『原创』让.Net CF实现智能提示(AutoComplete)功能

    2010-9-15 20:49:00

    作者: Jack Fan 发表于 2010-09-15 20:12 原文链接 阅读: 98 评论: 0 前言 最近,一直在做Winform方面的开发,有一个公交信息查询的场景,用户

  • Silverlight 3 for Kiosk Apps? Of Course!

    2009-11-18 0:47:00

    Several of the customers I work with are looking to build kiosk or point-of-sale applications with

  • ASP.NET MVC4+EF4.1系列一之写在前面

    2012-4-13 23:52:00

    MVC4+EF系列一之说在前面 个人使用MVC和EF已经有一段时间了但是时间不长,当然对MVC的认识还 不是太多,再次只是为了巩固知识,同时也是为了记录见证自己的学习。在这之前一直都在使用MVC3,

  • 关于WebForms下面FileUpload控件获取FileName的一个注意点

    2009-8-31 21:57:00

    摘要: 这个问题源自一位热心而且踏实的读者,发现《ASP.NET 3.5+SQL Server网站模块化开发全程实录》中第117页的一段实例代码:[代码] 经过这位朋友的严格跟踪测试,发现Poste

  • .Net MF V4.0开源前的代码整理

    2009-7-21 22:23:00

    摘要: MF代码整理的目标分两部分,一是非托管代码(主要是和驱动相关的C++代码),二是托管代码(主要是.Net Micro Framework库);代码整理的步骤也分为两步,一是静态整理,目的是去