WarningType

WarningType enumeration

Belge yükleme veya kaydetme sırasında Aspose.Words tarafından verilen uyarının türünü belirtir.

[Flags]
public enum WarningType

değerler

İsimDeğerTanım
DataLossCategoryFFYüklemeden sonra belge ağacında bazı metin/karakter/görüntü veya diğer veriler kaybolacaktır, veya kaydetmeden sonra oluşturulan belgede.
DataLoss1Genel veri kaybı, belirli bir kod yok.
MajorFormattingLossCategoryFF00Ortaya çıkan belge veya içindeki belirli bir konum, orijinal belgeye kıyasla önemli ölçüde farklı görünebilir.
MajorFormattingLoss100Genel büyük biçimlendirme kaybı, belirli bir kod yok.
MinorFormattingLossCategoryFF0000Ortaya çıkan belge veya içindeki belirli bir konum, orijinal belgeye kıyasla biraz farklı görünebilir.
MinorFormattingLoss10000Genel küçük biçimlendirme kaybı, belirli bir kod yok.
FontSubstitution20000Yazı tipi değiştirildi.
FontEmbedding40000Belge kaydedilirken gömülü yazı tipi bilgilerinin kaybı.
UnexpectedContentCategoryF000000Kaynak belgedeki bazı içerikler tanınamadı (yani desteklenmiyor), bu sorunlara yol açabilir veya açmayabilir veya veri/biçimlendirme kaybına neden olabilir.
UnexpectedContent1000000Genel beklenmeyen içerik, belirli bir kod yok.
Hint10000000Olası bir sorunu bildirir veya bir iyileştirme önerir.

Örnekler

Mevcut yazı tipi kaynaklarından eksik bir yazı tipi için en yakın eşleşmeyi bulma özelliğinin nasıl ayarlanacağını gösterir.

public void EnableFontSubstitution()
{
    // Yazı tipi kaynaklarımızın hiçbirinde bulunmayan bir yazı tipiyle biçimlendirilmiş metin içeren bir belgeyi açın.
    Document doc = new Document(MyDir + "Missing font.docx");

    // Yazı tipi değiştirme uyarılarını işlemek için bir geri çağırma atayın.
    HandleDocumentSubstitutionWarnings substitutionWarningHandler = new HandleDocumentSubstitutionWarnings();
    doc.WarningCallback = substitutionWarningHandler;

    // Varsayılan bir yazı tipi adı belirleyin ve yazı tipi değişimini etkinleştirin.
    FontSettings fontSettings = new FontSettings();
    fontSettings.SubstitutionSettings.DefaultFontSubstitution.DefaultFontName = "Arial";
    ;
    fontSettings.SubstitutionSettings.FontInfoSubstitution.Enabled = true;

    // Font değişiminden sonra orijinal font ölçütleri kullanılmalıdır.
    doc.LayoutOptions.KeepOriginalFontMetrics = true;

    // Eksik font içeren bir belgeyi kaydedersek font değiştirme uyarısı alırız.
    doc.FontSettings = fontSettings;
    doc.Save(ArtifactsDir + "FontSettings.EnableFontSubstitution.pdf");

    using (IEnumerator<WarningInfo> warnings = substitutionWarningHandler.FontWarnings.GetEnumerator())
        while (warnings.MoveNext())
            Console.WriteLine(warnings.Current.Description);

    // Ayrıca koleksiyondaki uyarıları doğrulayabilir ve temizleyebiliriz.
    Assert.AreEqual(WarningSource.Layout, substitutionWarningHandler.FontWarnings[0].Source);
    Assert.AreEqual(
        "Font '28 Days Later' has not been found. Using 'Calibri' font instead. Reason: alternative name from document.",
        substitutionWarningHandler.FontWarnings[0].Description);

    substitutionWarningHandler.FontWarnings.Clear();

    Assert.AreEqual(0, substitutionWarningHandler.FontWarnings.Count);
}

public class HandleDocumentSubstitutionWarnings : IWarningCallback
{
    /// <summary>
    /// Yükleme/kaydetme sırasında bir uyarı oluştuğunda her seferinde çağrılır.
    /// </summary>
    public void Warning(WarningInfo info)
    {
        if (info.WarningType == WarningType.FontSubstitution)
            FontWarnings.Warning(info);
    }

    public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}

Ayrıca bakınız