<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Documentation – Обзор конструктора документов на C&#43;&#43;</title>
    <link>https://docs.aspose.com/words/ru/cpp/document-builder-overview/</link>
    <description>Recent content in Обзор конструктора документов на C&#43;&#43; on Documentation</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>ru</language>
    
	  <atom:link href="https://docs.aspose.com/words/ru/cpp/document-builder-overview/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Cpp: Навигация с помощью курсора в C&#43;&#43;</title>
      <link>https://docs.aspose.com/words/ru/cpp/navigation-with-cursor/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://docs.aspose.com/words/ru/cpp/navigation-with-cursor/</guid>
      <description>
        
        
        &lt;p&gt;При работе с документом, даже если он короткий или длинный, вам нужно будет перемещаться по нему. Навигация с помощью виртуального курсора представляет собой возможность перемещаться между различными узлами документа.&lt;/p&gt;
&lt;p&gt;В коротком документе легко перемещаться по тексту, поскольку вы можете перемещать точку вставки, даже используя клавиши со стрелками на клавиатуре или щелкая мышью, чтобы найти точку вставки в нужном месте. Но если у вас большой документ с большим количеством страниц, этих базовых методов будет недостаточно.&lt;/p&gt;
&lt;p&gt;В этой статье объясняется, как перемещаться по документу и перемещаться с помощью виртуального курсора к различным его частям.&lt;/p&gt;



  &lt;h2 id=&#34;определение-текущего-положения-курсора&#34;&gt;
    Определение текущего положения курсора
  &lt;/h2&gt;
&lt;p&gt;Прежде чем начать процесс навигации по документу, вам нужно будет указать узел, который выбран в данный момент. Вы можете получить точное положение курсора на выбранном узле, используя свойство &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/get_currentnode/&#34;&gt;CurrentNode&lt;/a&gt;. Кроме того, вместо получения текущего узла вы можете получить текущий выбранный абзац или текущий выбранный раздел, используя свойства &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/get_currentparagraph/&#34;&gt;CurrentParagraph&lt;/a&gt; и &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/get_currentsection/&#34;&gt;CurrentSection&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Все операции вставки, которые вы выполняете с помощью &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/&#34;&gt;DocumentBuilder&lt;/a&gt;, будут вставлены перед &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/get_currentnode/&#34;&gt;CurrentNode&lt;/a&gt;. Если текущий абзац пуст или курсор установлен непосредственно перед концом абзаца, &lt;strong&gt;CurrentNode&lt;/strong&gt; возвращает значение nullptr.&lt;/p&gt;



  &lt;h2 id=&#34;методы-навигации-по-документу&#34;&gt;
    Методы навигации по документу
  &lt;/h2&gt;
&lt;p&gt;Когда вы редактируете текст, важно знать, как перемещаться по документу и куда именно перемещаться в нем. Aspose.Words позволяет перемещаться по документу и переходить к различным его разделам и частям – это аналогично функциональности панели навигации в Microsoft Word для перехода к странице или заголовку в документе Word без прокрутки.&lt;/p&gt;
&lt;p&gt;Основной метод заключается в том, чтобы иметь возможность перемещать положение курсора на определенный узел в вашем документе, вы можете добиться этого, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/moveto/&#34;&gt;MoveTo&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как переместить &lt;strong&gt;DocumentBuilder&lt;/strong&gt; в разные узлы документа:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToNode.cpp&#34;&gt;&lt;/script&gt;

&lt;p&gt;Но помимо базового метода &lt;strong&gt;MoveTo&lt;/strong&gt;, есть и более специфичные.&lt;/p&gt;



  &lt;h3 id=&#34;перейдите-к-началу-или-концу-документа&#34;&gt;
    Перейдите к началу или концу документа
  &lt;/h3&gt;
&lt;p&gt;Вы можете перейти к началу или концу вашего документа, используя методы &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetodocumentstart/&#34;&gt;MoveToDocumentStart&lt;/a&gt; и &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetodocumentend/&#34;&gt;MoveToDocumentEnd&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как переместить курсор в начало или конец документа:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToDocumentStartEnd.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;навигация-с-помощью-закладок&#34;&gt;
    Навигация с помощью закладок
  &lt;/h3&gt;
&lt;p&gt;Вы можете отметить место, которое хотите найти, и легко перейти к нему снова. Вы можете вставить в документ столько закладок, сколько захотите, а затем перемещаться по ним, присваивая закладкам уникальные названия. Вы можете перейти к закладке, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetobookmark/&#34;&gt;MoveToBookmark&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В следующих примерах кода показано, как переместить курсор на закладку:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToBookmark.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;перейдите-к-ячейкам-таблицы&#34;&gt;
    Перейдите к ячейкам таблицы
  &lt;/h3&gt;
&lt;p&gt;Вы можете перейти к ячейке таблицы, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetocell/&#34;&gt;MoveToCell&lt;/a&gt;. Этот метод позволит вам переместить курсор в любую ячейку определенной таблицы. Кроме того, вы можете указать индекс для перемещения курсора в любую позицию или на указанный символ в ячейке с помощью метода &lt;strong&gt;MoveToCell&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как переместить курсор в указанную ячейку таблицы:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToTableCell.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;перейдите-к-полю&#34;&gt;
    Перейдите к полю
  &lt;/h3&gt;
&lt;p&gt;Вы можете перейти к определенному полю в вашем документе, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetofield/&#34;&gt;MoveToField&lt;/a&gt;. Кроме того, вы можете перейти к определенному полю объединения, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetomergefield/&#34;&gt;MoveToMergeField&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как переместить курсор конструктора документов на определенное поле:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToMergeField.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;перейдите-к-верхнему-или-нижнему-колонтитулу&#34;&gt;
    Перейдите к верхнему или нижнему колонтитулу
  &lt;/h3&gt;
