Вмъкване и добавяне на документи
Понякога е необходимо да се комбинират няколко документа в един. Можете да направите това ръчно или можете да използвате Aspose.Words вмъкване или добавяне на функция.
Операцията Вмъкване ви позволява да вмъкнете съдържанието на предварително създадени документи В нов или съществуващ.
На свой ред функцията за добавяне ви позволява да добавите документ само в края на друг документ.
Тази статия обяснява как да вмъквате или добавяте документ към друг документ по различни начини и описва общите свойства, които можете да приложите, докато вмъквате или добавяте документи.
Вмъкване на документ
Както бе споменато по-горе, в Aspose.Words документ е представен като дърво от възли, а операцията по вмъкване на един документ в друг е копиране на възли от първото дърво на документа във второто.
Можете да вмъквате документи в различни местоположения по различни начини. Например можете да вмъкнете документ чрез операция за заместване, поле за обединяване по време на операция за обединяване или чрез отметка.
Можете също да използвате метода InsertDocument, който е подобен на вмъкване на документ в Microsoft Word, За да вмъкнете цял документ в текущата позиция на курсора без предишно импортиране.
Следващият пример за код показва как да вмъкнете документ, като използвате метода InsertDocument
:
Следващите подраздели описват опциите, по време на които можете да вмъкнете един документ в друг.
Вмъкване на документ по време на операция търсене и замяна
Можете да вмъквате документи, докато извършвате операции за търсене и заместване. Например един документ може да съдържа параграфи с текст [INTRODUCTION] и [CONCLUSION]. Но в окончателния документ трябва да замените тези абзаци със съдържанието, получено от друг външен документ. За да постигнете това, ще трябва да създадете манипулатор за заместващото събитие.
Следващият пример за код показва как да създадете манипулатор за заместващото събитие, за да го използвате по-късно в процеса на вмъкване:
Следният пример за код показва как вмъкване на съдържание от един документ в друг по време на операция търсене и заместване:
Вмъкване на документ по време на операция Mail Merge
Можете да вмъкнете документ в поле за обединяване по време на операция Mail Merge. Например шаблон Mail Merge може да съдържа поле за обединяване, като например [резюме]. Но в окончателния документ трябва да вмъкнете съдържание, получено от друг външен документ в това поле на циркулярен документ. За да постигнете това, ще трябва да създадете манипулатор за събитието на сливането.
Следващият пример за код показва как да създадете манипулатор за събитието на обединяване, за да го използвате по-късно в процеса на вмъкване:
Следващият пример за код показва как да вмъкнете документ в полето за обединяване с помощта на създадения манипулатор:
Вмъкване на документ в Отметка
Можете да импортирате текстов файл в документ и да го вмъкнете веднага след отметка, която сте дефинирали в документа. За да направите това, създайте маркиран абзац, в който искате да бъде вмъкнат документът.
Следващият пример за кодиране показва как да вмъкнете съдържанието на един документ в отметка в друг документ:
Добавяне на документ
Може да имате случай на използване, в който трябва да включите допълнителни страници от документ до края на съществуващ документ. За да направите това, просто трябва да извикате метода AppendDocument, за да добавите документ в края на друг.
Следният пример за код показва как да добавите документ към края на друг документ:
Импортиране и вмъкване на възли ръчно
Aspose.Words Позволява ви да вмъквате и добавяте документи автоматично без никакви предишни изисквания за импортиране. Ако обаче трябва да вмъкнете или добавите конкретен възел на вашия документ, като например раздел или абзац, първо трябва да импортирате този възел ръчно.
Когато трябва да вмъкнете или добавите един раздел или абзац към друг, по същество трябва да импортирате възлите от дървото с възли на първия документ във второто, като използвате метода ImportNode. След импортиране на вашите възли, трябва да използвате метода InsertAfter / InsertBefore, за да вмъкнете нов възел след/преди референтния възел. Това ви позволява да персонализирате процеса на вмъкване, като импортирате възли от документ и го вмъквате на определени позиции.
Можете също да използвате метода AppendChild, за да добавите нов зададен възел в края на списъка на дъщерни възли, например ако искате да добавите съдържание на ниво абзац, вместо на ниво секция.
Следващият пример за код показва как ръчно да импортирате възли и да ги вмъквате след конкретен възел, като използвате метода InsertAfter:
Съдържанието се импортира в раздела местоназначение документ по раздел, което означава, че настройките, като например настройка на страници и горни или долни колонтитули, се запазват по време на импортирането. Също така е полезно да се отбележи, че можете да дефинирате настройки за форматиране, когато вмъквате или добавяте документ, за да зададете как да се свържат два документа.
Общи свойства за вмъкване и добавяне на документи
InsertDocument и AppendDocument методите приемат ImportFormatMode и ImportFormatOptions като входни параметри. ImportFormatMode ви позволява да контролирате как се обединява форматирането на документи, когато импортирате съдържание от един документ в друг, като изберете различни режими на форматиране, като например UseDestinationStyles, KeepSourceFormatting и KeepDifferentStyles. ImportFormatOptions ви позволява да изберете различни опции за импортиране, като напримерIgnoreHeaderFooter, IgnoreTextBoxes, KeepSourceNumbering, MergePastedLists, и SmartStyleBehavior.
Aspose.Words Позволява ви да регулирате визуализацията на получения документ, когато два документа се добавят заедно в операция вмъкване или Добавяне, като използвате свойствата Section и PageSetup. PageSetup собственост съдържа всички атрибути на раздел като SectionStart, RestartPageNumbering, PageStartingNumber, Orientation, и други. Най-често използваният случай е да зададете свойството SectionStart, за да определите дали добавеното съдържание ще се показва на същата страница или ще се раздели на нова.
Следващият пример за код показва как да добавите един документ към друг, като същевременно не разделяте съдържанието на две страници: