HTML-Renderer icon indicating copy to clipboard operation
HTML-Renderer copied to clipboard

Scrolling too heavy on huge HTML even the HTML is simple

Open Mizutama opened this issue 8 years ago • 0 comments

I made a test HTML from http://www.gutenberg.org/files/1661/1661-h/1661-h.htm using SGMLReader as I suggested on issue 90.

When I clicked down button on the vertical scroll bar , scrolling took couple seconds. After I displayed the bottom of the HTML , I clicked up button , scrolling didn't take so much time.

Now I'm avoiding this trouble; `htmlrenderer\core\htmlcontainerint.cs

   /// <summary>
    /// Render the html using the given device.
    /// </summary>
    /// <param name="g">the device to use to render</param>
    public void PerformPaint(RGraphics g)
    {
        ArgChecker.AssertArgNotNull(g, "g");

        bool pushed = false;
        if ( MaxSize.Height > 0 )
        {
            g.PushClip( new RRect( _location.X , _location.Y , Math.Min( _maxSize.Width , PageSize.Width ) , Math.Min( _maxSize.Height , PageSize.Height ) ) );
            pushed = true;
        }
        else
        {
            //g.PushClip( new RRect( MarginLeft , MarginTop , PageSize.Width , PageSize.Height ) );
            //pushed = true;
        }

        if ( _root != null)
        {
            _root.Paint(g);
        }

        if ( pushed )
        {
            g.PopClip();
        }
    }

`

Mizutama avatar Jul 26 '17 03:07 Mizutama