FieldEQ
İçindekiler
[
Saklamak
]FieldEQ class
EQ alanını uygular.
Daha fazla bilgi edinmek için şu adresi ziyaret edin:Alanlarla Çalışma belgeleme makalesi.
public class FieldEQ : Field
yapıcılar
İsim | Tanım |
---|---|
FieldEQ() | Default_Constructor |
Özellikleri
İsim | Tanım |
---|---|
DisplayResult { get; } | Görüntülenen alan sonucunu temsil eden metni alır. |
End { get; } | Alan sonunu temsil eden düğümü alır. |
Format { get; } | Bir tane alırFieldFormat alanın biçimlendirmesine yazılmış erişim sağlayan nesne. |
IsDirty { get; set; } | Belgede yapılan diğer değişiklikler nedeniyle alanın geçerli sonucunun artık doğru (eski) olup olmadığını alır veya ayarlar. |
IsLocked { get; set; } | Alanın kilitli olup olmadığını alır veya ayarlar (sonucunu yeniden hesaplamamalıdır). |
LocaleId { get; set; } | Alanın LCID’sini alır veya ayarlar. |
Result { get; set; } | Alan ayırıcısı ile alan sonu arasındaki metni alır veya ayarlar. |
Separator { get; } | Alan ayırıcısını temsil eden düğümü alır.hükümsüz . |
Start { get; } | Alanın başlangıcını temsil eden düğümü alır. |
virtual Type { get; } | Microsoft Word alan türünü alır. |
yöntemler
İsim | Tanım |
---|---|
AsOfficeMath() | EQ alanına karşılık gelen Office Math nesnesini döndürür. |
GetFieldCode() | Alan başlangıcı ile alan ayırıcısı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür. Hem alan kodu hem de alt alanların alan sonucu dahil edilir. |
GetFieldCode(bool) | Alan başlangıcı ile alan ayırıcısı (veya ayırıcı yoksa alan sonu) arasındaki metni döndürür. |
Remove() | Alanı belgeden kaldırır. Alanın hemen ardından bir düğüm döndürür. Alanın sonu, üst düğümünün son alt ‘siyse, üst paragrafını döndürür. Alan zaten kaldırılmışsa, şunu döndürürhükümsüz . |
Unlink() | Alan bağlantısını kaldırma işlemini gerçekleştirir. |
Update() | Alan güncellemesini gerçekleştirir. Alan zaten güncelleniyorsa fırlatır. |
Update(bool) | Bir alan güncellemesi gerçekleştirir. Alan zaten güncelleniyorsa fırlatır. |
Örnekler
EQ alanının Office Math ile nasıl değiştirileceğini gösterir.
Document doc = new Document(MyDir + "Field sample - EQ.docx");
FieldEQ fieldEQ = doc.Range.Fields.OfType<FieldEQ>().First();
OfficeMath officeMath = fieldEQ.AsOfficeMath();
fieldEQ.Start.ParentNode.InsertBefore(officeMath, fieldEQ.Start);
fieldEQ.Remove();
doc.Save(ArtifactsDir + "Field.EQAsOfficeMath.docx");
Çeşitli matematiksel denklemleri görüntülemek için EQ alanının nasıl kullanılacağını gösterir.
public void FieldEQ()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Bir EQ alanı, bir veya daha fazla elemandan oluşan matematiksel bir denklemi görüntüler.
// Her bir eleman şu formu alır: [anahtar][seçenekler][bağımsız değişkenler].
// Bir anahtar ve birden fazla olası seçenek olabilir.
// Argümanlar, yuvarlak parantezlerle çevrelenmiş, virgülle ayrılmış değerler kümesidir.
// Burada, "\f" anahtarıyla "Kesir"e karşılık gelen bir EQ alanı eklemek için bir belge oluşturucu kullanıyoruz.
// Argüman olarak 1 ve 4 değerlerini geçireceğiz ve herhangi bir seçenek kullanmayacağız.
// Bu alan, paydası 1, paydası 4 olan bir kesri görüntüler.
FieldEQ field = InsertFieldEQ(builder, @"\f(1,4)");
Assert.AreEqual(@" EQ \f(1,4)", field.GetFieldCode());
// Bir EQ alanı ardışık olarak yerleştirilmiş birden fazla öğe içerebilir.
// İç elemanları yerleştirerek elemanları birbirinin içine de yerleştirebiliriz
// dış elemanların argüman parantezlerinin içinde.
// Anahtarların tam listesini ve kullanımlarını burada bulabiliriz:
// https://blogs.msdn.microsoft.com/murrays/2018/01/23/microsoft-word-eq-field/
// Aşağıda farklı türde nesneler oluşturmak için kullanabileceğimiz dokuz farklı EQ alan anahtarının uygulamaları bulunmaktadır.
// 1 - Dizi anahtarı "\a", sola hizalanmış, 2 sütun, 3 yatay ve dikey aralık noktası:
InsertFieldEQ(builder, @"\a \al \co2 \vs3 \hs3(4x,- 4y,-4x,+ y)");
// 2 - Parantez anahtarı "\b", parantez karakteri "[", içeriği bir dizi köşeli parantezin içine almak için:
// Parantezlerin içine bir dizi yerleştirdiğimizi ve bunun çıktıda bir matris gibi görüneceğini unutmayın.
InsertFieldEQ(builder, @"\b \bc\[ (\a \al \co3 \vs3 \hs3(1,0,0,0,1,0,0,0,1))");
// 3 - Yer değiştirme anahtarı "\d", "B" metnini "A" metninin 30 satır sağına kaydırır ve boşluğu alt çizgi olarak görüntüler:
InsertFieldEQ(builder, @"A \d \fo30 \li() B");
// 4 - Birden fazla kesirden oluşan formül:
InsertFieldEQ(builder, @"\f(d,dx)(u + v) = \f(du,dx) + \f(dv,dx)");
// 5 - Toplama sembolü olan integral anahtarı "\i":
InsertFieldEQ(builder, @"\i \su(n=1,5,n)");
// 6 - Liste anahtarı "\l":
InsertFieldEQ(builder, @"\l(1,1,2,3,n,8,13)");
// 7 - x'in küp kökünü gösteren köklü anahtar "\r":
InsertFieldEQ(builder, @"\r (3,x)");
// 8 - Alt simge/üst simge geçişi "/s", önce üst simge olarak, sonra da alt simge olarak:
InsertFieldEQ(builder, @"\s \up8(Superscript) Text \s \do8(Subscript)");
// 9 - Girişin üstünde, altında, solunda ve sağında çizgiler bulunan kutu anahtarı "\x":
InsertFieldEQ(builder, @"\x \to \bo \le \ri(5)");
// Biraz daha karmaşık kombinasyonlar.
InsertFieldEQ(builder, @"\a \ac \vs1 \co1(lim,n→∞) \b (\f(n,n2 + 12) + \f(n,n2 + 22) + ... + \f(n,n2 + n2))");
InsertFieldEQ(builder, @"\i (,, \b(\f(x,x2 + 3x + 2))) \s \up10(2)");
InsertFieldEQ(builder, @"\i \in( tan x, \s \up2(sec x), \b(\r(3) )\s \up4(t) \s \up7(2) dt)");
doc.Save(ArtifactsDir + "Field.EQ.docx");
}
/// <summary>
/// Bir EQ alanı eklemek, argümanlarını ayarlamak ve yeni bir paragraf başlatmak için bir belge oluşturucu kullanın.
/// </summary>
private static FieldEQ InsertFieldEQ(DocumentBuilder builder, string args)
{
FieldEQ field = (FieldEQ)builder.InsertField(FieldType.FieldEquation, true);
builder.MoveTo(field.Separator);
builder.Write(args);
builder.MoveTo(field.Start.ParentNode);
builder.InsertParagraph();
return field;
}
Ayrıca bakınız
- class Field
- ad alanı Aspose.Words.Fields
- toplantı Aspose.Words