PageOffice6最簡集成代碼(Asp.Net)

本文描述了PageOffice產品在普通的Asp.Net項目中如何集成調用。

  1. 新建Asp.Net項目:PageOffice6-Net-Simple
  2. 在您的web項目的“依賴項-包-管理NuGet程序包”中搜索到“Zhuozhengsoft.PageOfficeNet"程序後安裝最新版本。
  3. 拷貝pageoffice客戶端安裝程序到項目的bin文件夾下。
  • 客戶端是windows環境:拷貝posetup_6.x.x.x.exe到bin文件夾下;
  • 客戶端是國產操作系統環境:拷貝對應芯片的PageOffice客戶端deb安裝包到bin文件夾下;

PageOffice客戶端安裝程序下載地址:https://gitee.com/pageoffice/pageoffice6-client/releases

  1. 配置Web.Config文件,添加PageOffice相關的handler
<system.webServer>
  <handlers>
    <add name="poserver" path="/poserver.zz" verb="*" type="PageOffice.POServer.ServerHandler"/>
    <add name="poclient" path="/poclient" verb="GET" type="PageOffice.POServer.ServerHandler"/>
    <add name="sealsetup" path="/sealsetup.exe" verb="GET" type="PageOffice.POServer.ServerHandler"/>
    <add name="pageoffice" path="/pageoffice.js" verb="GET" type="PageOffice.POServer.ServerHandler"/>
    <add name="adminseal" path="/adminseal.zz" verb="*" type="PageOffice.POServer.AdminSealHandler"/>
    <add name="loginseal" path="/loginseal.zz" verb="*" type="PageOffice.POServer.AdminSealHandler"/>
  </handlers>
</system.webServer>
  1. 在D盤根目錄下準備一個有內容的test.docx文件,新建Word.aspx並調用PageOffice在線打開此文件。

Word.aspx.cs代碼如下:

namespace PageOffice6_Net_Simple
{
    public partial class Word : System.Web.UI.Page
    {
        public PageOffice.PageOfficeCtrl poCtrl = new PageOffice.PageOfficeCtrl();
        protected void Page_Load(object sender, EventArgs e)
        {
            poCtrl.SaveFilePage = "SaveFile.aspx";// 設置處理文件保存的頁面
            poCtrl.WebOpen("D:\\test.docx", PageOffice.OpenModeType.docNormalEdit, "Tom");
        }
    }
}

Word.aspx中的html代碼如下:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title></title>
  <script type="text/javascript">
      function Save() {
          pageofficectrl.WebSave();
      }
      function OnPageOfficeCtrlInit() {
          pageofficectrl.AddCustomToolButton("保存", "Save", 1);
      }
  </script>
</head>
<body>
  <div style="width:auto;height:98vh;">
    <%=poCtrl.GetHtmlCode()%> 
  </div>
</body>
</html>
  1. 新建SaveFile.aspx處理客戶端保存上傳的文件流。SaveFile.aspx.cs文件的代碼如下:
namespace PageOffice6_Net_Simple
{
    public partial class SaveFile : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            PageOffice.FileSaver fs = new PageOffice.FileSaver();
            fs.SaveToFile("D:\\" + fs.FileName);
            fs.Close();
        }
    }
}
  1. 在需要點擊超鏈接實現在線打開文件的頁面(比如:index.html)中添加pageoffice.js文件的引用。
<script type="text/javascript" src="/pageoffice.js"></script>

注意
pageoffice.js文件來自於Web.Config配置的handler。

  1. 然後在頁面中添加一個超鏈接,點擊超鏈接調用POBrowser對象的openWindow方法,彈出新瀏覽器窗口訪問Word.aspx在線打開文件,代碼如下:
<a href="javascript:POBrowser.openWindow('Word.aspx','width=1150px;height=900px;');">
    在線打開文檔
</a>
  1. 啓動項目,點擊“在線打開文檔”超鏈接,查看在線打開編輯保存Office文件的效果。

參考鏈接:PageOffice最簡集成代碼(Asp.Net)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章