flexpaper在.net中的应用

前提准备 flexpaper、pdf2swf可在我的博客资源中下载。
下面贴出处理的相关代码
起始页:

 <div style="text-align: center;">
            <label>文件上传</label>
            <asp:FileUpload ID="UploadFile" runat="server" />
            <asp:Button ID="btnUp" runat="server" OnClick="btnUp_Click" Text="文件上传" />
            <label>PDF上传的文件:</label>
            <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="查看" />
        </div>

//后端代码
 /// <summary>
        /// 文件上传
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnUp_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(this.UploadFile.FileName))
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "32uewqhiuewd", "<script type=\"text/javascript\">alert(\"请选择文件进行上传!\")</script>");
                return;
            }
            string Extension = Path.GetExtension(this.UploadFile.FileName);
            if (Extension.ToLower() != ".pdf")
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "32uewqhiuewd", "<script type=\"text/javascript\">alert(\"请上传pdf格式的文件!\")</script>");
                return;
            }
            string filePath = Server.MapPath("~/uploads/");
            if (!Directory.Exists(filePath))
                Directory.CreateDirectory(filePath);
            this.UploadFile.SaveAs(filePath + this.UploadFile.FileName);
            imgSrc.Src = filePath + "06_button_5.jpeg";
            string cmdStr = Server.MapPath("~/SWFTools/pdf2swf.exe");
            string sourcePath = @"""" + filePath + this.UploadFile.FileName + @"""";
            string targetPath = @"""" + (filePath + this.UploadFile.FileName).Substring(0, (filePath + this.UploadFile.FileName).Length - 4) + ".swf" + @"""";
            string argsStr = "  -t " + sourcePath + " -s flashversion=9 -o " + targetPath;
            using (Process p = new Process())
            {
                ProcessStartInfo psi = new ProcessStartInfo(cmdStr,argsStr);
                p.StartInfo = psi;
                p.Start();
                p.WaitForExit();
            }
        }
        /// <summary>
        /// swf查看
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            DirectoryInfo dir = new DirectoryInfo(Server.MapPath("~/uploads/"));
            if (dir.GetFiles("*.swf").Length > 0)//检测是否存在.swf文件
            {
                string fileName= string.Empty;
                foreach (FileInfo fi in dir.GetFiles("*.swf"))
                {
                    fileName = fi.Name;
                    break;
                }
                Response.Redirect("SWFTools/SWFViewer.aspx?FilePath=../uploads/" + fileName + "");
            }
        }

点击查看后:展示信息页面

<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <script src="../FlexPaper/js/jquery.js"></script>
    <script src="../FlexPaper/js/flexpaper_flash_debug.js"></script>
    <script src="../FlexPaper/js/flexpaper_flash.js"></script>
</head>
<body>
    <form id="form1" runat="server">
        <div style="margin: 0 auto; width: 98%; text-align: center;">
            <div style="position: absolute; left: 15%; top: 20px; height: 98%;">
                <a id="viewerPlaceHolder" style="width: 1000px; height: 95%; display: block;"></a>
                <!--设置一个隐蔽控件来得到要显示的文件的名字-->
                <input type="hidden" id="file" runat="server" />
                <script type="text/javascript">
                    var fileURL = $("#file").val();
                    var fp = new FlexPaperViewer(
                '../FlexPaper/FlexPaperViewer',
                'viewerPlaceHolder',
                {
                    config: {
                        SwfFile: escape(fileURL),
                        Scale: 1.2,
                        ZoomTransition: 'easeOut',
                        ZoomTime: 0.5,
                        ZoomInterval: 0.2,
                        FitPageOnLoad: false,
                        FitWidthOnLoad: false,
                        PrintEnabled: true,
                        FullScreenAsMaxWindow: false,
                        ProgressiveLoading: false,
                        MinZoomSize: 0.2,
                        MaxZoomSize: 5,
                        SearchMatchAll: false,
                        InitViewMode: 'Portrait',
                        ViewModeToolsVisible: true,
                        ZoomToolsVisible: true,
                        NavToolsVisible: true,
                        CursorToolsVisible: true,
                        SearchToolsVisible: true,
                        localeChain: 'zh_CN'
                    }
                }
                );
                </script>
            </div>
        </div>
    </form>
</body>
后端处理:
 protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.QueryString["FilePath"] != null)
            {
                this.file.Value = Request.QueryString["FilePath"].ToString().Replace("\\","/");
            }
        }

也可在我的资源中下载源代码查看 开发工具 vs2012
图片案例:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_31975127/article/details/54406577