<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>word document automation on Conholdate Blog</title>
    <link>https://blog-qa.conholdate.com/nl/tag/word-document-automation/</link>
    <description>Recent content in word document automation on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>nl</language>
    <lastBuildDate>Tue, 28 Jul 2026 21:31:55 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/nl/tag/word-document-automation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Inhoudsopgave toevoegen aan Word‑document in Java</title>
      <link>https://blog-qa.conholdate.com/nl/total/add-table-of-contents-to-word-document-in-java/</link>
      <pubDate>Tue, 28 Jul 2026 21:31:55 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/nl/total/add-table-of-contents-to-word-document-in-java/</guid>
      <description>Leer hoe u een inhoudsopgave toevoegt aan een Word‑document in Java met behulp van Conholdate.Total for Java. Stapsgewijze handleiding met volledige code, installatie en best practices.</description>
      <content:encoded><![CDATA[<p>Het genereren van een doorzoekbare inhoudsopgave is essentieel bij het maken van grote Word‑rapporten of handleidingen die gebruikers snel moeten kunnen doorbladeren. <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> biedt een robuuste SDK die het werken met <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a>‑bestanden rechtstreeks vanuit Java‑applicaties vereenvoudigt. In deze stapsgewijze handleiding leer je hoe je een inhoudsopgave toevoegt aan een Word‑document in Java, inclusief installatie, code‑uitleg en best practices.</p>
<h2 id="volledig-werkend-voorbeeld-voor-het-toevoegen-van-een-inhoudsopgave-aan-een-worddocument-in-java">Volledig werkend voorbeeld voor het toevoegen van een inhoudsopgave aan een Word‑document in Java</h2>
<p>Het volgende voorbeeld toont hoe u een inhoudsopgave kunt invoegen in een bestaand DOCX‑bestand met behulp van Conholdate.Total for Java.</p>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.words.Document<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.words.DocumentBuilder<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.words.TableOfContentsOptions<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.words.SaveFormat<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.words.TabLeader<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">AddTableOfContentsExample</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">public</span> <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">main</span><span style="color:#f92672">(</span>String<span style="color:#f92672">[]</span> args<span style="color:#f92672">)</span> <span style="color:#66d9ef">throws</span> Exception <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// Paths to the source and destination Word documents
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        String inputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.docx&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>        String outputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output.docx&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Load the existing document, add a TOC, and save the result
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">try</span> <span style="color:#f92672">(</span>Document doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            DocumentBuilder builder <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> DocumentBuilder<span style="color:#f92672">(</span>doc<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Move cursor to the beginning of the document where the TOC will be inserted
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            builder<span style="color:#f92672">.</span><span style="color:#a6e22e">moveToDocumentStart</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Configure TOC options
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            TableOfContentsOptions tocOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> TableOfContentsOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>            tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setUpperHeadingLevel</span><span style="color:#f92672">(</span>1<span style="color:#f92672">);</span>          <span style="color:#75715e">// Include headings from level 1
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setLowerHeadingLevel</span><span style="color:#f92672">(</span>3<span style="color:#f92672">);</span>          <span style="color:#75715e">// up to level 3
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setRightAlignPageNumbers</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>  <span style="color:#75715e">// Align page numbers to the right
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setUseHyperlinks</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>           <span style="color:#75715e">// Make entries clickable
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setTabLeader</span><span style="color:#f92672">(</span>TabLeader<span style="color:#f92672">.</span><span style="color:#a6e22e">DOTS</span><span style="color:#f92672">);</span>     <span style="color:#75715e">// Use dotted leader
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Insert the Table of Contents
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            builder<span style="color:#f92672">.</span><span style="color:#a6e22e">insertTableOfContents</span><span style="color:#f92672">(</span>tocOptions<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Save the modified document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            doc<span style="color:#f92672">.</span><span style="color:#a6e22e">save</span><span style="color:#f92672">(</span>outputPath<span style="color:#f92672">,</span> SaveFormat<span style="color:#f92672">.</span><span style="color:#a6e22e">DOCX</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<blockquote>
<p><strong>Opmerking:</strong> Dit codevoorbeeld toont de kernfunctionaliteit. Voordat u het in uw project gebruikt, moet u ervoor zorgen dat de bestandenpaden (<code>input.docx</code>, <code>output.docx</code>, enz.) worden aangepast aan uw werkelijke bestandslocaties, dat alle vereiste afhankelijkheden correct zijn geïnstalleerd, en dat u grondig test in uw ontwikkelomgeving. Als u problemen ondervindt, raadpleeg dan de <a href="https://docs.conholdate.com/java/">officiële documentatie</a> of neem contact op met het <a href="https://forum.conholdate.com/c/total/5">ondersteuningsteam</a> voor hulp.</p>
</blockquote>
<h2 id="inzicht-in-het-toevoegen-van-een-inhoudsopgave-aan-een-worddocument-in-javacode">Inzicht in het toevoegen van een inhoudsopgave aan een Word‑document in Java‑code</h2>
<p>Hieronder staat een overzicht van de belangrijkste stappen die door de voorbeeldcode worden uitgevoerd:</p>
<ol>
<li><strong>Laad het brondocument</strong> - De <code>Document</code>-klasse leest het bestaande DOCX‑bestand.</li>
</ol>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#66d9ef">try</span> <span style="color:#f92672">(</span>Document doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<ol start="2">
<li><strong>Maak een DocumentBuilder</strong> - <code>DocumentBuilder</code> biedt methoden om de documentinhoud te bewerken.</li>
</ol>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>DocumentBuilder builder <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> DocumentBuilder<span style="color:#f92672">(</span>doc<span style="color:#f92672">);</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<ol start="3">
<li><strong>Plaats de cursor</strong> - <code>moveToDocumentStart()</code> verplaatst het invoegpunt naar het allereerste begin van het bestand, waardoor de inhoudsopgave vóór alle inhoud verschijnt.</li>
</ol>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">moveToDocumentStart</span><span style="color:#f92672">();</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<ol start="4">
<li><strong>Configureer TOC-opties</strong> - <code>TableOfContentsOptions</code> stelt je in staat om kopniveaus, uitlijning van paginanummers, gebruik van hyperlinks en de tab‑leiderstijl te definiëren.</li>
</ol>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>TableOfContentsOptions tocOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> TableOfContentsOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setUpperHeadingLevel</span><span style="color:#f92672">(</span>1<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setLowerHeadingLevel</span><span style="color:#f92672">(</span>3<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setRightAlignPageNumbers</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setUseHyperlinks</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>tocOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setTabLeader</span><span style="color:#f92672">(</span>TabLeader<span style="color:#f92672">.</span><span style="color:#a6e22e">DOTS</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<p>Gedetailleerde API-referentie is beschikbaar op de <a href="https://reference.conholdate.com/java/">API-referentie</a> pagina.</p>
<ol start="5">
<li><strong>Voeg de inhoudsopgave in en sla op</strong> - <code>insertTableOfContents</code> voegt het veld toe, en <code>doc.save</code> schrijft het bijgewerkte bestand in DOCX-formaat.</li>
</ol>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">insertTableOfContents</span><span style="color:#f92672">(</span>tocOptions<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>doc<span style="color:#f92672">.</span><span style="color:#a6e22e">save</span><span style="color:#f92672">(</span>outputPath<span style="color:#f92672">,</span> SaveFormat<span style="color:#f92672">.</span><span style="color:#a6e22e">DOCX</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<h2 id="installeren-en-configureren-van-conholdatetotal-voor-java">Installeren en configureren van Conholdate.Total voor Java</h2>
<p>Voeg de Conholdate Maven-repository en de SDK-afhankelijkheid toe aan uw <code>pom.xml</code>:</p>
<!-- raw HTML omitted -->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#f92672">&lt;repositories&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;repository&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;id&gt;</span>conholdate-repo<span style="color:#f92672">&lt;/id&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;name&gt;</span>Conholdate Maven Repository<span style="color:#f92672">&lt;/name&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;url&gt;</span>https://repository.conholdate.com/repo/<span style="color:#f92672">&lt;/url&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;/repository&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/repositories&gt;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;dependency&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;groupId&gt;</span>com.conholdate<span style="color:#f92672">&lt;/groupId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;artifactId&gt;</span>conholdate-total<span style="color:#f92672">&lt;/artifactId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;version&gt;</span>24.9<span style="color:#f92672">&lt;/version&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;type&gt;</span>pom<span style="color:#f92672">&lt;/type&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/dependency&gt;</span>
</span></span></code></pre></div><!-- raw HTML omitted -->
<p>Download het nieuwste SDK‑pakket van de <a href="https://releases.conholdate.com/total/java/">downloadpagina</a>. De SDK vereist Java 8 of hoger en werkt op elke standaard JVM. Er zijn geen extra runtime‑componenten nodig.</p>
<h2 id="beste-praktijken-voor-het-genereren-van-een-word-inhoudsopgave-met-java">Beste praktijken voor het genereren van een Word-inhoudsopgave met Java</h2>
<ul>
<li><strong>Gebruik consistente kopstijlen</strong> – De TOC haalt alinea’s op die zijn opgemaakt met ingebouwde kopniveaus (Heading 1, Heading 2, enz.). Zorg ervoor dat uw brondocument deze stijlen gebruikt voor betrouwbare entry‑generatie.</li>
<li><strong>Beperk de diepte van koppen</strong> – Het opnemen van te veel niveaus kan de TOC onhandig maken. Typische rapporten gebruiken niveaus 1‑3, zoals in het voorbeeld wordt getoond.</li>
<li><strong>Schakel hyperlinks in</strong> – Het instellen van <code>setUseHyperlinks(true)</code> maakt klikbare items aan, waardoor de navigatie in het einddocument verbetert.</li>
<li><strong>Valideer na invoegen</strong> – Open het gegenereerde DOCX en werk de velden bij (Ctrl +A, F9) om te bevestigen dat paginanummers <a href="https://docs.fileformat.com/spreadsheet/numbers/">nummers</a> correct zijn, vooral na verdere bewerkingen.</li>
<li><strong>Hergebruik het TOC‑optiesobject</strong> – Als u meerdere documenten in één batch genereert, configureer de opties dan één keer en hergebruik ze om de overhead van objectcreatie te verminderen.</li>
</ul>
<h2 id="conclusie">Conclusie</h2>
<p>Het toevoegen van een inhoudsopgave aan een Word‑document in Java wordt eenvoudig met <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a>. Door een DOCX te laden, <code>TableOfContentsOptions</code> te configureren en het veld in te voegen, kun je de creatie van professionele rapporten en handleidingen automatiseren. Vergeet niet de SDK te installeren, de best‑practice‑aanbevelingen te volgen en de gegenereerde inhoudsopgave te testen in je doelomgeving. Voor productie‑implementaties heb je een gelicentieerde kopie nodig; prijsdetails zijn beschikbaar op de <a href="https://purchase.conholdate.com/pricing/total/family/">prijspagina</a> en een tijdelijke licentie kan worden verkregen via de <a href="https://purchase.conholdate.com/temporary-license/">tijdelijke licentiepagina</a>.</p>
<h2 id="veelgestelde-vragen">Veelgestelde vragen</h2>
<ul>
<li>
<p><strong>Wat is de eenvoudigste manier om een inhoudsopgave toe te voegen aan een Word‑document in Java?</strong><br>
Gebruik <code>DocumentBuilder.moveToDocumentStart()</code> gevolgd door <code>insertTableOfContents</code> met een geconfigureerd <code>TableOfContentsOptions</code>‑object, zoals gedemonstreerd in het codevoorbeeld.</p>
</li>
<li>
<p><strong>Hoe kan ik bepalen welke kopniveaus verschijnen in de inhoudsopgave?</strong><br>
Stel <code>setUpperHeadingLevel</code> en <code>setLowerHeadingLevel</code> in op de <code>TableOfContentsOptions</code>-instantie om alleen de gewenste niveaus op te nemen.</p>
</li>
<li>
<p><strong>Is het mogelijk om een TOC te genereren voor een Word‑sjabloon dat later wordt ingevuld?</strong><br>
Ja. Voeg de TOC toe aan het sjabloonbestand voordat u dynamische inhoud invoegt; de TOC zal automatisch verwijzen naar de later toegevoegde koppen.</p>
</li>
<li>
<p><strong>Heb ik een internetverbinding nodig om deze SDK te gebruiken?</strong><br>
Nee. Conholdate.Total for Java is een lokale bibliotheek die op uw server of desktop draait zonder externe serviceaanroepen.</p>
</li>
</ul>
<h2 id="lees-meer">Lees meer</h2>
<ul>
<li><a href="https://blog.conholdate.com/nl/total/add-shapes-to-pdf-in-java/">Vormen toevoegen aan PDF in Java</a></li>
<li><a href="https://blog.conholdate.com/nl/total/insert-table-of-contents-in-word-using-java/">Inhoudsopgave invoegen in Word met Java</a></li>
<li><a href="https://blog.conholdate.com/nl/total/add-a-table-of-contents-in-word-using-csharp/">Een inhoudsopgave toevoegen in Word met C#</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