&lt;p&gt;Вы можете перейти к началу верхнего или нижнего колонтитула, используя метод &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetoheaderfooter/&#34;&gt;MoveToHeaderFooter&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как переместить курсор конструктора документов в верхний или нижний колонтитул документа:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderHeadersAndFooters.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;перейдите-к-разделу-или-абзацу&#34;&gt;
    Перейдите к разделу или абзацу
  &lt;/h3&gt;
&lt;p&gt;Вы можете перейти к определенному разделу или абзацу, используя методы &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetoparagraph/&#34;&gt;MoveToParagraph&lt;/a&gt; или &lt;a href=&#34;https://reference.aspose.com/words/cpp/aspose.words/documentbuilder/movetosection/&#34;&gt;MoveToSection&lt;/a&gt;. Кроме того, вы можете указать индекс для перемещения курсора в любую позицию или на указанный символ в абзаце с помощью метода &lt;strong&gt;MoveToParagraph&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;В следующем примере кода показано, как перейти к определенному разделу и конкретному абзацу в документе:&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-words-gists/d55d8631947d283b1f0da99afa06c492.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToSectionParagraph.cpp&#34;&gt;&lt;/script&gt;


      </description>
    </item>
    
    <item>
      <title>Cpp: Используйте DocumentBuilder для вставки элементов документа</title>
      <link>https://docs.aspose.com/words/ru/cpp/use-documentbuilder-to-insert-document-elements/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://docs.aspose.com/words/ru/cpp/use-documentbuilder-to-insert-document-elements/</guid>
      <description>
        
        
        &lt;p&gt;&lt;code&gt;DocumentBuilder&lt;/code&gt; используется для изменения документов. В этой статье объясняется и описывается, как выполнять ряд задач:&lt;/p&gt;



  &lt;h2 id=&#34;вставка-текстовой-строки&#34;&gt;
    Вставка текстовой строки
  &lt;/h2&gt;
&lt;p&gt;Просто передайте строку текста, которую вам нужно вставить в документ, методу &lt;code&gt;DocumentBuilder.Write&lt;/code&gt;. Форматирование текста определяется свойством &lt;code&gt;Font&lt;/code&gt;. Этот объект содержит различные атрибуты шрифта (название шрифта, размер шрифта, цвет и т.д.). Некоторые важные атрибуты шрифта также представлены свойствами DocumentBuilder, что позволяет получить к ним прямой доступ. Это логические свойства &lt;code&gt;Font.Bold&lt;/code&gt;, &lt;code&gt;Font.Italic&lt;/code&gt; и &lt;code&gt;Font.Underline&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Обратите внимание, что заданное вами форматирование символов будет применяться ко всему тексту, вставленному начиная с текущей позиции в документе.&lt;/p&gt;
&lt;p&gt;Приведенный ниже пример вставляет форматированный текст с помощью DocumentBuilder.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-WriteAndFont-WriteAndFont.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-абзаца&#34;&gt;
    Вставка абзаца
  &lt;/h2&gt;
&lt;p&gt;&lt;code&gt;DocumentBuilder.Writeln&lt;/code&gt; также вставляет строку текста в документ, но, кроме того, добавляет разрыв абзаца. Текущее форматирование шрифта также определяется свойством &lt;code&gt;DocumentBuilder.Font&lt;/code&gt;, а текущее форматирование абзаца определяется свойством &lt;code&gt;DocumentBuilder.ParagraphFormat&lt;/code&gt;. В приведенном ниже примере показано, как вставить абзац в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertParagraph-DocumentBuilderInsertParagraph.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-таблицы&#34;&gt;
    Вставка таблицы
  &lt;/h2&gt;
&lt;p&gt;Базовый алгоритм создания таблицы с помощью DocumentBuilder прост:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Запустите таблицу с помощью &lt;code&gt;DocumentBuilder.StartTable&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Вставьте ячейку, используя &lt;code&gt;DocumentBuilder.InsertCell&lt;/code&gt;. При этом автоматически начнется новая строка. При необходимости используйте свойство &lt;code&gt;DocumentBuilder.CellFormat&lt;/code&gt;, чтобы задать форматирование ячейки.&lt;/li&gt;
&lt;li&gt;Вставьте содержимое ячейки, используя методы &lt;code&gt;DocumentBuilder&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Повторяйте шаги 2 и 3, пока строка не будет завершена.&lt;/li&gt;
&lt;li&gt;Вызовите &lt;code&gt;DocumentBuilder.EndRow&lt;/code&gt;, чтобы завершить текущую строку. При необходимости используйте свойство &lt;code&gt;DocumentBuilder.RowFormat&lt;/code&gt;, чтобы задать форматирование строки.&lt;/li&gt;
&lt;li&gt;Повторяйте шаги 2-5, пока таблица не будет заполнена полностью.&lt;/li&gt;
&lt;li&gt;Вызовите &lt;code&gt;DocumentBuilder.EndTable&lt;/code&gt;, чтобы завершить создание таблицы. Ниже описаны соответствующие методы создания таблиц в DocumentBuilder.&lt;/li&gt;
&lt;/ol&gt;



  &lt;h3 id=&#34;запуск-таблицы&#34;&gt;
    Запуск таблицы
  &lt;/h3&gt;
&lt;p&gt;Вызов &lt;code&gt;DocumentBuilder.StartTable&lt;/code&gt; является первым шагом в построении таблицы. Он также может быть вызван внутри ячейки, и в этом случае запускается вложенная таблица. Следующий вызываемый метод - &lt;code&gt;DocumentBuilder.InsertCell&lt;/code&gt;.&lt;/p&gt;



  &lt;h3 id=&#34;вставка-ячейки&#34;&gt;
    Вставка ячейки
  &lt;/h3&gt;
&lt;p&gt;После вызова &lt;code&gt;DocumentBuilder-&amp;gt;InsertCell&lt;/code&gt; будет создана новая ячейка, и любое содержимое, добавленное с помощью других методов класса &lt;code&gt;DocumentBuilder&lt;/code&gt;, будет добавлено в текущую ячейку. Чтобы создать новую ячейку в той же строке, снова вызовите &lt;code&gt;DocumentBuilder-&amp;gt;InsertCell&lt;/code&gt;. Используйте свойство &lt;code&gt;DocumentBuilder.CellFormat&lt;/code&gt;, чтобы задать форматирование ячейки. Оно возвращает объект &lt;code&gt;CellFormat&lt;/code&gt;, который представляет все форматирование ячейки таблицы.&lt;/p&gt;



  &lt;h3 id=&#34;завершение-строки&#34;&gt;
    Завершение строки
  &lt;/h3&gt;
&lt;p&gt;Вызовите &lt;code&gt;DocumentBuilder.EndRow&lt;/code&gt;, чтобы завершить текущую строку. Если вы вызовете &lt;code&gt;DocumentBuilder-&amp;gt;InsertCell&lt;/code&gt; сразу после этого, таблица будет продолжена с новой строки.&lt;/p&gt;
&lt;p&gt;Используйте свойство &lt;code&gt;DocumentBuilder.RowFormat&lt;/code&gt;, чтобы указать форматирование строк. Оно возвращает объект &lt;code&gt;RowFormat&lt;/code&gt;, который представляет все форматирование для строки таблицы.&lt;/p&gt;



  &lt;h3 id=&#34;завершение-таблицы&#34;&gt;
    Завершение таблицы
  &lt;/h3&gt;
&lt;p&gt;Вызовите &lt;code&gt;DocumentBuilder.EndTable&lt;/code&gt;, чтобы завершить работу с текущей таблицей. Этот метод следует вызывать только один раз после вызова &lt;code&gt;DocumentBuilder-&amp;gt;EndRow&lt;/code&gt;. При вызове &lt;code&gt;DocumentBuilder.EndTable&lt;/code&gt; курсор перемещается из текущей ячейки в позицию сразу за таблицей. В следующем примере показано, как создать отформатированную таблицу, содержащую 2 строки и 2 столбца.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderBuildTable-DocumentBuilderBuildTable.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-разрыва&#34;&gt;
    Вставка разрыва
  &lt;/h2&gt;
&lt;p&gt;Если вы хотите явно начать новую строку, абзац, столбец, раздел или страницу, вызовите &lt;code&gt;DocumentBuilder.InsertBreak&lt;/code&gt;. Передайте этому методу тип разрыва, который вам нужно вставить, который представлен перечислением &lt;code&gt;BreakType&lt;/code&gt;. В приведенном ниже примере показано, как вставлять разрывы страниц в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertBreak-DocumentBuilderInsertBreak.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-изображения&#34;&gt;
    Вставка изображения
  &lt;/h2&gt;
&lt;p&gt;DocumentBuilder предоставляет несколько дополнений к методу &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;, который позволяет вставлять встроенное или плавающее изображение. Если изображение представляет собой метафайл EMF или WMF, оно будет вставлено в документ в формате метафайла. Все остальные изображения будут сохранены в формате PNG. Метод &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt; позволяет использовать изображения из разных источников:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Из файла или &lt;code&gt;URL&lt;/code&gt;, передав строковый параметр &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Из потока путем передачи параметра &lt;code&gt;Stream&lt;/code&gt; &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Из объекта Image путем передачи параметра Image &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Из массива байтов путем передачи параметра массива байтов &lt;code&gt;DocumentBuilder.InsertImage&lt;/code&gt;.Для каждого из методов &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt; существуют дополнительные перегрузки, которые позволяют вставлять изображение со следующими параметрами:&lt;/li&gt;
&lt;li&gt;Встроенный или плавающий в определенном положении, например, &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Процентный масштаб или пользовательский размер, например, &lt;code&gt;DocumentBuilder.InsertImage&lt;/code&gt;. Кроме того, метод &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt; возвращает объект &lt;code&gt;Shape&lt;/code&gt;, который был только что создан и вставлен, чтобы вы могли дополнительно изменять свойства фигуры.&lt;/li&gt;
&lt;/ul&gt;



  &lt;h3 id=&#34;вставка-встроенного-изображения&#34;&gt;
    Вставка встроенного изображения
  &lt;/h3&gt;
&lt;p&gt;Передайте одну строку, представляющую файл, содержащий изображение, в &lt;code&gt;DocumentBuilder-&amp;gt;InsertImage&lt;/code&gt;, чтобы вставить изображение в документ в качестве встроенной графики. В приведенном ниже примере показано, как вставить встроенное изображение в положение курсора в документе.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertImage-DocumentBuilderInsertInlineImage.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;вставка-плавающего-абсолютно-расположенного-изображение&#34;&gt;
    Вставка плавающего (абсолютно расположенного) Изображение
  &lt;/h3&gt;
&lt;p&gt;В этом примере вставляется плавающее изображение из файла или &lt;code&gt;URL&lt;/code&gt; в указанном положении и размере.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertImage-DocumentBuilderInsertFloatingImage.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-закладки&#34;&gt;
    Вставка закладки
  &lt;/h2&gt;
&lt;p&gt;Чтобы вставить закладку в документ, вам необходимо выполнить следующие действия:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Вызовите &lt;code&gt;DocumentBuilder-&amp;gt;StartBookmark&lt;/code&gt;, передав ему желаемое название закладки.&lt;/li&gt;
&lt;li&gt;Вставьте текст закладки, используя методы DocumentBuilder.&lt;/li&gt;
&lt;li&gt;Вызовите &lt;code&gt;DocumentBuilder.EndBookmark&lt;/code&gt;, передав ему то же имя, которое вы использовали в &lt;strong&gt;DocumentBuilder-&amp;gt;StartBookmark&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Закладки могут перекрываться и охватывать любой диапазон. Чтобы создать действительную закладку, вам нужно вызвать как &lt;code&gt;DocumentBuilder-&amp;gt;StartBookmark&lt;/code&gt;, так и &lt;code&gt;DocumentBuilder-&amp;gt;EndBookmark&lt;/code&gt; с одинаковым именем закладки.&lt;/li&gt;
&lt;/ol&gt;


&lt;div class=&#34;alert alert-primary&#34; role=&#34;alert&#34;&gt;

Неправильно оформленные закладки или закладки с повторяющимися названиями будут проигнорированы при сохранении документа.
&lt;/div&gt;

&lt;p&gt;В приведенном ниже примере показано, как вставить закладку в документ с помощью конструктора документов.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertBookmark-DocumentBuilderInsertBookmark.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-поля-form&#34;&gt;
    Вставка поля &amp;lt;code&amp;gt;Form&amp;lt;/code&amp;gt;
  &lt;/h2&gt;
&lt;p&gt;Поля формы - это частный случай полей Word, которые позволяют &amp;ldquo;взаимодействовать&amp;rdquo; с пользователем. Поля формы в Microsoft Word включают текстовое поле, поле со списком и флажок.DocumentBuilder предоставляет специальные методы для вставки каждого типа полей формы в документ: &lt;code&gt;DocumentBuilder.InsertTextInput&lt;/code&gt;, &lt;code&gt;DocumentBuilder-&amp;gt;InsertCheckBox&lt;/code&gt; и &lt;code&gt;DocumentBuilder.InsertComboBox&lt;/code&gt;. Обратите внимание, что если вы укажете имя для поля формы, то автоматически будет создана закладка с таким же именем.&lt;/p&gt;



  &lt;h3 id=&#34;вставка-текста-для-ввода&#34;&gt;
    Вставка текста для ввода
  &lt;/h3&gt;
&lt;p&gt;&lt;code&gt;DocumentBuilder.InsertTextInput&lt;/code&gt; чтобы вставить текстовое поле в документ. В приведенном ниже примере показано, как вставить поле формы ввода текста в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertTextInputFormField.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;установка-флажка&#34;&gt;
    Установка флажка
  &lt;/h3&gt;
&lt;p&gt;Вызовите &lt;code&gt;DocumentBuilder.InsertCheckBox&lt;/code&gt;, чтобы вставить флажок в документ. В приведенном ниже примере показано, как вставить поле формы с флажком в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertCheckBoxFormField.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;вставка-поля-со-списком&#34;&gt;
    Вставка поля со списком
  &lt;/h3&gt;
&lt;p&gt;Вызовите &lt;code&gt;DocumentBuilder.InsertComboBox&lt;/code&gt;, чтобы вставить поле со списком в документ. В приведенном ниже примере показано, как вставить поле формы со списком в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertComboBoxFormField.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-языкового-стандарта-на-уровне-поля&#34;&gt;
    Вставка языкового стандарта на уровне поля
  &lt;/h2&gt;
&lt;p&gt;Теперь пользователи могут указывать языковой стандарт на уровне поля и могут лучше контролировать его. С каждым полем в DocumentBuilder можно связать идентификаторы языкового стандарта. Приведенные ниже примеры иллюстрируют, как использовать эту опцию.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Fields-SpecifylocaleAtFieldlevel-SpecifylocaleAtFieldlevel.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-гиперссылки&#34;&gt;
    Вставка гиперссылки
  &lt;/h2&gt;
&lt;p&gt;Используйте &lt;code&gt;DocumentBuilder.InsertHyperlink&lt;/code&gt;, чтобы вставить гиперссылку в документ. Этот метод принимает три параметра: текст ссылки, которая будет отображаться в документе, адрес назначения ссылки (URL или название закладки внутри документа) и логический параметр, который должен иметь значение true, если &lt;code&gt;URL&lt;/code&gt; является именем закладки внутри документа.DocumentBuilder.InsertHyperlink выполняет внутренний вызов &lt;code&gt;DocumentBuilder.InsertField&lt;/code&gt;.Этот метод всегда добавляет апострофы в начале и конце URL-адреса. Обратите внимание, что вам необходимо явно указать форматирование шрифта для отображаемого текста гиперссылки, используя свойство &lt;code&gt;Font&lt;/code&gt;. Приведенный ниже пример вставляет гиперссылку в документ с помощью DocumentBuilder.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertHyperlink.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-ole-объекта&#34;&gt;
    Вставка Ole-объекта
  &lt;/h2&gt;
&lt;p&gt;Если вам нужен Ole-объект, вызовите &lt;code&gt;DocumentBuilder.InsertOleObject&lt;/code&gt;. Передайте этому методу значение &lt;code&gt;ProgId&lt;/code&gt; явно с другими параметрами. В приведенном ниже примере показано, как вставить Ole-объект в документ.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertOleObject.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;задайте-имя-и-расширение-файла-при-вставке-ole-объекта&#34;&gt;
    Задайте имя и расширение файла при вставке Ole-объекта
  &lt;/h2&gt;
&lt;p&gt;OLE-пакет - это устаревший и &amp;ldquo;недокументированный&amp;rdquo; способ хранения внедренного объекта, если обработчик OLE неизвестен. В ранних версиях Windows, таких как Windows 3.1, 95 и 98, было Packager.exe приложение, которое можно было использовать для встраивания данных любого типа в документ. Теперь это приложение исключено из Windows, но MS Word и другие приложения по-прежнему используют его для встраивания данных, если обработчик OLE отсутствует или неизвестен. Класс OlePackage позволяет получить доступ к свойствам пакета OLE. В приведенном ниже примере показано, как задать имя файла, расширение и отображаемое имя для OLE-пакета.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-InsertOleObjectwithOlePackage.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставка-html-кода&#34;&gt;
    Вставка HTML-кода
  &lt;/h2&gt;
