Instalacja w .NET Framework

Konfiguracja Web.config

Zarejestruj HttpHandler w pliku web.config.

Below IIS 7
<httpHandlers>
  <add verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</httpHandlers>
IIS 7 and above
<handlers>
  <add name="DocImage" verb="GET,POST" path="DocImage.axd" type="Doconut.DocImageHandler, Doconut" />
</handlers>

Dodaj licencje

Doconut automatycznie wykrywa licencje w folderze głównym, lub możesz dodać je ręcznie.

Manual License Path
var licenseFilePath = Server.MapPath("~/Doconut.Viewer.lic");
var docViewer = new Viewer(licenseFilePath);

Konfiguracja dla web.config

Poniższe wpisy konfiguracyjne są niezbędne w pliku web.config, aby zapewnić kompatybilność z Doconut i .NET Framework.

web.config
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Encodings.Web" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Encoding.CodePages" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Text.Json" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="8.0.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-8.0.0.0" newVersion="8.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Drawing.Common" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="MessagePack" publicKeyToken="9c7f9b36b37eaddf" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.5.140.0" newVersion="2.5.140.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Numerics.Vectors" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.1.3.0" newVersion="4.1.4.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

Wymagane pakiety NuGet

Aby Twój projekt był w pełni kompatybilny z Doconut i .NET Framework, należy dołączyć następujące pakiety NuGet:

  • MessagePack - Version 2.5.140
  • MessagePack.Annotations - Version 2.5.140
  • Microsoft.Bcl.AsyncInterfaces - Version 8.0.0
  • Microsoft.NET.StringTools - Version 17.6.3
  • System.Collections.Immutable - Version 6.0.0
  • System.Drawing.Common - Version 6.0.0
  • System.Memory - Version 4.5.5
  • System.Reflection.Emit - Version 4.7.0
  • System.Reflection.Emit.Lightweight - Version 4.7.0
  • System.Security.Cryptography.Pkcs - Version 8.0.0
  • System.Text.Encoding.CodePages - Version 8.0.0
  • System.Text.Encodings.Web - Version 8.0.0
  • System.Text.Json - Version 8.0.3

Opcje konfiguracji renderowania

Możesz skonfigurować zachowanie renderowania przy użyciu następujących opcji:

  • CadConfig: używany dla plików DWG, DXF i DGN.
  • EmailConfig: używany dla plików EML, EMLX i MSG.
  • EpubConfig: używany dla plików EPUB.
  • ExcelConfig: używany dla plików Excel i CSV.
  • MhtConfig: używany dla plików MHT.
  • PptConfig: używany dla plików PowerPoint.
  • ProjectConfig: używany dla plików MPP.
  • PsdConfig: używany dla plików PSD.
  • TxtConfig: używany dla plików TXT.
  • TiffConfig: używany dla plików TIFF.
Example usage
var config = new CadConfig { DefaultRender = false }; // or true

Niestandardowe czcionki w dokumentach Word

Właściwość FontFolders w klasie WordConfig określa niestandardowe katalogi, w których aplikacja będzie szukać czcionek.

Usage
var config = new WordConfig
{
    FontFolders = new string[] { "C:\\CustomFonts", "D:\\SharedFonts" }
};

Aktualizacja dotycząca AjaxControlToolkit w pakiecie NuGet

Wprowadziliśmy zmiany w naszym pakiecie NuGet, aby poprawić kompatybilność. AjaxControlToolkit nie będzie już dołączany. Użytkownikom zaleca się ręczną instalację AjaxControlToolkit w wersji 4.1.50508 w ich projektach.

Ważna aktualizacja dla Doconut 25.2.0

Konieczne jest zaktualizowanie pakietu System.Text.Json do wersji 8.0.5 we wszystkich Twoich projektach.

Kodowanie e‑mail

Właściwość EmailEncoding w klasie EmailConfig określa preferowane kodowanie zarówno tematu, jak i treści e‑maila.

Usage
var emailConfig = new EmailConfig {
    EmailEncoding = Encoding.UTF8 // Set preferred email encoding
};

Kodowanie tematu i treści

Właściwości SubjectEncoding i BodyEncoding w klasie EmailConfig definiują kodowanie używane odpowiednio dla tematu i treści e‑maila.

Usage
var emailConfig = new EmailConfig {
    SubjectEncoding = Encoding.UTF8, // Set encoding for the subject
    BodyEncoding = Encoding.UTF8     // Set encoding for the body
};

Obsługa kultury w przeglądarce Word

Właściwość DocumentCulture w klasie WordConfig pozwala wyraźnie określić kulturę dla plików DOC i DOCX. Zapewnia to, że lokalizowana zawartość — taka jak daty, waluty i liczby — jest renderowana dokładnie tak, jak w Microsoft Word. Jest to szczególnie przydatne dla języków z określonymi wymaganiami formatowania.

Usage
var config = new WordConfig { DocumentCulture = "he-IL" }; // Hebrew (Israel)
var config = new WordConfig { DocumentCulture = "ar-SA" }; // Arabic (Saudi Arabia)
var config = new WordConfig { DocumentCulture = "th-TH" }; // Thai (Thailand)
var config = new WordConfig { DocumentCulture = "ja-JP" }; // Japanese (Japan)