WarningInfo
Innehåll
[
Dölj
]WarningInfo class
Innehåller information om en varning som Aspose.Words utfärdade vid inläsning eller sparning av dokument.
För att lära dig mer, besökProgrammering med dokument dokumentationsartikel.
public class WarningInfo
Egenskaper
namn | Beskrivning |
---|---|
Description { get; } | Returnerar beskrivningen av varningen. |
Source { get; } | Returnerar källan till varningen. |
WarningType { get; } | Returnerar varningens typ. |
Anmärkningar
Du skapar inte instanser av den här klassen. Objekt i den här klassen created och skickas av Aspose.Words tillWarning
metod.
Exempel
Visar hur man ställer in egenskapen för att hitta den närmaste matchningen för ett saknat teckensnitt från de tillgängliga teckensnittskällorna.
public void EnableFontSubstitution()
{
// Öppna ett dokument som innehåller text formaterad med ett teckensnitt som inte finns i någon av våra teckensnittskällor.
Document doc = new Document(MyDir + "Missing font.docx");
// Tilldela en återanropning för att hantera varningar om teckensnittsersättning.
HandleDocumentSubstitutionWarnings substitutionWarningHandler = new HandleDocumentSubstitutionWarnings();
doc.WarningCallback = substitutionWarningHandler;
// Ange ett standardnamn för teckensnitt och aktivera teckensnittsersättning.
FontSettings fontSettings = new FontSettings();
fontSettings.SubstitutionSettings.DefaultFontSubstitution.DefaultFontName = "Arial";
;
fontSettings.SubstitutionSettings.FontInfoSubstitution.Enabled = true;
// Ursprungliga teckensnittsmått bör användas efter teckensnittsersättning.
doc.LayoutOptions.KeepOriginalFontMetrics = true;
// Vi får en varning om teckensnittsersättning om vi sparar ett dokument med ett saknat teckensnitt.
doc.FontSettings = fontSettings;
doc.Save(ArtifactsDir + "FontSettings.EnableFontSubstitution.pdf");
using (IEnumerator<WarningInfo> warnings = substitutionWarningHandler.FontWarnings.GetEnumerator())
while (warnings.MoveNext())
Console.WriteLine(warnings.Current.Description);
// Vi kan också verifiera varningar i samlingen och rensa dem.
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>
/// Anropas varje gång en varning uppstår under inläsning/sparning.
/// </summary>
public void Warning(WarningInfo info)
{
if (info.WarningType == WarningType.FontSubstitution)
FontWarnings.Warning(info);
}
public WarningInfoCollection FontWarnings = new WarningInfoCollection();
}
Se även
- namnutrymme Aspose.Words
- hopsättning Aspose.Words