&lt;p&gt;Вы можете легко вставить HTML-строку, содержащую HTML-фрагмент или весь HTML-документ целиком, в документ Word. Просто передайте эту строку методу &lt;code&gt;DocumentBuilder-&amp;gt;InsertHtml&lt;/code&gt;. Одной из полезных реализаций метода является сохранение HTML-строки в базе данных и вставка ее в документ во время Mail Merge для добавления отформатированного содержимого вместо его создания с помощью различных методов конструктора документов. В приведенном ниже примере показано, как HTML-строка вставляется в документ с помощью DocumentBuilder.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertElements-DocumentBuilderInsertHtml.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;вставить-горизонтальную-линейку-в-документ&#34;&gt;
    Вставить горизонтальную линейку в документ
  &lt;/h2&gt;
&lt;p&gt;В примере low code показано, как вставить форму горизонтальной линейки в документ, используя метод &lt;code&gt;DocumentBuilder-&amp;gt;InsertHorizontalRule&lt;/code&gt;.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderInsertHorizontalRule-DocumentBuilderInsertHorizontalRule.cpp&#34;&gt;&lt;/script&gt;


      </description>
    </item>
    
    <item>
      <title>Cpp: Использование DocumentBuilder для простого изменения документа</title>
      <link>https://docs.aspose.com/words/ru/cpp/using-documentbuilder-to-modify-a-document-easily/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://docs.aspose.com/words/ru/cpp/using-documentbuilder-to-modify-a-document-easily/</guid>
      <description>
        
        
        


  &lt;h2 id=&#34;задание-форматирования&#34;&gt;
    Задание форматирования
  &lt;/h2&gt;



  &lt;h3 id=&#34;форматирование-шрифта&#34;&gt;
    Форматирование шрифта
  &lt;/h3&gt;
&lt;p&gt;Текущее форматирование шрифта представлено объектом &lt;code&gt;Font&lt;/code&gt;, возвращаемым свойством &lt;code&gt;DocumentBuilder.Font&lt;/code&gt;. Класс &lt;code&gt;Font&lt;/code&gt; содержит широкий спектр свойств шрифта, доступных в Microsoft Word. В приведенном ниже примере показано, как задать форматирование шрифта.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetFontFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;форматирование-абзаца&#34;&gt;
    Форматирование абзаца
  &lt;/h3&gt;
&lt;p&gt;Текущее форматирование абзаца представлено объектом &lt;code&gt;ParagraphFormat&lt;/code&gt;, который возвращается свойством &lt;code&gt;DocumentBuilder.ParagraphFormat&lt;/code&gt;. Этот объект инкапсулирует различные свойства форматирования абзаца, доступные в Microsoft Word. Вы можете легко изменить форматирование абзаца по умолчанию на обычный стиль, выровненный по левому краю, без отступов, без интервалов, без границ и без затенения, вызвав команду &lt;code&gt;ParagraphFormat.ClearFormatting&lt;/code&gt;. В приведенном ниже примере показано, как настроить форматирование абзаца.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetParagraphFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;работа-с-азиатской-типографикой&#34;&gt;
    Работа с азиатской типографикой
  &lt;/h3&gt;



  &lt;h4 id=&#34;автоматическая-регулировка-интервала-между-азиатским-и-латинским-текстом-цифрами&#34;&gt;
    Автоматическая регулировка интервала между азиатским и латинским текстом, цифрами
  &lt;/h4&gt;
&lt;p&gt;Если вы разрабатываете шаблон, содержащий как восточноазиатский, так и латинский текст, и хотите улучшить внешний вид шаблона формы, регулируя пробелы между обоими типами текста, вы можете настроить свой шаблон формы таким образом, чтобы он автоматически корректировал пробелы между этими двумя типами текста. Для достижения этой цели вы можете использовать свойства AddSpaceBetweenFarEastAndAlpha и AddSpaceBetweenFarEastAndDigit класса ParagraphFormat.&lt;/p&gt;
&lt;p&gt;Следующий пример кода показывает, как использовать свойства &lt;code&gt;ParagraphFormat.AddSpaceBetweenFarEastAndAlpha&lt;/code&gt; и &lt;code&gt;ParagraphFormat.AddSpaceBetweenFarEastAndDigit&lt;/code&gt;.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetSpacebetweenAsianandLatintext.cpp&#34;&gt;&lt;/script&gt;




  &lt;h4 id=&#34;измените-азиатский-интервал-между-абзацами-и-отступы&#34;&gt;
    Измените азиатский интервал между абзацами и отступы
  &lt;/h4&gt;
&lt;p&gt;В следующем примере кода показано, как изменить азиатский интервал между абзацами и отступы.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetSpacebetweenAsianandLatintext.cpp&#34;&gt;&lt;/script&gt;




  &lt;h4 id=&#34;установите-параметры-разрыва-строки&#34;&gt;
    Установите параметры разрыва строки
  &lt;/h4&gt;
&lt;p&gt;На вкладке &amp;ldquo;Азиатская типографика&amp;rdquo; диалогового окна &amp;ldquo;Свойства&amp;rdquo; &lt;code&gt;Paragraph&lt;/code&gt; в MS Word есть группа &amp;ldquo;Разрыв строки&amp;rdquo;. Параметры этой группы можно настроить с помощью параметров FarEastLineBreakControl, WordWrap, HangingPunctuation класса ParagraphFormat. В примереlow code показано, как использовать эти свойства.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-SetAsianTypographyLinebreakGroupProp.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;форматирование-ячеек&#34;&gt;
    Форматирование ячеек
  &lt;/h3&gt;
&lt;p&gt;Форматирование ячеек используется при построении таблицы. Оно представлено объектом &lt;code&gt;CellFormat&lt;/code&gt;, возвращаемым свойством &lt;code&gt;DocumentBuilder.CellFormat&lt;/code&gt;. CellFormat инкапсулирует различные свойства ячеек таблицы, такие как ширина или выравнивание по вертикали. В приведенном ниже примере показано, как создать таблицу, содержащую одну отформатированную ячейку.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetTableCellFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;форматирование-строк&#34;&gt;
    Форматирование строк
  &lt;/h3&gt;
&lt;p&gt;Текущее форматирование строк определяется объектом &lt;code&gt;RowFormat&lt;/code&gt;, который возвращается свойством &lt;code&gt;DocumentBuilder.RowFormat&lt;/code&gt;. Этот объект содержит информацию о форматировании всех строк таблицы. В приведенном ниже примере показано, как создать таблицу, содержащую одну ячейку, и применить форматирование строк.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetTableRowFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;форматирование-списка&#34;&gt;
    Форматирование списка
  &lt;/h3&gt;
&lt;p&gt;Aspose.Words позволяет легко создавать списки, применяя форматирование списка. DocumentBuilder предоставляет свойство &lt;code&gt;DocumentBuilder.ListFormat&lt;/code&gt;, которое возвращает объект &lt;code&gt;ListFormat&lt;/code&gt;. У этого объекта есть несколько методов для начала и завершения списка, а также для увеличения/уменьшения отступа. В Microsoft Word существует два основных типа списков: маркированные и нумерованные.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Чтобы запустить маркированный список, наберите &lt;code&gt;ListFormat.ApplyBulletDefault&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Чтобы запустить нумерованный список, наберите &lt;code&gt;ListFormat.ApplyNumberDefault&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Маркер или номер и форматирование добавляются к текущему абзацу и ко всем последующим абзацам, созданным с помощью &lt;strong&gt;DocumentBuilder&lt;/strong&gt;, до тех пор, пока не будет вызван параметр &lt;code&gt;ListFormat.RemoveNumbers&lt;/code&gt;, который остановит форматирование маркированного списка. В документах Word списки могут содержать до девяти уровней. Форматирование списка для каждого уровня определяет, какой маркер или число используется, отступ слева, пробел между маркером и текстом и т.д.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Чтобы увеличить уровень списка текущего абзаца на один уровень, вызовите &lt;code&gt;ListFormat.ListIndent&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Чтобы уменьшить уровень списка текущего абзаца на один уровень, вызовите &lt;code&gt;ListFormat.ListOutdent&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Методы изменяют уровень списка и применяют свойства форматирования нового уровня.&lt;/p&gt;


&lt;div class=&#34;alert alert-primary&#34; role=&#34;alert&#34;&gt;

Вы также можете использовать свойство &lt;code&gt;ListFormat.ListLevelNumber&lt;/code&gt;, чтобы получить или задать уровень списка для абзаца. Уровни списка пронумерованы от 0 до 8.
&lt;/div&gt;

&lt;p&gt;В приведенном ниже примере показано, как создать многоуровневый список.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetMultilevelListFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;настройка-страницы-и-форматирование-разделов&#34;&gt;
    Настройка страницы и форматирование разделов
  &lt;/h3&gt;
&lt;p&gt;Свойства настройки страницы и раздела заключены в объект &lt;code&gt;PageSetup&lt;/code&gt;, который возвращается свойством &lt;code&gt;DocumentBuilder.PageSetup&lt;/code&gt;. Объект содержит все атрибуты настройки страницы для раздела (левое поле, нижнее поле, формат бумаги и т.д.) в качестве свойств. В приведенном ниже примере показано, как задать такие свойства, как размер страницы и ориентация для текущего раздела.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderSetPageSetupAndSectionFormatting.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;применение-стиля&#34;&gt;
    Применение стиля
  &lt;/h3&gt;
&lt;p&gt;Некоторые объекты форматирования, такие как Font или ParagraphFormat, поддерживают стили. Отдельный встроенный или определяемый пользователем стиль представлен объектом &lt;code&gt;Style&lt;/code&gt;, который содержит соответствующие свойства стиля, такие как название, базовый стиль, форматирование шрифта и абзаца в стиле и так далее.&lt;/p&gt;
&lt;p&gt;Кроме того, объект &lt;strong&gt;Style&lt;/strong&gt; предоставляет свойство &lt;code&gt;Style.StyleIdentifier&lt;/code&gt;, которое возвращает идентификатор стиля, не зависящий от языка, представленный значением перечисления &lt;strong&gt;Style.StyleIdentifier&lt;/strong&gt;. Дело в том, что названия встроенных стилей в Microsoft Word локализованы для разных языков. Используя идентификатор стиля, вы можете найти правильный стиль независимо от языка документа. Значения перечисления соответствуют встроенным стилям Microsoft Word, таким как обычный, Heading 1, Heading 2 и т.д. Всем пользовательским стилям присваивается значение &lt;strong&gt;StyleIdentifier.User value&lt;/strong&gt;. В приведенном ниже примере показано, как применить стиль абзаца.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderApplyParagraphStyle.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;границы-и-затенение&#34;&gt;
    Границы и затенение
  &lt;/h3&gt;
&lt;p&gt;Границы представлены коллекцией BorderCollection. Это коллекция объектов Border, доступ к которым осуществляется по индексу или по типу границы. Тип границы представлен перечислением &lt;code&gt;BorderType&lt;/code&gt;. Некоторые значения перечисления применимы к нескольким или только к одному элементу документа. Например, &lt;code&gt;BorderType.Bottom&lt;/code&gt; применимо к абзацу или ячейке таблицы, в то время как &lt;code&gt;BorderType.DiagonalDown&lt;/code&gt; определяет диагональную границу только в ячейке таблицы.&lt;/p&gt;
&lt;p&gt;Как коллекция границ, так и каждая отдельная граница имеют схожие атрибуты, такие как цвет, стиль линии, ширина линии, расстояние от текста и необязательная тень. Они представлены одноименными свойствами. Комбинируя значения свойств, вы можете создавать различные типы границ. Кроме того, как объекты &lt;strong&gt;BorderCollection&lt;/strong&gt;, так и объекты &lt;strong&gt;Border&lt;/strong&gt; позволяют вам сбросить эти значения до значений по умолчанию, вызвав метод &lt;code&gt;Border.ClearFormatting&lt;/code&gt;. Обратите внимание, что при сбросе свойств границы до значений по умолчанию граница становится невидимой. Класс &lt;code&gt;Shading&lt;/code&gt; содержит атрибуты затенения для элементов документа. Вы можете задать желаемую текстуру затенения и цвета, которые будут применяться к фону и переднему плану элемента.&lt;/p&gt;
&lt;p&gt;Текстура затенения задается значением перечисления &lt;code&gt;TextureIndex&lt;/code&gt;, которое позволяет применять различные узоры к объекту &lt;strong&gt;Shading&lt;/strong&gt;. Например, чтобы задать цвет фона для элемента документа, используйте значение &lt;code&gt;TextureIndex.TextureSolid&lt;/code&gt; и соответствующим образом задайте цвет затенения переднего плана. В приведенном ниже примере показано, как применить границы и затенение к абзацу.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-DocumentBuilderApplyBordersAndShadingToParagraph.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;привязка-к-сетке&#34;&gt;
    Привязка к сетке
  &lt;/h3&gt;
&lt;p&gt;Aspose.Words предоставляет два свойства &lt;code&gt;ParagraphFormat.SnapToGrid&lt;/code&gt; и &lt;code&gt;Font.SnapToGrid&lt;/code&gt; для получения и установки привязки свойств абзаца к сетке.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderSetFormatting-SetSnapToGrid.cpp&#34;&gt;&lt;/script&gt;




  &lt;h2 id=&#34;перемещение-курсора&#34;&gt;
    Перемещение курсора
  &lt;/h2&gt;



  &lt;h3 id=&#34;определение-текущего-положения-курсора&#34;&gt;
    Определение текущего положения курсора
  &lt;/h3&gt;
&lt;p&gt;Вы можете в любой момент узнать, где в данный момент находится курсор конструктора. Свойство &lt;code&gt;DocumentBuilder.CurrentNode&lt;/code&gt; возвращает узел, который в данный момент выбран в этом конструкторе. Узел является прямым дочерним элементом абзаца. Любые операции вставки, которые вы выполняете с помощью &lt;code&gt;DocumentBuilder&lt;/code&gt;, будут вставлены перед &lt;code&gt;DocumentBuilder.CurrentNode&lt;/code&gt;. Если текущий абзац пуст или курсор установлен непосредственно перед концом абзаца, &lt;code&gt;DocumentBuilder.CurrentNode&lt;/code&gt; возвращает значение null.&lt;/p&gt;
&lt;p&gt;Также вы можете использовать свойство &lt;code&gt;DocumentBuilder.CurrentParagraph&lt;/code&gt;, которое возвращает абзац, выбранный в данный момент в этом &lt;strong&gt;DocumentBuilder&lt;/strong&gt;. В приведенном ниже примере показано, как получить доступ к текущему узлу в конструкторе документов. Вы можете загрузить файл шаблона для этого примера отсюда.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderCursorPosition.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-любому-узлу-абзацам-и-их-дочерним-элементам&#34;&gt;
    Переход к любому узлу (абзацам и их дочерним элементам)
  &lt;/h3&gt;
&lt;p&gt;Если у вас есть узел объекта документа, который является абзацем или прямым дочерним элементом абзаца, вы можете навести курсор конструктора на этот узел. Для этого используйте метод &lt;code&gt;DocumentBuilder.MoveTo&lt;/code&gt;. В приведенном ниже примере показано, как переместить курсор на указанный узел. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToNode.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-началуконцу-документа&#34;&gt;
    Переход к началу/концу документа
  &lt;/h3&gt;
&lt;p&gt;Если вам нужно перейти к началу документа, вызовите &lt;code&gt;DocumentBuilder.MoveToDocumentStart&lt;/code&gt;. Если вам нужно перейти к концу документа, вызовите &lt;code&gt;DocumentBuilder.MoveToDocumentEnd&lt;/code&gt;. В приведенном ниже примере показано, как переместить курсор в начало или конец документа. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToDocumentStartEnd.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-разделу&#34;&gt;
    Переход к разделу
  &lt;/h3&gt;
&lt;p&gt;Если вы работаете с документом, содержащим несколько разделов, вы можете перейти к нужному разделу с помощью &lt;code&gt;DocumentBuilder.MoveToSection&lt;/code&gt;. Этот метод перемещает курсор в начало указанного раздела и принимает индекс нужного раздела. Если индекс раздела больше или равен 0, то задается индекс от начала документа, где 0 - первый раздел. Если индекс раздела меньше 0, то задается индекс от конца документа, где -1 - последний раздел. В приведенном ниже примере показано, как переместить курсор в указанную секцию. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToSection.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-верхнемунижнему-колонтитулу&#34;&gt;
    Переход к верхнему/нижнему колонтитулу
  &lt;/h3&gt;
&lt;p&gt;Когда вам нужно поместить какие-либо данные в верхний или нижний колонтитул, вы должны сначала переместиться туда, используя &lt;code&gt;DocumentBuilder.MoveToHeaderFooter&lt;/code&gt;. Метод принимает значение перечисления HeaderFooterType, которое определяет тип верхнего или нижнего колонтитула, куда следует переместить курсор. Если вы хотите создать верхние и нижние колонтитулы, отличающиеся для первой страницы, вам нужно установить для свойства &lt;code&gt;PageSetup.DifferentFirstPageHeaderFooter&lt;/code&gt; значение &lt;strong&gt;true&lt;/strong&gt;. Если вы хотите создать верхние и нижние колонтитулы, отличающиеся для четных и нечетных страниц, вам нужно установить для параметра &lt;code&gt;PageSetup.OddAndEvenPagesHeaderFooter&lt;/code&gt; значение &lt;strong&gt;true&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Если вам нужно вернуться к основной истории, используйте &lt;strong&gt;DocumentBuilder.MoveToSection&lt;/strong&gt;, чтобы перейти от верхнего или нижнего колонтитула. В приведенном ниже примере создаются верхние и нижние колонтитулы в документе с помощью DocumentBuilder.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderHeadersAndFooters.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-абзацу&#34;&gt;
    Переход к абзацу
  &lt;/h3&gt;
