/HtmlRenderer

C# HTML Layout and HTML Rendering Engine

Primary LanguageC#OtherNOASSERTION

Hello !

nearly acid1

pic 1: HtmlRenderer, Gdi+, see test file

seems promising ?, NEARLY pass ACID1 test :)


Work In Progrss ... : Cross Platform HtmlRenderer

gles2

pic 2: HtmlRenderer: OpenGLES2 BackEnd, Preview of Latest snapshot


The classic image. html_renderer_s01

pic 3: HtmlRenderer's Classic, Gdi+

MORE info / screen capture imgs -> see wiki

Build Note -> see wiki


I forked this project from https://github.com/ArthurHub/HTML-Renderer (thank you so much)

I added some features

such as

  1. dynamic html dom

  2. decoupling, dependency analysis

  3. optimizing the html,css parser. see: HtmlKit v1.0(https://github.com/jstedfast/HtmlKit)

  4. add svg/canvas support (not complete)

  5. abstract canvas backend (GDI+, OpenGL) also not complete for Linux (for the canvas backend, I used it from another project ->https://github.com/prepare/PixelFarm-dev)

  6. Javascript (v8) binding (https://github.com/prepare/Espresso)

  7. debug view

  8. more layout support eg. inline-block,relative, absolute ,fixed, flex etc

  9. added custom controls eg. text editer control, scrollbar, gridbox etc.

  10. some events (eg. mouse /keyboard events)

.. BUT not complete :(

feel free to fork/ comment/ suggest /pull request


Plan

  1. always permissive license (MIT,BSD, Apache2)

  2. bind some features from Blink engine

  3. add more html5/css3/js support

  4. convert to C++ code with some transpiler tools so users can build a final native code web browser

  5. to make this runs on .NetCore


Licenses

Source code from multiple projects.

I select ONLY PERMISSIVE ONE :)

Here...

Html Engine

BSD, 2009, José Manuel Menéndez Poo, Base HtmlRender code

BSD, 2013-2014, Arthur Teplitzki, from https://github.com/ArthurHub/HTML-Renderer

MIT, 2015, Jeffrey Stedfastm, from HtmlKit https://github.com/jstedfast/HtmlKit

Javascript Engine

MIT, 2013, Federico Di Gregorio, from https://github.com/Daniel15/vroomjs

MIT, 2015-2017, WinterDev, from https://github.com/prepare/Espresso

Geometry

BSD, 2002-2005, Maxim Shemanarev, from http://www.antigrain.com , Anti-Grain Geometry - Version 2.4,

BSD, 2007-2014, Lars Brubaker, agg-sharp, from https://github.com/MatterHackers/agg-sharp

ZLIB, 2015, burningmine, CurveUtils.

Boost, 2010-2014, Angus Johnson, Clipper.

BSD, 2009-2010, Poly2Tri Contributors, from https://github.com/PaintLab/poly2tri-cs

SGI, 2000, Eric Veach, Tesselate.

Font

Apache2, 2016-2017, WinterDev, from https://github.com/LayoutFarm/Typography

Apache2, 2014-2016, Samuel Carlsson, from https://github.com/vidstige/NRasterizer

MIT, 2015, Michael Popoloski MIT, from https://github.com/MikePopoloski/SharpFont

The FreeType Project LICENSE (3-clauses BSD style),2003-2016, David Turner, Robert Wilhelm, and Werner Lemberg and others, from https://www.freetype.org/

MIT, 2016, Viktor Chlumsky, from https://github.com/Chlumsky/msdfgen

Platforms

MIT, 2015-2015, Xamarin, Inc., from https://github.com/mono/SkiaSharp

MIT, 2006-2009, Stefanos Apostolopoulos and other Open Tool Kit Contributors, from https://github.com/opentk/opentk

MIT, 2013, Antonie Blom, from https://github.com/andykorth/Pencil.Gaming

MIT, 2004,2007, Novell Inc., for System.Drawing


Long Live Our Beloved C#

WinterDev :)