Documenten invoegen en toevoegen
Soms is het nodig om meerdere documenten te combineren in een. U kunt dit handmatig of u kunt gebruiken Aspose.Words functie invoegen of toevoegen.
Met de invoegoperatie kunt u de inhoud van eerder aangemaakte documenten in een nieuwe of bestaande invoegen.
Dankzij de functie toevoegen kunt u een document alleen aan het einde van een ander document toevoegen.
Dit artikel legt uit hoe je een document op verschillende manieren invoegt of toevoegt aan een ander en beschrijft de gemeenschappelijke eigenschappen die je kunt toepassen tijdens het invoegen of toevoegen van documenten.
Document invoegen
Zoals hierboven vermeld, in Aspose.Words een document wordt weergegeven als een boom van knooppunten, en de werking van het invoegen van een document in een ander document is het kopiëren van knooppunten van de eerste documentboom naar de tweede.
U kunt documenten op verschillende locaties op verschillende manieren invoegen. U kunt bijvoorbeeld een document invoegen via een vervangende bewerking, een merge-veld tijdens een merge-operatie of via een bladwijzer.
U kunt ook de InsertDocument of de InsertDocumentInline methode, die lijkt op het invoegen van een document in Microsoft Word, om een heel document in te voegen op de huidige cursorpositie zonder eerdere import.
Het volgende voorbeeld van code laat zien hoe een document met behulp van de InsertDocument methode:
Het volgende voorbeeld van code laat zien hoe een document met behulp van de InsertDocumentInline methode:
De volgende subsecties beschrijven de opties gedurende welke u het ene document in een ander kunt invoegen.
Een document invoegen tijdens het zoeken en vervangen
U kunt documenten invoegen tijdens het uitvoeren van zoeken en vervangen operaties. Een document kan bijvoorbeeld paragrafen bevatten met de tekst [INTRODUCTIE] en [CONCLUSIE]. Maar in het uiteindelijke document moet je die paragrafen vervangen door de inhoud die uit een ander extern document is verkregen. Om dat te bereiken, moet u een begeleider voor de vervanging evenement.
Het volgende voorbeeld van code laat zien hoe je een handler kunt maken voor de vervangende gebeurtenis om het later in het invoegproces te gebruiken:
Het volgende voorbeeld van code laat zien hoe inhoud van een document in een ander document wordt ingevoegd tijdens een zoek- en vervangoperatie:
Een document invoegen tijdens Mail Merge Werking
U kunt een document invoegen in een merge veld tijdens een mail merge operatie. Bijvoorbeeld a mail merge template kan een merge-veld bevatten zoals [Samenvatting]. Maar in het uiteindelijke document moet je content uit een ander extern document invoegen in dit merge veld. Om dat te bereiken, moet u een begeleider voor de merge event.
Het volgende voorbeeld van code laat zien hoe je een handler aanmaakt voor de fuserende gebeurtenis om het later in het invoegproces te gebruiken:
Het volgende voorbeeld van code laat zien hoe je een document in het merge veld plaatst met behulp van de aangemaakte handler:
Een document invoegen bij bladwijzer
U kunt een tekstbestand importeren in een document en het direct invoegen na een bladwijzer die u in het document hebt gedefinieerd. Om dit te doen, maak een paragraaf met bladwijzers waar u wilt dat het document wordt ingevoegd.
Het volgende coderingsvoorbeeld laat zien hoe je de inhoud van het ene document in een bladwijzer in een ander document invoegt:
Een document toevoegen
U kunt een use case hebben waar u extra pagina’s moet opnemen van een document tot het einde van een bestaand document. Om dit te doen, moet je gewoon de AppendDocument methode om een document aan het einde van een ander document toe te voegen.
Het volgende voorbeeld van code laat zien hoe je een document toevoegt aan het einde van een ander document:
Knoppen handmatig importeren en invoegen
Aspose.Words Hiermee kunt u documenten automatisch invoegen en toevoegen zonder eerdere importvereisten. Als u echter een specifieke knoop van uw document wilt invoegen of toevoegen, zoals een sectie of een paragraaf, dan moet u eerst deze knoop handmatig importeren.
Wanneer u een sectie of paragraaf moet invoegen of toevoegen aan een andere, moet u in wezen de knooppunten van de eerste document node boom importeren in de tweede met behulp van de ImportNode methode. Na het importeren van uw nodes, moet u de InsertAfter methode om een nieuwe knoop in te voegen na/voor het referentieknooppunt. Hiermee kunt u het invoegproces aanpassen door knooppunten uit een document te importeren en het op bepaalde posities in te voegen.
U kunt ook de AppendChild methode om een nieuw gespecificeerd knooppunt toe te voegen aan het einde van de lijst van kindknooppunten, bijvoorbeeld als u inhoud wilt toevoegen op paragraafniveau in plaats van op sectieniveau.
Het volgende voorbeeld van code laat zien hoe u handmatig knooppunten importeert en ze invoegt na een specifieke knooppunt met behulp van de InsertAfter methode:
Inhoud wordt per sectie in het document van bestemming geïmporteerd, wat betekent dat instellingen, zoals pagina-instellingen en headers of voetteksten, tijdens import behouden blijven. Het is ook handig om op te merken dat u formatteringsinstellingen kunt definiëren wanneer u een document invoegt of toevoegt om aan te geven hoe twee documenten worden samengevoegd.
Gemeenschappelijke eigenschappen voor invoegen en toevoegen van documenten
Beide InsertDocument en AppendDocument methoden accepteren ImportFormatMode en ImportFormatOptions als inputparameters. De ImportFormatMode kunt u controleren hoe documentopmaak wordt samengevoegd wanneer u inhoud importeren van het ene document in het andere door het selecteren van verschillende indelingsmodi zoals UseDestinationStyles, KeepSourceFormatting, en KeepDifferentStyles. De ImportFormatOptions stelt u in staat verschillende importopties te selecteren, zoals IgnoreHeaderFooter, IgnoreTextBoxes, KeepSourceNumbering, MergePastedLists, en SmartStyleBehavior.
Aspose.Words stelt u in staat om de visualisatie van een resulterend document aan te passen wanneer twee documenten samen worden toegevoegd in een invoeg- of voegbewerking door gebruik te maken van de Section en PageSetup eigenschappen. De PageSetup eigenschap bevat alle eigenschappen van een sectie zoals SectionStart, RestartPageNumbering, PageStartingNumber, Orientation, en anderen. De meest voorkomende use case is om de SectionStart eigenschap om te bepalen of de toegevoegde inhoud op dezelfde pagina zal verschijnen of in een nieuwe zal splitsen.
Het volgende voorbeeld van code laat zien hoe het ene document aan het andere kan worden toegevoegd, terwijl de inhoud niet over twee pagina’s kan worden gesplitst: