Pengaturan di .NET Framework

Konfigurasi Web.config

Daftarkan HttpHandler di file web.config Anda.

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>

Tambahkan Lisensi

Doconut secara otomatis mendeteksi lisensi di folder root, atau Anda dapat menambahkannya secara manual.

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

Konfigurasi untuk web.config

Entri konfigurasi berikut diperlukan untuk file web.config agar memastikan kompatibilitas dengan Doconut dan .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>

Paket NuGet yang Diperlukan

Untuk memastikan proyek Anda sepenuhnya kompatibel dengan Doconut dan .NET Framework, paket NuGet berikut perlu disertakan:

  • 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

Opsi Konfigurasi Render

Anda dapat mengonfigurasi perilaku rendering menggunakan opsi berikut:

  • CadConfig: Digunakan untuk file DWG, DXF, dan DGN.
  • EmailConfig: Digunakan untuk file EML, EMLX, dan MSG.
  • EpubConfig: Digunakan untuk file EPUB.
  • ExcelConfig: Digunakan untuk file Excel dan CSV.
  • MhtConfig: Digunakan untuk file MHT.
  • PptConfig: Digunakan untuk file PowerPoint.
  • ProjectConfig: Digunakan untuk file MPP.
  • PsdConfig: Digunakan untuk file PSD.
  • TxtConfig: Digunakan untuk file TXT.
  • TiffConfig: Digunakan untuk file TIFF.
Example usage
var config = new CadConfig { DefaultRender = false }; // or true

Font Kustom dalam Dokumen Word

Properti FontFolders dalam kelas WordConfig menentukan direktori kustom tempat aplikasi akan mencari font.

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

Pembaruan Mengenai AjaxControlToolkit dalam Paket NuGet

Kami telah melakukan perubahan pada paket NuGet kami untuk meningkatkan kompatibilitas. AjaxControlToolkit tidak akan lagi disertakan. Pengguna disarankan untuk menginstal secara manual AjaxControlToolkit versi 4.1.50508 ke dalam proyek mereka.

Pembaruan Penting untuk Doconut 25.2.0

Sangat penting untuk memperbarui paket System.Text.Json ke versi 8.0.5 di semua proyek Anda.

Pengkodean Email

Properti EmailEncoding dalam kelas EmailConfig menentukan pengkodean yang diinginkan untuk subjek dan isi email.

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

Pengkodean Subjek & Isi

Properti SubjectEncoding dan BodyEncoding dalam kelas EmailConfig menentukan pengkodean yang digunakan untuk subjek dan isi email, masing-masing.

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

Dukungan Budaya Penampil Word

Properti DocumentCulture dalam kelas WordConfig memungkinkan Anda secara eksplisit menentukan budaya untuk file DOC dan DOCX. Ini memastikan bahwa konten yang dilokalkan—seperti tanggal, mata uang, dan angka—ditampilkan persis seperti di Microsoft Word. Ini sangat berguna untuk bahasa dengan persyaratan format khusus.

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)