Alanları Statik Metinle Değiştirin

Belgenizi statik kopya olarak kaydetmek istediğinizde alanların değiştirilmesi genellikle gereklidir. Örneğin, bir e-postada ek olarak gönderirken. DATE veya TIME gibi alanları statik metne dönüştürmek, belgenin gönderildiği tarihle aynı tarihi görüntülemesini sağlar. Ayrıca, bazı durumlarda, koşullu IF alanlarını belgenizden kaldırmanız ve bunun yerine bunları en son metin sonucuyla değiştirmeniz gerekebilir. Örneğin, IF alanının sonucunu statik metne dönüştürmek, böylece belgedeki alanlar güncellendiğinde artık değerini dinamik olarak değiştirmeyecektir.

Aşağıdaki diyagram, IF alanının bir belgede nasıl saklandığını göstermektedir:

  • metin, özel alan düğümleriyle çevrilidir – FieldStart ve FieldEnd
  • FieldSeparator düğümü, alan içindeki metni alan koduna ve alan sonucuna ayırır
  • alan kodu, alanın genel davranışını tanımlarken, bu alan Microsoft Word veya Aspose.Words kullanılarak güncellendiğinde alan sonucu en son sonucu korur
  • alan sonucu, alanda depolanan ve görüntülendiğinde belgede görüntülenen sonuçtur

update-remove-a-field-aspose-words

Yapı, “DocumentExplorer” demo projesi kullanılarak hiyerarşik biçimde aşağıda da görülebilir.

update-remove-a-field-aspose-words-2

Metinle Değiştirilemeyen Alanlar

Bir alanı statik metinle değiştirmek, üstbilgi veya altbilgideki bazı alanlar için düzgün çalışmaz.

Örneğin, bir üstbilgi veya altbilgideki PAGE alanını statik metne dönüştürmeye çalışmak, tüm sayfalarda aynı değerin görüntülenmesine neden olur. Bunun nedeni, üstbilgilerin ve altbilgilerin birden çok sayfada tekrarlanması ve alan olarak kaldıklarında, özellikle her sayfa için doğru sonucu görüntülemeleri için işlenmeleridir.

Ancak, başlıkta PAGE alanı, metnin statik çalışmasına iyi çevrilir. Bu metin çalışması, bölümdeki son sayfaymış gibi değerlendirilecek ve bu, başlıktaki herhangi bir PAGE alanının son sayfayı tüm sayfalarda görüntülemesine neden olacaktır.

Aşağıdaki kod örneği, alanın en son sonucuyla nasıl değiştirileceğini gösterir:

Belirli Alan Türlerini Belirli Belge Bölümlerine Dönüştürme

ConvertFieldsToStaticText yöntemi iki parametreyi kabul ettiğinden – CompositeNode özellikler ve FieldType numaralandırma, herhangi bir bileşik düğümü bu yönteme geçirmek mümkündür. Bu, alanların yalnızca belgenin belirli bölümlerinde statik metne dönüştürülmesine olanak tanır.

Örneğin, bir Document nesnesini geçirebilir ve belirtilen türdeki alanları belgenin tamamından statik metne dönüştürebilir veya bir bölümün Body nesnesini geçirebilir ve yalnızca o gövdede bulunan alanları dönüştürebilirsiniz.

ConvertFieldsToStaticText yöntemine iletilen FieldType numaralandırma, ne tür alanların statik metne dönüştürülmesi gerektiğini belirtir. Belgede bulunan diğer alan türleri değişmeden kalır.

Aşağıdaki kod örneği, belirli bir düğümdeki – targetFieldType belirli bir türdeki alanların nasıl seçileceğini gösterir - compositeNode ve ardından bunları statik metne dönüştürün:

Aşağıdaki kod örneği, bir belgedeki tüm IF alanların statik metne nasıl dönüştürüleceğini gösterir:

Aşağıdaki kod örneği, bir belgenin Gövdesindeki tüm PAGE alanların statik metne nasıl dönüştürüleceğini gösterir:

Aşağıdaki kod örneği, son paragraftaki tüm IF alanların statik metne nasıl dönüştürüleceğini gösterir: