Класс Aspose::Words::WarningInfoCollection

WarningInfoCollection class

Представляет типизированную коллекцию объектов WarningInfo. Чтобы узнать больше, посетите статью документации Programming with Documents.

class WarningInfoCollection : public Aspose::Words::IWarningCallback,
                              public System::Collections::Generic::IEnumerable<System::SharedPtr<Aspose::Words::WarningInfo>>

Методы

МетодОписание
begin()
begin() const
cbegin() const
cend() const
Clear()Удаляет все элементы из коллекции.
end()
end() const
get_Count()Получает количество элементов, содержащихся в коллекции.
GetEnumerator() overrideВозвращает объект‑перечислитель, который можно использовать для перебора всех элементов в коллекции.
GetType() const override
idx_get(int32_t)Получает элемент по указанному индексу.
Is(const System::TypeInfo&) const override
static Type()
virtualizeBeginConstIterator() const override
virtualizeBeginIterator() override
virtualizeEndConstIterator() const override
virtualizeEndIterator() override
Warning(System::SharedPtr<Aspose::Words::WarningInfo>) overrideРеализует интерфейс IWarningCallback. Добавляет предупреждение в эту коллекцию.
WarningInfoCollection()

Typedefs

Типовое определениеОписание
const_iterator
iterator
iterator_holder_type
virtualized_iterator
virtualized_iterator_element

Примечания

Вы можете использовать этот объект коллекции как простейшую форму реализации IWarningCallback для сбора всех предупреждений, которые генерирует Aspose.Words во время операции загрузки или сохранения. Создайте экземпляр этого класса и назначьте его свойству WarningCallback или WarningCallback.

Примеры

Показывает, как установить свойство для поиска наиболее подходящего шрифта при отсутствии нужного шрифта среди доступных источников шрифтов.

// Откройте документ, содержащий текст, отформатированный шрифтом, которого нет ни в одном из наших источников шрифтов.
auto doc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Missing font.docx");

// Назначьте обратный вызов для обработки предупреждений о замене шрифтов.
auto warningCollector = System::MakeObject<Aspose::Words::WarningInfoCollection>();
doc->set_WarningCallback(warningCollector);

// Установите имя шрифта по умолчанию и включите замену шрифтов.
auto fontSettings = System::MakeObject<Aspose::Words::Fonts::FontSettings>();
fontSettings->get_SubstitutionSettings()->get_DefaultFontSubstitution()->set_DefaultFontName(u"Arial");
fontSettings->get_SubstitutionSettings()->get_FontInfoSubstitution()->set_Enabled(true);

// После замены шрифтов следует использовать исходные метрики шрифта.
doc->get_LayoutOptions()->set_KeepOriginalFontMetrics(true);

// Мы получим предупреждение о замене шрифта, если сохраним документ с отсутствующим шрифтом.
doc->set_FontSettings(fontSettings);
doc->Save(get_ArtifactsDir() + u"FontSettings.EnableFontSubstitution.pdf");

for (auto&& info : warningCollector)
{
    if (info->get_WarningType() == Aspose::Words::WarningType::FontSubstitution)
    {
        std::cout << info->get_Description() << std::endl;
    }
}

См. также