Pengaturan di .NET Framework

Konfigurasi Web.config

Daftarkan HttpHandler dalam 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 dalam file web.config untuk 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 mengkonfigurasi 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 khusus 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 secara manual menginstal 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 mendefinisikan 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 Word Viewer

Properti DocumentCulture dalam kelas WordConfig memungkinkan Anda secara eksplisit menentukan budaya untuk file DOC dan DOCX. Hal 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 pemformatan 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)