VintaSoft Imaging .NET SDK 15.1: Документация для Веб разработчика
В этом разделе
Добавление веб редактора документа в ASP.NET WebForms приложение
В этом разделе
В этом руководстве показано, как создать пустое веб-приложение ASP.NET в Visual Studio .NET 2019 и добавить веб редактор документа (с возможностью открытия, редактирования и сохранения документов DOCX) в приложение ASP.NET WebForms.

Вот шаги, которые необходимо выполнить:
  1. Создайте пустое приложение ASP.NET WebForms.

    Откройте Visual Studio .NET 2019, создайте новый проект типа "ASP.NET Web Application" и настройте его для использования .NET Framework 4.7.2:

    Выберите шаблон "Empty" для ASP.NET веб-приложения и настройте проект для использования WebForms:

  2. Серверная сторона: Добавьте ссылки на .NET-сборки Vintasoft в ваше ASP.NET WebForms приложение.

    Добавить ссылки на сборки Vintasoft.Shared.dll, Vintasoft.Imaging.dll, Vintasoft.Imaging.Office.OpenXml.dll, Vintasoft.Imaging.Pdf.dll, Vintasoft.Shared.Web.dll, Vintasoft.Imaging.Web.Services.dll, Vintasoft.Imaging.Office.Web.Services.dll, Vintasoft.Imaging.Web.Handlers.dll, Vintasoft.Imaging.Office.Web.Handlers.dll из папки "<SdkInstallPath>\VintaSoft Imaging .NET 15.1\Bin\DotNet4\AnyCPU\" в ASP.NET WebForms приложение.



  3. Серверная сторона: Укажите движок рисования, который должен использоваться VintaSoft Imaging .NET SDK для рисования 2D-графики.

    Приложение ASP.NET WebForms должно использовать библиотеку System.Drawing в качестве графического движка, поскольку приложение ASP.NET WebForms может использоваться только в Windows.

    Вот шаги, которые необходимо выполнить для использования движка System.Drawing:
    • Добавьте ссылку на .NET-сборку Vintasoft.Imaging.Gdi.dll.
    • Откройте файл "Default.aspx.cs" и добавьте строку кода "Vintasoft.Imaging.Drawing.Gdi.GdiGraphicsFactory.SetAsDefault();" в начало метода Page_Load - добавленный код указывает VintaSoft Imaging .NET SDK использовать библиотеку System.Drawing для отрисовки 2D-графики.

  4. Серверная сторона: Создайте веб сервисы, которые позволяют загружать/скачивать файлы и управлять Office документами.

    • Добавьте папку "Handlers" в приложение ASP.NET WebForms.
    • Создайте веб сервис, позволяющий загружать/скачивать файл

      • Щёлкните правой кнопкой мыши по папке "Handlers" и выберите пункт в контекстном меню "Add => Generic handler".
      • Укажите имя обработчика "MyVintasoftFileHandler" и нажмите кнопку "Ok".
      • Укажите, что класс MyVintasoftFileHandler наследуется от класса Vintasoft.Imaging.Web.HttpHandlers.VintasoftFileHandler.

        Вот C# код класса MyVintasoftFileHandler:
        namespace WebApplication1.Handlers
        {
            public class MyVintasoftFileHandler : Vintasoft.Imaging.Web.HttpHandlers.VintasoftFileHandler
            {
                public override bool IsEmptySessionSupported 
                { 
                    get
                    {
                        return true;
                    }
                }
            }
        }
        
    • Создайте веб сервис, позволяющий редактировать DOCX документ.

      • Щёлкните правой кнопкой мыши по папке "Handlers" и выберите пункт в контекстном меню "Add => Generic handler".
      • Укажите имя обработчика "MyVintasoftOfficeHandler" и нажмите кнопку "Ok".
      • Укажите, что класс MyVintasoftOfficeHandler наследуется от класса Vintasoft.Imaging.Office.Web.HttpHandlers.VintasoftOfficeHandler.

        Вот C# код класса MyVintasoftOfficeHandler:
        namespace WebApplication1.Handlers
        {
            public class MyVintasoftOfficeHandler : Vintasoft.Imaging.Office.Web.HttpHandlers.VintasoftOfficeHandler
            {
                public override bool IsEmptySessionSupported
                {
                    get
                    {
                        return true;
                    }
                }
            }
        }
        
        
  5. Клиентская сторона: Добавьте JavaScript-библиотеки в проект.

    • Добавьте папку "Scripts\" в приложение ASP.NET WebForms (если папка отсутствует).

    • Скопируйте файлы Vintasoft.Shared.js, Vintasoft.Imaging.js, Vintasoft.Imaging.css, Vintasoft.Imaging.Office.js и Vintasoft.Imaging.Office.css из папки "<InstallPath>\VintaSoft Imaging .NET 15.1\Bin\JavaScript\" в папку "Scripts\".

    • Укажите, какие "стандартные" UI-диалоги пользовательского интерфейса (диалог переименования листа, диалог поиска текста и т. д.) должны использоваться веб редактором документа.
      • Если веб редактор документа должен использовать готовые к использованию "стандартные" UI-диалоги jQuery UI:
        • Скопируйте файл jQuery в папку "Scripts\".
          Вы можете использовать файл "jquery-3.3.1.min.js" из папки "<InstallPath>\VintaSoft Imaging .NET 15.1\Examples\ASP.NET WebForms\CSharp\AspNetDocumentEditorDemo\Scripts\External\" или файл jQuery из любого другого источника.
        • Скопируйте файлы и папки jQuery UI в папку "Scripts\".
          Вы можете использовать файл "jquery-ui.min.js" и папку "jquery-ui-css" из папки "<InstallPath>\VintaSoft Imaging .NET 15.1\Examples\ASP.NET WebForms\CSharp\AspNetDocumentEditorDemo\Scripts\External\" или файлы и папки jQuery UI из любого другого источника.
        • Скопируйте файлы Vintasoft.Imaging.Dialogs.jQueryUI.js и Vintasoft.Imaging.Office.Dialogs.jQueryUI.js из папки "<InstallPath>\VintaSoft Imaging .NET 15.1\Bin\JavaScript\" в папку "Scripts\".

      • Если веб редактор документа должен использовать пользовательские "стандартные" диалоги, пожалуйста, ознакомьтесь с инструкцией по созданию пользовательских "стандартных" диалогов. здесь .
  6. Клиентская сторона: Добавьте JavaScript-код, который инициализирует и отображает веб редактор документа, в веб-форму по умолчанию.

    • Создайте папку "UploadedImageFiles" и скопируйте в нее тестовый DOCX документ. Этот документ будет отображаться в веб редакторе документа.

    • Создайте веб-форму "Default" - файл "Default.aspx".
      • Щёлкните правой кнопкой мыши по проекту и выберите в контекстном меню пункт "Add => WebForm":


      • Укажите "Default" в качестве имени веб-формы => откроется созданная веб-форма:

    • Добавьте ссылки на JavaScript-файлы Vintasoft:

      Вот HTML-код, который добавляет ссылки на файлы jQuery и JavaScript-файлы Vintasoft:
      <link rel="stylesheet" type="text/css" href="Scripts/jquery-ui-css/jquery-ui.min.css"/>
      <link rel="stylesheet" type="text/css" href="Scripts/Vintasoft.Imaging.css"/>
      <link rel="stylesheet" type="text/css" href="Scripts/Vintasoft.Imaging.Office.css"/>
      
      <script src="Scripts/jquery-3.3.1.min.js" type="text/javascript"></script>
      <script src="Scripts/jquery-ui.min.js" type="text/javascript"></script>
      
      <script src="Scripts/Vintasoft.Shared.js" type="text/javascript"></script>
      <script src="Scripts/Vintasoft.Imaging.js" type="text/javascript"></script>
      <script src="Scripts/Vintasoft.Imaging.Dialogs.jQueryUI.js" type="text/javascript"></script>
      <script src="Scripts/Vintasoft.Imaging.Office.js" type="text/javascript"></script>
      <script src="Scripts/Vintasoft.Imaging.Office.Dialogs.jQueryUI.js" type="text/javascript"></script>
      
      


    • Добавьте HTML-разметку (элемент div, который будет отображать веб-редактор документов) в веб-представление:

      Вот код HTML-разметки:
      <h1 style="text-align: center">VintaSoft Document Editor Demo (ASP.NET WebForms)</h1>
      
      <div id="documentEditorContainer" style="height: 800px;"></div>
      


    • Добавление JavaScript-кода для отображения веб редактора документа:

      Вот JavaScript-код (с разметкой страницы), который отображает веб редактор документа:
      <script type="text/javascript">
          // specify web services, which should be used in this demo
          Vintasoft.Shared.WebServiceJS.defaultFileService = new Vintasoft.Shared.WebServiceHandlerJS("Handlers/MyVintasoftFileHandler.ashx");
          Vintasoft.Shared.WebServiceJS.defaultOfficeService = new Vintasoft.Shared.WebServiceHandlerJS("Handlers/MyVintasoftOfficeHandler.ashx");
      
          // create web document editor settings
          var documentEditorSettings = new Vintasoft.Imaging.Office.UI.WebDocumentEditorSettingsJS("documentEditorContainer");
      
          // create web document editor
          _documentEditor = new Vintasoft.Imaging.Office.UI.WebDocumentEditorJS(documentEditorSettings);
      
          // open DOCX document in web document editor
          _documentEditor.openDocument("DocxTestDocument.docx");
      </script>
      
      
  7. Запустите ASP.NET WebForms приложение и посмотрите результат.