&lt;p&gt;Используйте &lt;code&gt;DocumentBuilder.MoveToParagraph&lt;/code&gt;, чтобы переместить курсор на нужный абзац в текущем разделе. Вы должны передать этому методу два параметра: paragraphIndex (индекс абзаца, к которому нужно перейти) и characterIndex (индекс символа внутри абзаца).&lt;/p&gt;
&lt;p&gt;Навигация осуществляется внутри текущей истории текущего раздела. То есть, если вы переместили курсор на основной заголовок первого раздела, то paragraphIndex указывает индекс абзаца внутри этого заголовка этого раздела.&lt;/p&gt;
&lt;p&gt;Если значение paragraphIndex больше или равно 0, то указывается индекс от начала раздела, где 0 - первый абзац. Если значение paragraphIndex меньше 0, то указывается индекс от конца раздела, где -1 - последний абзац.&lt;/p&gt;
&lt;p&gt;В настоящее время индекс символа может быть указан только как 0 для перехода к началу абзаца или -1 для перехода к концу абзаца. В приведенном ниже примере показано, как переместить курсор в указанное положение абзаца. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToParagraph.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-ячейке-таблицы&#34;&gt;
    Переход к ячейке таблицы
  &lt;/h3&gt;
&lt;p&gt;Используйте &lt;code&gt;DocumentBuilder.MoveToCell&lt;/code&gt;, если вам нужно переместить курсор в ячейку таблицы в текущем разделе. Этот метод принимает четыре параметра:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;tableIndex - индекс таблицы, к которой нужно перейти.&lt;/li&gt;
&lt;li&gt;RowIndex - индекс строки в таблице.&lt;/li&gt;
&lt;li&gt;ColumnIndex - индекс столбца в таблице.&lt;/li&gt;
&lt;li&gt;characterIndex - индекс символа внутри ячейки.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Навигация выполняется внутри текущей истории текущего раздела. Для параметров индекса, когда значение индекса больше или равно 0, задается индекс с самого начала, где 0 является первым элементом. Когда индекс меньше 0, он указывает индекс с конца, где -1 является последним элементом.&lt;/p&gt;
&lt;p&gt;Также обратите внимание, что characterIndex в настоящее время может указывать только 0 для перемещения в начало ячейки или -1 для перемещения в конец ячейки. В приведенном ниже примере показано, как переместить курсор в указанную ячейку таблицы. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToTableCell.cpp&#34;&gt;&lt;/script&gt;




  &lt;h3 id=&#34;переход-к-закладке&#34;&gt;
    Переход к закладке
  &lt;/h3&gt;
&lt;p&gt;Закладки часто используются для обозначения определенных мест в документе, куда необходимо вставить новые элементы. Чтобы перейти к закладке, используйте &lt;code&gt;DocumentBuilder.MoveToBookmark&lt;/code&gt;. Этот метод имеет две перегрузки. Самый простой из них не принимает ничего, кроме названия закладки, на которую нужно переместить курсор. В приведенном ниже примере показано, как переместить курсор на закладку. Вы можете скачать файл шаблона для этого примера здесь.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToBookmark.cpp&#34;&gt;&lt;/script&gt;

&lt;p&gt;Эта перегрузка перемещает курсор в положение сразу после начала закладки с указанным именем. Другая перегрузка &lt;code&gt;DocumentBuilder.MoveToBookmark&lt;/code&gt; перемещает курсор на закладку с большей точностью. Она принимает два дополнительных логических параметра:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;isStart определяет, следует ли переместить курсор в начало или в конец закладки.&lt;/li&gt;
&lt;li&gt;isAfter определяет, следует ли переместить курсор в начальную или конечную позицию закладки или переместить курсор в начальную или конечную позицию закладки.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;В приведенном ниже примере показано, как переместить курсор сразу после окончания закладки.&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-Document-DocumentBuilderMovingCursor-DocumentBuilderMoveToBookmarkEnd.cpp&#34;&gt;&lt;/script&gt;

&lt;p&gt;Сравнение для обоих методов не чувствительно к регистру.&lt;/p&gt;
&lt;p&gt;Вставка нового текста таким образом не заменяет существующий текст закладки. Обратите внимание, что некоторые закладки в документе назначены полям формы. При переходе к такой закладке и вставке текста в нее текст вставляется в код поля формы. Хотя это не приведет к аннулированию поля формы, вставленный текст не будет виден, поскольку он становится частью кода поля.&lt;/p&gt;



  &lt;h2 id=&#34;как-произвести-преобразование-между-единицами-измерения&#34;&gt;
    Как произвести преобразование между единицами измерения
  &lt;/h2&gt;
&lt;p&gt;Большинство свойств объекта, предоставляемых в API Aspose.Words, которые представляют некоторые измерения (ширину/высоту, поля и различные расстояния), принимают значения в пунктах (1 дюйм равен 72 точкам). Иногда это неудобно, поэтому существует класс &lt;code&gt;ConvertUtil&lt;/code&gt;, который предоставляет вспомогательные функции для преобразования между различными единицами измерения. Он позволяет преобразовывать дюймы в точки, точки в дюймы, пиксели в точки и точки в пиксели. Когда пиксели преобразуются в точки и наоборот, это может быть выполнено с разрешением 96 точек на дюйм (dpi) или с указанным разрешением dpi.
&lt;strong&gt;Преобразующий&lt;/strong&gt;&lt;/p&gt;
&lt;script type=&#34;application/javascript&#34; src=&#34;https://gist.github.com/aspose-com-gists/518f03cac02abb105e02f55edb7de9f9.js?file=cpp-Programming-Documents-ConvertUtil-UtilityClasses-ConvertBetweenMeasurementUnits.cpp&#34;&gt;&lt;/script&gt;


      </description>
    </item>
    
  </channel>
</rss>
