Aspose::Words::Fields::FieldStyleRef класс

FieldStyleRef class

Реализует поле STYLEREF. Чтобы узнать больше, посетите статью документации Working with Fields.

class FieldStyleRef : public Aspose::Words::Fields::Field,
                      public Aspose::Words::Fields::IFieldCodeTokenInfoProvider

Методы

МетодОписание
get_DisplayResult()Получает текст, представляющий отображаемый результат поля.
get_End() constПолучает узел, представляющий конец поля.
get_FieldEnd() constПолучает узел, представляющий конец поля.
get_FieldStart() constПолучает узел, представляющий начало поля.
get_Format()Получает объект FieldFormat, который предоставляет типизированный доступ к форматированию поля.
get_InsertParagraphNumber()Получает или задаёт, следует ли вставлять номер абзаца ссылочного абзаца точно так, как он отображается в документе.
get_InsertParagraphNumberInFullContext()Получает или задаёт, следует ли вставлять номер абзаца ссылочного абзаца в полном контексте.
get_InsertParagraphNumberInRelativeContext()Получает или задаёт, следует ли вставлять номер абзаца ссылочного абзаца в относительном контексте.
get_InsertRelativePosition()Получает или задаёт, следует ли вставлять относительное положение ссылочного абзаца.
get_IsDirty()Получает или задает, является ли текущий результат поля более некорректным (устаревшим) из‑за других изменений, внесённых в документ.
get_IsLocked()Получает или задает, заблокировано ли поле (не должно пересчитывать свой результат).
get_LocaleId()Получает или задает LCID поля.
get_Result()Получает или задает текст, находящийся между разделителем поля и его концом.
get_SearchFromBottom()Получает или задаёт, следует ли искать с нижней части текущей страницы, а не с верхней.
get_Separator()Получает узел, представляющий разделитель поля. Может быть null.
get_Start() constПолучает узел, представляющий начало поля.
get_StyleName()Получает или задаёт имя стиля, в котором отформатирован искомый текст.
get_SuppressNonDelimiters()Получает или задаёт, следует ли подавлять символы, не являющиеся разделителями.
virtual get_Type() constПолучает тип поля Microsoft Word.
GetFieldCode()Возвращает текст между началом поля и разделителем поля (или концом поля, если разделитель отсутствует). Включены как код поля, так и результат дочерних полей.
GetFieldCode(bool)Возвращает текст между началом поля и разделителем поля (или концом поля, если разделитель отсутствует).
GetType() const override
Is(const System::TypeInfo&) const override
virtual Remove()Удаляет поле из документа. Возвращает узел сразу после поля. Если конец поля является последним дочерним элементом его родительского узла, возвращает родительский абзац. Если поле уже удалено, возвращает null.
set_InsertParagraphNumber(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_InsertParagraphNumber.
set_InsertParagraphNumberInFullContext(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_InsertParagraphNumberInFullContext.
set_InsertParagraphNumberInRelativeContext(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_InsertParagraphNumberInRelativeContext.
set_InsertRelativePosition(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_InsertRelativePosition.
set_IsDirty(bool)Сеттер для Aspose::Words::Fields::Field::get_IsDirty.
set_IsLocked(bool)Сеттер для Aspose::Words::Fields::Field::get_IsLocked.
set_LocaleId(int32_t)Сеттер для Aspose::Words::Fields::Field::get_LocaleId.
set_Result(const System::String&)Сеттер для Aspose::Words::Fields::Field::get_Result.
set_SearchFromBottom(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_SearchFromBottom.
set_StyleName(const System::String&)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_StyleName.
set_SuppressNonDelimiters(bool)Сеттер для Aspose::Words::Fields::FieldStyleRef::get_SuppressNonDelimiters.
static Type()
Unlink()Выполняет отсоединение поля.
Update()Выполняет обновление поля. Вызывает исключение, если поле уже обновляется.
Update(bool)Выполняет обновление поля. Выбрасывает исключение, если поле уже обновляется.

Примеры

Показывает, как использовать поля STYLEREF.

auto doc = System::MakeObject<Aspose::Words::Document>();
auto builder = System::MakeObject<Aspose::Words::DocumentBuilder>(doc);

// Создайте список на основе шаблона списка Microsoft Word.
System::SharedPtr<Aspose::Words::Lists::List> list = doc->get_Lists()->Add(Aspose::Words::Lists::ListTemplate::NumberDefault);

// Этот сгенерированный список будет отображать "1.a )".
// Пробел перед скобкой является неделимым символом, который мы можем подавить.
list->get_ListLevels()->idx_get(0)->set_NumberFormat(u"\x0000" u".");
list->get_ListLevels()->idx_get(1)->set_NumberFormat(u"\x0001" u" )");

// Добавьте текст и примените стили абзацев, на которые будут ссылаться поля STYLEREF.
builder->get_ListFormat()->set_List(list);
builder->get_ListFormat()->ListIndent();
builder->get_ParagraphFormat()->set_Style(doc->get_Styles()->idx_get(u"List Paragraph"));
builder->Writeln(u"Item 1");
builder->get_ParagraphFormat()->set_Style(doc->get_Styles()->idx_get(u"Quote"));
builder->Writeln(u"Item 2");
builder->get_ParagraphFormat()->set_Style(doc->get_Styles()->idx_get(u"List Paragraph"));
builder->Writeln(u"Item 3");
builder->get_ListFormat()->RemoveNumbers();
builder->get_ParagraphFormat()->set_Style(doc->get_Styles()->idx_get(u"Normal"));

// Разместите поле STYLEREF в верхнем колонтитуле и отобразите первый текст, оформленный как \"List Paragraph\", в документе.
builder->MoveToHeaderFooter(Aspose::Words::HeaderFooterType::HeaderPrimary);
auto field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"List Paragraph");

// Разместите поле STYLEREF в нижнем колонтитуле и заставьте его отображать последний текст.
builder->MoveToHeaderFooter(Aspose::Words::HeaderFooterType::FooterPrimary);
field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"List Paragraph");
field->set_SearchFromBottom(true);

builder->MoveToDocumentEnd();

// Мы также можем использовать поля STYLEREF для ссылки на номера списков.
builder->Write(u"\nParagraph number: ");
field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"Quote");
field->set_InsertParagraphNumber(true);

builder->Write(u"\nParagraph number, relative context: ");
field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"Quote");
field->set_InsertParagraphNumberInRelativeContext(true);

builder->Write(u"\nParagraph number, full context: ");
field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"Quote");
field->set_InsertParagraphNumberInFullContext(true);

builder->Write(u"\nParagraph number, full context, non-delimiter chars suppressed: ");
field = System::ExplicitCast<Aspose::Words::Fields::FieldStyleRef>(builder->InsertField(Aspose::Words::Fields::FieldType::FieldStyleRef, true));
field->set_StyleName(u"Quote");
field->set_InsertParagraphNumberInFullContext(true);
field->set_SuppressNonDelimiters(true);

doc->UpdatePageLayout();
doc->UpdateFields();
doc->Save(get_ArtifactsDir() + u"Field.STYLEREF.docx");

См. также