﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class Highlighter
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class Highlighter
   | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../../index.html">
                <img id="logo" class="svg" src="../../logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Search.Highlight.Highlighter">
  
  
  <h1 id="Lucene_Net_Search_Highlight_Highlighter" data-uid="Lucene.Net.Search.Highlight.Highlighter" class="text-break">Class Highlighter
  </h1>
  <div class="markdown level0 summary"><p>Class used to markup highlighted terms found in the best sections of a
text, using configurable <a class="xref" href="Lucene.Net.Search.Highlight.IFragmenter.html">IFragmenter</a>, <a class="xref" href="../Lucene.Net/Lucene.Net.Search.Scorer.html">Scorer</a>, <a class="xref" href="Lucene.Net.Search.Highlight.IFormatter.html">IFormatter</a>,
<a class="xref" href="Lucene.Net.Search.Highlight.IEncoder.html">IEncoder</a> and tokenizers.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><span class="xref">Highlighter</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Search.Highlight.html">Lucene.Net.Search.Highlight</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Highlighter.dll</h6>
  <h5 id="Lucene_Net_Search_Highlight_Highlighter_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class Highlighter</code></pre>
  </div>
  <h3 id="constructors">Constructors
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IFormatter_Lucene_Net_Search_Highlight_IEncoder_Lucene_Net_Search_Highlight_IScorer_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.%23ctor(Lucene.Net.Search.Highlight.IFormatter%2CLucene.Net.Search.Highlight.IEncoder%2CLucene.Net.Search.Highlight.IScorer)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L53">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter__ctor_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IFormatter_Lucene_Net_Search_Highlight_IEncoder_Lucene_Net_Search_Highlight_IScorer_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor(Lucene.Net.Search.Highlight.IFormatter,Lucene.Net.Search.Highlight.IEncoder,Lucene.Net.Search.Highlight.IScorer)">Highlighter(IFormatter, IEncoder, IScorer)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Highlighter(IFormatter formatter, IEncoder encoder, IScorer fragmentScorer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IFormatter.html">IFormatter</a></td>
        <td><span class="parametername">formatter</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IEncoder.html">IEncoder</a></td>
        <td><span class="parametername">encoder</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IScorer.html">IScorer</a></td>
        <td><span class="parametername">fragmentScorer</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IFormatter_Lucene_Net_Search_Highlight_IScorer_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.%23ctor(Lucene.Net.Search.Highlight.IFormatter%2CLucene.Net.Search.Highlight.IScorer)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L48">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter__ctor_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IFormatter_Lucene_Net_Search_Highlight_IScorer_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor(Lucene.Net.Search.Highlight.IFormatter,Lucene.Net.Search.Highlight.IScorer)">Highlighter(IFormatter, IScorer)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Highlighter(IFormatter formatter, IScorer fragmentScorer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IFormatter.html">IFormatter</a></td>
        <td><span class="parametername">formatter</span></td>
        <td></td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IScorer.html">IScorer</a></td>
        <td><span class="parametername">fragmentScorer</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IScorer_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.%23ctor(Lucene.Net.Search.Highlight.IScorer)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L43">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter__ctor_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter__ctor_Lucene_Net_Search_Highlight_IScorer_" data-uid="Lucene.Net.Search.Highlight.Highlighter.#ctor(Lucene.Net.Search.Highlight.IScorer)">Highlighter(IScorer)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public Highlighter(IScorer fragmentScorer)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IScorer.html">IScorer</a></td>
        <td><span class="parametername">fragmentScorer</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_DEFAULT_MAX_CHARS_TO_ANALYZE.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.DEFAULT_MAX_CHARS_TO_ANALYZE%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L35">View Source</a>
  </span>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_DEFAULT_MAX_CHARS_TO_ANALYZE" data-uid="Lucene.Net.Search.Highlight.Highlighter.DEFAULT_MAX_CHARS_TO_ANALYZE">DEFAULT_MAX_CHARS_TO_ANALYZE</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static readonly int DEFAULT_MAX_CHARS_TO_ANALYZE</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_Encoder.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.Encoder%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L455">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_Encoder_" data-uid="Lucene.Net.Search.Highlight.Highlighter.Encoder*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_Encoder" data-uid="Lucene.Net.Search.Highlight.Highlighter.Encoder">Encoder</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual IEncoder Encoder { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IEncoder.html">IEncoder</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_FragmentScorer.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.FragmentScorer%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L449">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_FragmentScorer_" data-uid="Lucene.Net.Search.Highlight.Highlighter.FragmentScorer*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_FragmentScorer" data-uid="Lucene.Net.Search.Highlight.Highlighter.FragmentScorer">FragmentScorer</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual IScorer FragmentScorer { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IScorer.html">IScorer</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_MaxDocCharsToAnalyze.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.MaxDocCharsToAnalyze%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L437">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_MaxDocCharsToAnalyze_" data-uid="Lucene.Net.Search.Highlight.Highlighter.MaxDocCharsToAnalyze*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_MaxDocCharsToAnalyze" data-uid="Lucene.Net.Search.Highlight.Highlighter.MaxDocCharsToAnalyze">MaxDocCharsToAnalyze</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual int MaxDocCharsToAnalyze { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_TextFragmenter.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.TextFragmenter%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L443">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_TextFragmenter_" data-uid="Lucene.Net.Search.Highlight.Highlighter.TextFragmenter*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_TextFragmenter" data-uid="Lucene.Net.Search.Highlight.Highlighter.TextFragmenter">TextFragmenter</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual IFragmenter TextFragmenter { get; set; }</code></pre>
  </div>
  <h5 class="propertyValue">Property Value</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.IFragmenter.html">IFragmenter</a></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_Lucene_Net_Analysis_Analyzer_System_String_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestFragment(Lucene.Net.Analysis.Analyzer%2CSystem.String%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L69">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragment*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_Lucene_Net_Analysis_Analyzer_System_String_System_String_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragment(Lucene.Net.Analysis.Analyzer,System.String,System.String)">GetBestFragment(Analyzer, String, String)</h4>
  <div class="markdown level1 summary"><p>Highlights chosen terms in a text, extracting the most relevant section.
This is a convenience method that calls <a class="xref" href="Lucene.Net.Search.Highlight.Highlighter.html#Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_Lucene_Net_Analysis_TokenStream_System_String_">GetBestFragment(TokenStream, String)</a></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string GetBestFragment(Analyzer analyzer, string fieldName, string text)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html">Analyzer</a></td>
        <td><span class="parametername">analyzer</span></td>
        <td><p>the analyzer that will be used to split <code data-dev-comment-type="paramref" class="paramref">text</code> into chunks</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">fieldName</span></td>
        <td><p>Name of field used to influence analyzer&apos;s tokenization policy</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td><p>text to highlight terms in</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><p>highlighted text fragment or null if no terms found</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_Lucene_Net_Analysis_TokenStream_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestFragment(Lucene.Net.Analysis.TokenStream%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L91">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragment*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragment_Lucene_Net_Analysis_TokenStream_System_String_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragment(Lucene.Net.Analysis.TokenStream,System.String)">GetBestFragment(TokenStream, String)</h4>
  <div class="markdown level1 summary"><p>Highlights chosen terms in a text, extracting the most relevant section.
The document text is analysed in chunks to record hit statistics
across the document. After accumulating stats, the fragment with the highest score
is returned</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string GetBestFragment(TokenStream tokenStream, string text)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStream.html">TokenStream</a></td>
        <td><span class="parametername">tokenStream</span></td>
        <td><p>A stream of tokens identified in the text parameter, including offset information.
This is typically produced by an analyzer re-parsing a document&apos;s
text. Some work may be done on retrieving TokenStreams more efficiently
by adding support for storing original text position data in the Lucene
index but this support is not currently available (as of Lucene 1.4 rc2).</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td><p>text to highlight terms in</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><p>highlighted text fragment or null if no terms found</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_Analyzer_System_String_System_String_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.Analyzer%2CSystem.String%2CSystem.String%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L111">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_Analyzer_System_String_System_String_System_Int32_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.Analyzer,System.String,System.String,System.Int32)">GetBestFragments(Analyzer, String, String, Int32)</h4>
  <div class="markdown level1 summary"><p>Highlights chosen terms in a text, extracting the most relevant sections.
This is a convenience method that calls <a class="xref" href="Lucene.Net.Search.Highlight.Highlighter.html#Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Int32_">GetBestFragments(TokenStream, String, Int32)</a></p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string[] GetBestFragments(Analyzer analyzer, string fieldName, string text, int maxNumFragments)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html">Analyzer</a></td>
        <td><span class="parametername">analyzer</span></td>
        <td><p>the analyzer that will be used to split <code data-dev-comment-type="paramref" class="paramref">text</code> into chunks</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">fieldName</span></td>
        <td><p>the name of the field being highlighted (used by analyzer)</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td><p>text to highlight terms in</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">maxNumFragments</span></td>
        <td><p>the maximum number of fragments.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span>[]</td>
        <td><p>highlighted text fragments (between 0 and <code data-dev-comment-type="paramref" class="paramref">maxNumFragments</code> number of fragments)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.TokenStream%2CSystem.String%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L133">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Int32_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.TokenStream,System.String,System.Int32)">GetBestFragments(TokenStream, String, Int32)</h4>
  <div class="markdown level1 summary"><p>Highlights chosen terms in a text, extracting the most relevant sections.
The document text is analysed in chunks to record hit statistics
across the document. After accumulating stats, the fragments with the highest scores
are returned as an array of strings in order of score (contiguous fragments are merged into
one in their original order to improve readability)</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public string[] GetBestFragments(TokenStream tokenStream, string text, int maxNumFragments)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStream.html">TokenStream</a></td>
        <td><span class="parametername">tokenStream</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td><p>text to highlight terms in</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">maxNumFragments</span></td>
        <td><p>the maximum number of fragments.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span>[]</td>
        <td><p>highlighted text fragments (between 0 and <code data-dev-comment-type="paramref" class="paramref">maxNumFragments</code> number of fragments)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Int32_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.TokenStream%2CSystem.String%2CSystem.Int32%2CSystem.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L418">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Int32_System_String_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestFragments(Lucene.Net.Analysis.TokenStream,System.String,System.Int32,System.String)">GetBestFragments(TokenStream, String, Int32, String)</h4>
  <div class="markdown level1 summary"><p>Highlights terms in the <code data-dev-comment-type="paramref" class="paramref">text</code>, extracting the most relevant sections
and concatenating the chosen fragments with a separator (typically &quot;...&quot;).
The document text is analysed in chunks to record hit statistics
across the document. After accumulating stats, the fragments with the highest scores
are returned in order as &quot;separator&quot; delimited strings.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public virtual string GetBestFragments(TokenStream tokenStream, string text, int maxNumFragments, string separator)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStream.html">TokenStream</a></td>
        <td><span class="parametername">tokenStream</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td><p>text to highlight terms in</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">maxNumFragments</span></td>
        <td><p>the maximum number of fragments.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">separator</span></td>
        <td><p>the separator used to intersperse the document fragments (typically &quot;...&quot;)</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><p>highlighted text</p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter_GetBestTextFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Boolean_System_Int32_.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter.GetBestTextFragments(Lucene.Net.Analysis.TokenStream%2CSystem.String%2CSystem.Boolean%2CSystem.Int32)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L158">View Source</a>
  </span>
  <a id="Lucene_Net_Search_Highlight_Highlighter_GetBestTextFragments_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestTextFragments*"></a>
  <h4 id="Lucene_Net_Search_Highlight_Highlighter_GetBestTextFragments_Lucene_Net_Analysis_TokenStream_System_String_System_Boolean_System_Int32_" data-uid="Lucene.Net.Search.Highlight.Highlighter.GetBestTextFragments(Lucene.Net.Analysis.TokenStream,System.String,System.Boolean,System.Int32)">GetBestTextFragments(TokenStream, String, Boolean, Int32)</h4>
  <div class="markdown level1 summary"><p>Low level api to get the most relevant (formatted) sections of the document.
This method has been made public to allow visibility of score information held in <a class="xref" href="Lucene.Net.Search.Highlight.TextFragment.html">TextFragment</a> objects.
Thanks to Jason Calabrese for help in redefining the interface.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public TextFragment[] GetBestTextFragments(TokenStream tokenStream, string text, bool mergeContiguousFragments, int maxNumFragments)</code></pre>
  </div>
  <h5 class="parameters">Parameters</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStream.html">TokenStream</a></td>
        <td><span class="parametername">tokenStream</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.String</span></td>
        <td><span class="parametername">text</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.Boolean</span></td>
        <td><span class="parametername">mergeContiguousFragments</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.Int32</span></td>
        <td><span class="parametername">maxNumFragments</span></td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="returns">Returns</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.TextFragment.html">TextFragment</a>[]</td>
        <td></td>
      </tr>
    </tbody>
  </table>
  <h5 class="exceptions">Exceptions</h5>
  <table class="table table-bordered table-striped table-condensed">
    <thead>
      <tr>
        <th>Type</th>
        <th>Condition</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td><span class="xref">System.IO.IOException</span></td>
        <td><p>If there is a low-level I/O error</p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Search.Highlight.InvalidTokenOffsetsException.html">InvalidTokenOffsetsException</a></td>
        <td><p>thrown if any token&apos;s EndOffset exceeds the provided text&apos;s length</p>
</td>
      </tr>
    </tbody>
  </table>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Search_Highlight_Highlighter.md&amp;value=---%0Auid%3A%20Lucene.Net.Search.Highlight.Highlighter%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Highlighter/Highlight/Highlighter.cs/#L33" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
