Skip to content

Target .NET Standard 2.0 / .NET 8 / .NET 10 #222

Description

@eXpl0it3r

Newer .NET versions provide a lot of performance and general language improvements.

We should be able to retain .NET Framework compatibility by continuing to support .NET Standard 2.0 for the Core library.
For WPF and WinForms the compatibility needs to be broken in order to support the newer .NET versions (afaik).

But to benefit from all the improvements one should multi-target those libraries that support the .NET Standard 2.0.

  • HtmlRenderer.Core: netstandard2.0 / net8.0
  • HtmlRenderer.PdfSharp: netstandard2.0 / net8.0
  • HtmlRenderer.WinForms: net8.0-windows
  • HtmlRenderer.WPF: net8.0-windows
  • HtmlRenderer.Mono: Deprecated

Additional related updates

Activity

  1. pinned this issue on Dec 9, 2025
  2. linked a pull request that will close this issueSupport for .NET 6.0 & SkiaSharp Renderer #200on Dec 10, 2025
  3. linked a pull request that will close this issueNet 8 Migration #212on Dec 10, 2025
  4. linked a pull request that will close this issueAdded basic .net 5 support #188on Dec 10, 2025
  5. eXpl0it3r commented on Dec 22, 2025

    @eXpl0it3r
    CollaboratorAuthor

    Implemented with #234

  6. unpinned this issue on Jul 19, 2026
  7. LarsKloseLke commented on Jul 20, 2026

    @LarsKloseLke

    I expected that after the merge of #234 the nuget packages would also only list net8.0/netstandard2.0 as dependency but they still require netfx 4.6.2 - am I missing something?

  8. eXpl0it3r commented on Jul 20, 2026

    @eXpl0it3r
    CollaboratorAuthor

    That's correct, but I haven't gotten around to publishing new NuGet packages since the merge.

    The goal is also to update to the latest PDFSharp version as to actually stay true to the .NET Standard 2.0 / .NET 8 promise.

    See also the Roadmap #219 and PDFSharp update issue #221

  9. LarsKloseLke commented on Jul 29, 2026

    @LarsKloseLke

    @eXpl0it3r I noticed the 1.6.0 release (congrats!), but was stumped a bit at the same time: do you intentionally target .NET 8 only? I was hoping for a multi-targeting package that also still continues to support .NET 4.x as I am stuck to support that. Would this be feasible given the changes that were necessary for .NET 8? Or would you rather recommend to stay on 1.5.2 for .NET Framework, thus referencing different package versions per target?

  10. eXpl0it3r commented on Jul 29, 2026

    @eXpl0it3r
    CollaboratorAuthor

    @LarsKloseLke We're multi-targeting .NET 8 and .NET Standard 2.0 which is compatible with .NET Framework 4.x. As such you should have no trouble to use the new NuGet package in both a .NET 8/9/10 and .NET Framework project.

    Or are you referring to the WinForms / WPF variants?

    Image
  11. LarsKloseLke commented on Jul 29, 2026

    @LarsKloseLke

    @eXpl0it3r I'm sorry - I was referring to HtmlRenderer.Wpf

  12. eXpl0it3r commented on Jul 29, 2026

    @eXpl0it3r
    CollaboratorAuthor

    Ah, I didn't really think about this before. We can't target WPF and WinForms for netstandard2.0, but we can just multi-target for .NET 8 and .NET Framework 4.6.2. I'll prepare a release for 1.6.1 which includes this.

    Regardless, I still highly recommend to update to .NET 8 any beyond 😄

  13. eXpl0it3r commented on Jul 29, 2026

    @eXpl0it3r
    CollaboratorAuthor

    @LarsKloseLke Hot from the press 😄

    Hope this works, as I didn't test the actual compatibility, as such let me know!

    Image
  14. LarsKloseLke commented on Jul 29, 2026

    @LarsKloseLke

    Thanks for the quick response - very much appreciated! Just tried it out and the WPF HtmlPanel from 1.6.1 works just fine as expected under net48 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions