> In some cases, images get split over page boundaries.
> http://news.bbc.co.uk is probably a good test of this. 

Splitting images is no surprise, as this is still not treated as a 'wrong 
page-layout'. I thought that because images can be arbitrarily long(high), 
this was not a priority. Also, I concentrated mostly on fitting the width of 
a page's content. If there is any request for implementing it, I would like 
to work on it after completing gtk-printing support, which will most probably 
take me less time than I predicted in my proposal :)

> http://www.bbc.co.uk, it shows potential issues with forcing positioned
> boxes into static position. I've no sensible ideas here, mind you :)
I have analyzed what is done in other browsers, and it's mostly a similar 
idea. Just with changing styles (as removing some backgrounds) or stronger 
resizing (increases greatly the chance for the page to fit with the 
browser-layout).
Firefox 3 leaves absolute positioned elements as they are, just cropping them 
at page width, if they don't fit - although I think this solution is less 
elegant.

> > Let me know if you have any comments, requests, etc :)
>
> I'm slightly unsure about the way you're modifying tables to fit the width
> constraints. I wonder if it would be better to attempt to reflow the
> contents of cells before breaking rows across multiple lines.

Yes, there is a simplification in my loosening method - it is loosening 
everything at once, in three big steps. I would like to save up some time to 
work a little more on it, among others - improving checking of the current 
min and max width of the content. Personally, it's one of my favourite parts 
of my project, as it involves searching for some more creative solutions to 
layout the page with the correct width and without splitting objects or 
destroying the page's layout too significantly :) I spent some good amount of 
time gdb-stepping through the layout functions and analyzing how the boxes 
are manipulated and am glad that it seems I could find some more time saved 
on gtk-printing to make some more use of the ideas I got :)

In the css spec chapter for paged media there are two solutions suggested: 
"If a page box does not fit the target sheet dimensions, the user agent may 
choose to:
    * Rotate the page box 90 degree if this will make the page box fit.
    * Scale the page to fit the target. "
Although, there are relatively very few pages adapted to printing, and the 
necessary resizing scale would be much to big on some pages - that's why i 
see the need to use other methods.


Thanks for all your feedback and suggestions:)

Adam

Reply via email to