anchor.diff:          Height=300
       )
   
  +svgString.Substring(0,300)
  +|> printfn "%s"
  +
  +(***include-output***)
  +
  +(**
  +In fact, the images shown on this site are included just the same way.
  +
  +## Including static images in dotnet interactive notebooks
  +
  +To include the images in dotnet interactive, convert them to html tags as above and include them via 
  +dotnet interactive's `DisplayAs` function. The content type for PNG/JPB is "text/html", and "image/svg+xml" for SVG.
  +*)
  +
  +let base64PNG =
  +    exampleChart
  +    |> Chart.toBase64PNGString(
  +        Width=300,
  +        Height=300
  +    )
  +
  +let svgString2 =
  +    exampleChart
  +    |> Chart.toSVGString(
  +        Width=300,
  +        Height=300
  +    )
  +
  +// DisplayExtensions.DisplayAs(base64PNG,"text/html")
  +// DisplayExtensions.DisplayAs(svgString,"image/svg+xml")
  +
  +(*** condition: ipynb ***)
   #if IPYNB
  +DisplayExtensions.DisplayAs(base64PNG,"text/html")
   DisplayExtensions.DisplayAs(svgString,"image/svg+xml")
  -#endif // IPYNB
  -
  -svgString
  -(***include-it-raw***)+#endif // IPYNB
positive.code:     Height=300
  )
  
  #if IPYNB
  
  let imgString = $"""<img
      src= "{exampleChart|> Chart.toBase64JPGString(Width=300,Height=300)}"
  />"""
  
  DisplayExtensions.DisplayAs(imgString,"text/html")
  
  #endif // IPYNB
  
  (***hide***)
  $"""<img
      src= "{exampleChart|> Chart.toBase64JPGString(Width=300,Height=300)}"
  />"""
  
  (***include-it-raw***)
  
  (**
  
  *)
  
  let base64JPG =
      exampleChart
      |> Chart.toBase64PNGString(
          Width=300,
          Height=300
      )
  
  #if IPYNB
  
  let imgString = $"""<img
      src= "{base64JPG}"
  />"""
  
  DisplayExtensions.DisplayAs(imgString,"text/html")
  
  #endif // IPYNB
  
  $"""<img
      src= "{base64JPG}"
  />"""
  (***include-it-raw***)
  
  
  (** 
  *)
  
  let svgString =
  
negative.code: 
  # Static image export
  
  ### Table of contents
  
  - [Saving static images](#Saving-static-images)
  - [Generating URIs for static chart images](#Generating-URIs-for-static-chart-images)
  - [Including static images in dotnet interactive notebooks](#Including-static-images-in-dotnet-interactive-notebooks)
  
  As Plotly.NET generates static html pages that contain charts rendered by plotly.js, static image export needs a lot more overhead under the hood 
  than you might expect. The underlying renderer needs to execute javascript, leading to the usage of headless browsers.
  
  The package `Plotly.NET.ImageExport` contains extensions for Plotly.NET to render static images. It is designed with extensibility in mind and
  it is very easy to add a new rendering engine. The current engines are provided:
  
  | Rendering engine | Type | Prerequisites |
  |-|-|-|
  | [PuppeteerSharp](https://github.com/hardkoded/puppeteer-sharp) | headless browser | [read more here](https://github.com/hardkoded/puppeteer-sharp#prerequisites) |
  
  ## Saving static images
  
  By referencing the `Plotly.NET.ImageExport` package, you get access to:
  
   - jpg via `Chart.SaveJPG`
   - png via `Chart.SavePNG`
   - svg via `Chart.SaveSVG`
  
  (and Extensions for C# style fluent interfaces by opening the `GenericChartExtensions` namespace)
  
  The parameters for all three functions are exactly the same. 
  *)
  