Вмъкване и добавяне на документи

Понякога е необходимо да се комбинират няколко документа в един. Можете да направите това ръчно или можете да използвате Aspose.Words вмъкване или добавяне на функция.

Операцията за вмъкване ви позволява да въведете съдържанието на предварително създадените документи в нов или съществуващ.

От своя страна, функцията за добавяне ви позволява да добавяте документ само в края на друг документ.

Тази статия обяснява как да вмъкнете или да добавите документ към друг по различни начини и описва общите свойства, които можете да приложите, докато въвеждате или добавяте документи.

Вмъкване на документ

Както бе споменато по- горе, в Aspose.Words документ е представен като дърво от възли, а действието на поставянето на един документ в друг е копиране на възли от първото дърво на документа до второто.

Можете да поставите документи в различни места по различни начини. Например, можете да вмъкнете документ чрез замяна операция, сливане поле по време на сливане операция, или чрез отметки.

Можете също така да използвате InsertDocument или InsertDocumentInline метод, който е подобен на въвеждането на документ в Microsoft Word, да вмъкне цял документ в текущата позиция на курсора без никакъв предишен внос.

Следният пример за код показва как да се въведе документ с помощта на InsertDocument метод:

Следният пример за код показва как да се въведе документ с помощта на InsertDocumentInline метод:

Следните подраздели описват опциите, по време на които можете да поставите един документ в друг.

Вмъкване на документ по време на операция за намиране и замяна

Можете да поставите документи при извършване на намиране и замяна на операции. Например документът може да съдържа параграфи с текста [INTRODUCTION] и [CONCLUSION]. Но в окончателния документ трябва да замените тези параграфи със съдържанието, получено от друг външен документ. За да постигнете това, ще трябва да създадете наставник за заместващото събитие.

Следният пример за код показва как да се създаде наставник за заместващото събитие да го използва по-късно в процеса на вмъкване:

Следният пример за код показва как се вмъква съдържанието на един документ в друг по време на операция за намиране и замяна:

Вмъкване на документ по време на Mail Merge Операция

Можете да поставите документ в сливане поле по време на mail merge операция. Например, mail merge шаблонът може да съдържа сливащо се поле като [Summary]. Но в последния документ трябва да вмъкнете съдържание, получено от друг външен документ в това поле за сливане. За да постигнете това, ще трябва да създадете отговорник за сливането.

Следният пример за код показва как да се създаде наставник за сливането събитие да го използва по-късно в процеса на вмъкване:

Следният пример за код показва как да се вмъкне документ в сливащото поле, като се използва създаденият свръзка:

Вмъкване на документ в отметките

Можете да импортирате текстов файл в документ и да го поставите веднага след отметките, които сте определили в документа. За да направите това, създайте отметки, където искате да бъде поставен документът.

Следният пример за кодиране показва как да се вмъкне съдържанието на един документ в отметки в друг документ:

Добавяне на документ

Може да имате случай на използване, в който трябва да включите допълнителни страници от документ до края на съществуващ документ. За да направите това, просто трябва да се обадите на AppendDocument метод за добавяне на документ към края на друг.

Следният пример с код показва как да се добави документ към края на друг документ:

Импортиране и вмъкване на възлите ръчно

Aspose.Words позволява автоматично въвеждане и добавяне на документи без никакви предишни изисквания за внос. Въпреки това, ако трябва да въведете или да добавите конкретен възел на вашия документ, като например раздел или параграф, тогава първо трябва да внесете този възел ръчно.

Когато трябва да вмъкнете или да добавите един раздел или параграф в друг, по същество трябва да внесете възлите на първото дърво документно възел във втория, като използвате ImportNode метод. След внос на възлите, трябва да използвате InsertAfter метод за поставяне на нов възел след/преди референтния възел. Това ви позволява да персонализирате процеса на вмъкване чрез внос на възли от документ и поставяне му на дадени позиции.

Можете също така да използвате 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 свойство за определяне дали добавеното съдържание ще се появи на същата страница или ще се раздели на нова.

Следният пример за код показва как да се добави един документ към друг, като същевременно съдържанието не се разделя на две страници: