Hi Xavi (and also Przemek),

On 2010 Jan 26, at 16:32, Xavi wrote:

>> Now everyone who use WIN_PRN class has to link his code
>> with PNG library even if it's unnecessary.
> 
> PNG library is used in win_BitMapDimensions, now is not used in WIN_PRN class 
> to print win_BMPs class.
> Note that now it's a RAW implementation driver dependent and some drivers 
> don't need the original dimensions to work.
> Unfortunately the PNG support is few used in win drivers.
> win_BitMapDimensions works fine and can be nice changed win_BMP class with 
> attache sample prg.
> Perhaps in future, we can change it to not RAW driver dependent and convert 
> these formats into DIB plane but now, I don't know how do it and if this is 
> correct.
> What do you think about?

The BMP class modifications are all good, but the WIN_BMP() 
separation would not by itself solve the libpng dependency, 
since WIN_DRAWBITMAP() is still used from WIN_PRN(), and 
this function resides in the same file where PNG dependent 
stuff is. Plus even we separate those two, the libpng 
dependency stays to be a problem for everyone using 
WIN_BMP(), and since everyone likes to print logos, 
I'd guess many (if not most) users would end up needed 
libpng anyway.

For me BTW, libpng dependency isn't such a huge problem, 
and creating such dependencies is sooner or later 
inevitable, which means on the longer term it cannot 
be avoided with tricks anyway.

What is important IMO is to solve such dependency 
so that it works on all supported platforms and 
environments, and in this case I think the problem 
part could cross-builds. I hope someone can test it.

For pure Windows users it's as easy as adding libpng 
to the liblist or using hbwin.hbc as I told previously.
We're in trunk so such changes are acceptable, and 
users following development should adapt now, final 
users can adapt on next release. After all .png 
printing is quite an important feature these days.

As for converting PNG/JPEG to DIB, I absolutely agree.
It just have to be written.

For JPEG support we will need to include it in /external, 
and if there is no objection I can do it even now, I 
have it ready locally since quite some time now, just 
upgraded to v8 days ago.

Brgds,
Viktor

_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to