ASP.NET Core'da DOCX Görüntüleyici: Word Dosyalarını Önizleme
← Back to Blog••5 min read

ASP.NET Core'da DOCX Görüntüleyici: Word Dosyalarını Önizleme

ASP.NET Core uygulaması içinde bir Word belgesini önizlemek için, dosyayı sunucuda işleyen ve sayfalarını tarayıcıda gösteren bir DOCX görüntüleyici SDK'sı kullanın. Doconut, bu iş akışını sunucuda Microsoft Word gerektirmeden sağlar. Kullanıcılarınız, ayrı bir masaüstü programı açmak yerine, uygulamanız içinde bir sözleşme, teklif veya raporu okuyabilir.

Mavi bir klasörden şeffaf cam bir görüntü çerçevesine uzanan, tablolar ve grafikler içeren bir fildişi raporu
Mavi bir klasörden şeffaf cam bir görüntü çerçevesine uzanan, tablolar ve grafikler içeren bir fildişi raporu

İlginç soru, demo dosyasını kendi belgelerinizle değiştirdiğinizde ne olacağıdır. Bir sözleşme özel yazı tipleri, tekrarlayan başlıklar, geniş tablolar ve imza sayfaları içerebilir. Bu kılavuz, .NET 8 uygulaması için belge açma adımını ve sonucu değerlendirmenize yardımcı olacak kontrolleri gösterir.

C#'tan bir DOCX dosyası açma

Servisleri, ASP.NET oturumunu, belge ara katmanını, görüntüleyici kaynaklarını ve tarayıcı widget'ını yapılandırmak için Doconut .NET 8 hızlı başlangıç ile başlayın. Aşağıdaki uç nokta, yapılandırılmış uygulamayı genişletir; tam bir bağımsız uygulama değildir.

Uygulamanın içerik kökünün altında App_Data/Sample.docx konumuna hassas olmayan bir test belgesi yerleştirin. Bu uç noktayı app.Run()'dan önce ekleyin:

using Doconut;

app.MapPost("/api/preview-word", async (
    Viewer viewer,
    IWebHostEnvironment environment) =>
{
    var filePath = Path.Combine(
        environment.ContentRootPath, "App_Data", "Sample.docx");

    if (!File.Exists(filePath))
        return Results.NotFound();

    var token = await viewer.OpenDocumentAsync(filePath);
    return Results.Ok(new { token });
});

Program.cs dosyasının üst kısmındaki diğer importlarla birlikte using yönergesini tutun. Sabit yol, örneği yeniden üretmeyi kolaylaştırır ve tarayıcıdan rastgele bir sunucu yolu kabul edilmesini önler.

Viewer API referansı OpenDocumentAsync'in dosya yolu aşırı yüklemesini belgeler. Dosyayı açar ve bir belge oturumu belirteci döndürür. Hızlı başlangıcın zaten objViewer'ı başlattığı sayfada, önizlemeyi şu şekilde açın:

async function previewWordDocument() {
    const response = await fetch('/api/preview-word', {
        method: 'POST'
    });

    if (!response.ok) {
        throw new Error('The Word preview could not be opened.');
    }

    const { token } = await response.json();
    objViewer.View(token);
}

Bu işlevi sayfanızın önizleme eyleminden çağırın ve hataları uygulamanın mevcut hata arayüzü üzerinden gösterin. Bu örnekte isteği, görüntüleyiciyle aynı uygulama kökeninde tutun.

Belge erişimini uygulama kontrolü altında tutma

Bir müşteri portalında, sabit örneği uygulamanızın seçtiği bir belge kaydıyla değiştirin. Depolama konumunu çözümlemeden ve belgeyi açmadan önce geçerli kullanıcının bu kaydı görüntüleyebileceğini kontrol edin. Tarayıcıdan alınan bir dosya adı bir yetkilendirme kararı değildir.

Korunan orijinal dosyaları genel web kökünün dışına depolayın. Örnekteki App_Data klasörü bir depolama konvansiyonudur, erişim kontrol özelliği değildir: statik dosya eşlemesiyle ortaya çıkarmayın. Kimlik doğrulama ve belge izinlerini ana uygulamada tutun.

Tarayıcı, belge oturumu için bir görüntüleme belirteci alır. Bu belirteci kalıcı bir belge URL'si yerine bir kimlik bilgisi olarak ele alın. Hızlı başlangıç, okuyucu ayrıldığında veya başka bir dosya açtığında belgeyi kapatmayı da kapsar.

Temsilci dosyalarla Word düzenini test etme

Boş bir DOCX, müşterilerinizin kullandığı belgeler hakkında pek bir şey kanıtlamaz. Hassas bilgileri kaldırarak, uygulamanızın görüntülemesi gereken gerçek şablonlardan küçük bir değerlendirme seti oluşturun.

Test belgesiÖnizlemede ne kontrol edilmeli
Başlık ve altbilgi içeren sözleşmeTekrarlanan içerik, sayfa numaraları ve imza sayfası konumu
Kurumsal bir yazı tipi kullanan teklifYazı tipi ikamesi, satır kaydırma ve başlık genişlikleri
Geniş veya iç içe tablolar içeren raporSütun genişlikleri, satır bölme ve sayfa kenarlarında kesilen metin
Dikey ve yatay bölümler karışık belgeSayfa boyutları ve bölümler arasındaki geçiş
Görsel ağırlıklı kılavuzGörsel yerleşimi, alt yazılar ve yakınlaştırıldığında okunabilirlik

Oluşturulan sonucu onaylanmış kaynak belgeyle karşılaştırın. Entegrasyonu taahhüt etmeden önce iş akışınız için hangi farklılıkların önemli olduğuna karar verin.

Doconut, WordConfig aracılığıyla Word'e özgü render ayarlarını ortaya çıkarır. format yapılandırma referansı ek yazı tipi dizinleri için FontFolders, kağıt boyutu ayarları ve tablo uyumu için AutoFitAllTables içerir. Bunları kasıtlı olarak değiştirin: bir tabloyu mevcut genişliğe sığdırmak, korumaya çalıştığınız düzeni de değiştirebilir.

Denetimleri dağıtım sunucusunda tekrarlayın. Geliştiricinin makinesine kurulu bir yazı tipi kullanan bir önizleme, sunucuda o yazı tipi bulunmadığında farklı görünebilir. Organizasyonunuzun dağıtımına izin verilen yazı tiplerini kullanın.

Görünüm, düzenleme ve dönüşümü ayrı ayrı seçme

Bir DOCX önizlemesi okuma adımını çözer. Uygulamanızı bir Word oluşturma ortamına dönüştürmez.

  • Okuma: birinin bir dava, sipariş veya müşteri kaydı içinde mevcut bir belgeyi incelemesi gerektiğinde görüntüleyiciyi kullanın.
  • Düzenleme: kullanıcıların paragrafları yeniden yazması ve güncellenmiş bir DOCX kaydetmesi gerekiyorsa, düzenleme iş akışını ayrı değerlendirin. Bir dosyayı önizlemek, Word düzenleme desteğinin kanıtı değildir.
  • Dönüştürme: gereksinim başka bir formatta indirilebilir bir dosya ise, dışa aktarma iş akışını sayfaları görüntülemeden ayrı olarak değerlendirin.

Word viewer for .NET genel bakışı Doconut'un Word ailesi görüntüleme yolunu açıklar. Ürün uyumunu kontrol etmek için bunu kullanın, ardından uygulamanız için önemli olan render davranışını değerlendirmek üzere kendi dosyalarınızı kullanın.

Görüntüleyiciyi en zor belgenizle önce değerlendirin

Zaten destek taleplerine yol açan bir belgeyle başlayın: uzun bir sözleşme, tablo ağırlıklı bir rapor veya alışılmadık yazı tiplerine sahip bir şablon. Önizlemeyi kontrol edin, birkaç sayfada gezin, yeni bir oturumda yeniden açın ve çevredeki uygulamanın doğru belge izinlerini zorladığını doğrulayın.

Doconut'ı İndir ve .NET 8 örneğini o dosyayla çalıştırın. Başarılı bir değerlendirme, kullanıcıların aslında aldıkları belgeleri, ekibinizin gözden geçirdiği bir düzenle okuyabildiğini ve uygulamanızın sürdürebileceği bir entegrasyonu gösterir.

#DOCX Viewer#ASP.NET Core#Word Documents#C##Document Preview#DOCX Görüntüleyici#Word Belgeleri#Belge Önizleme