Alanları Statik Metinle Değiştir

Alanları değiştirme genellikle bir belgeyi statik bir kopyaya kaydetmek istediğinizde gereklidir. Örneğin, bir e-postaya ek olarak gönderirken. DATE veya TIME gibi alanları sabit metinlere dönüştürmek belgenin gönderildiği tarihin aynı şekilde görüntülenmesini sağlar. Ayrıca, bazı durumlarda, belgelerinizden koşullu IF alanlarını kaldırmanız ve bunları en son metin sonucuyla değiştirmeniz gerekebilir. Örneğin, IF alanının sonucunu sabit metne dönüştürerek, alan belgede güncellendiğinde değeri dinamik olarak değişmeyecek şekilde.

Aşağıdaki diyagram, bir belge içinde nasıl IF alanı depolandığını göstermektedir:

the text is surrounded by the special field nodes – FieldStart ve FieldEnd alan içinde bulunan metni alan kodu ve alan sonucu olarak ayırmak için FieldSeparator düğümü kullanılır

  • Alan kodu alanın genel davranışını tanımlar, oysa alan sonucu bu alan güncellendiğinde en son sonucu korur Microsoft Word veya Aspose.Words ile the field result, the field’de depolanan ve belgenin görüntülenmesinde gösterilen nedir?

update-remove-a-field-aspose-words

Aşağıdaki yapı, hiyerarşik biçimde ve demolar projesi “DocumentExplorer” kullanılarak da görülebilir ki bu, Aspose.Words yükleyicisiyle birlikte gelir.

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

Metinle Değiştirilemeyecek Alanlar

Bir alanı sabit metinle değiştirme, bazı durumlarda bir başlık veya alt bilgi alanındaki alanlar için düzgün çalışmıyor.

Örneğin, başlık veya altbilgide PAGE alanı statik metne dönüştürmeye çalışmak tüm sayfalarda aynı değeri görüntüleyecektir. Bunun nedeni başlık ve altbilginin birden fazla sayfada tekrarlanmasıdır ve alanlar olarak kaldığında her sayfa için doğru sonucu göstermek üzere özel bir şekilde işlenirler.

Ancak, üstbilgide, PAGE alanı iyi bir statik metin koşulu ile çevirilebilir. Bu metin koşulu, son sayfayı bölümün sonu olarak değerlendirerek, üstbilginin içindeki herhangi bir PAGE alanının tüm sayfalar üzerinde en son sayfayı göstermesine neden olacaktır.

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

Belirli Belge Parçalarında Belirli Alan Türlerini Dönüştürme

ConvertFieldsToStaticText yöntemi iki parametre kabul eder - CompositeNode özellikleri ve FieldType numaralandırma, bu nedenle bu yönteme herhangi bir bileşik düğüm geçirmek mümkündür. Bu, alanların yalnızca belge içinde belirli bölümlerde statik metin olarak dönüştürülmesini sağlar.

Örneğin, bir Document nesnesi geçirebilir ve belirtilen türdeki tüm belgedeki alanları sabit metinlere dönüştürebilir veya bir Body nesnesinin bir bölümüne geçebilir ve bu bölümde bulunan alanların sadece alanlarını dönüştürebilirsiniz.

FieldType numaralandırma geçirilen ConvertFieldsToStaticText yöntemi, hangi tür alanların statik metin olarak dönüştürüleceğini belirtir. Belgeye bulunan diğer herhangi bir alan türü değişmeden kalır.

Aşağıdaki kod örneğinde, belirli bir türde - targetFieldType belirli bir düğümde - compositeNode alanları nasıl seçileceğini ve sonra bunları sabit metin olarak nasıl dönüştürdüğünü gösterir:

Aşağıdaki kod örneğinde bir belgedeki tüm IF alanları statik metne dönüştürmek gösterilmektedir:

Aşağıdaki kod örneği, bir belgenin gövdesindeki tüm PAGE alanları statik metin haline getirmek için nasıl yapılacağını gösterir:

Aşağıdaki kod örneği, son paragraftaki tüm IF alanlarını sabit metne dönüştürmenin nasıl yapılacağını gösterir: