Получить предупреждающую информацию при сохранении файла Visio
Возможные сценарии использования
Иногда пользователь пытается сохранить diagram, который содержит текст, не имеющий локального шрифта. В таком случае Aspose.Diagram выдает предупреждения при сохранении diagram. Вы можете поймать эти предупреждения, внедрив**IWarningCallback** интерфейс и настройка**SaveOptions.WarningCallback**имущество.
Получать предупреждения при сохранении файла Visio
В следующем примере кода объясняется, как получать предупреждения при сохранении файла visio. Код преобразуетобразец файла visio который бросает**[Подстановка шрифта] (https://reference.aspose.com/diagram/net/aspose.diagram/warningtype)** предупреждение о сохранении. Затем это предупреждение перехватывается**IWarningCallback.Warning()**метод, выводящий предупреждающие сообщения на консоль. Пожалуйста, также проверьте консольный вывод кода, приведенного ниже, для большего понимания.
Образец кода
// For complete examples and data files, please go to https://github.com/aspose-diagram/Aspose.Diagram-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir_Intro(); | |
// call the diagram constructor to load diagram from a VSDX file | |
Diagram diagram = new Diagram(dataDir + "sampleFontSubstitution.vsdx"); | |
// create an instance SVG save options class | |
Aspose.Diagram.Saving.SVGSaveOptions so = new Aspose.Diagram.Saving.SVGSaveOptions(); | |
so.WarningCallback = new TestDiagramWarningCallback(); | |
// save Visio drawing | |
diagram.Save(dataDir + "WarningCallback_out.svg", options); | |
public class TestDiagramWarningCallback : Aspose.Diagram.IWarningCallback | |
{ | |
public void Warning(Aspose.Diagram.WarningInfo info) | |
{ | |
if (info.WarningType == Aspose.Diagram.WarningType.FontSubstitution) | |
{ | |
Console.WriteLine("Diagram WARNING INFO: " + info.Description); | |
} | |
} | |
} |
Консольный вывод
Вот консольный вывод приведенного выше кода при выполнении с предоставленнымобразец файла visio.
Font substitution: Font [ Athene Logos ]has been substituted by Font[Times New Roman]