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
