From: Petr M. <mi...@ph...> - 2008-12-11 22:50:04
|
> > > > >> plot '<convert table.png avs:-' binary filetype=avs with rgbimage > > > > >> > > > > >> Nowadays gnuplot is typically compiled with the gd library. Therefore it > > > > >> should be pretty easy to use the gd-library to load png/gif/jpg images > > > > >> directly. I think it may not be too much code in breaders.c. Could somebody > > > > >> contribute this feature? > > > > > > > > > > I honestly don't see quite how that would work. > > > > > Using libgd, or libpng for that matter, will result in an in-memory copy > > > > > of the bitmap image. But that's not exactly what the binary file input code > > > > > wants; it expects to read a stream of binary data on the input fd, so that it > > > > > can filter, re-map, combine fields, etc. It seems to me that one would > > > > > have to write a new input layer that dummies up access to an in-memory > > > > > bitmap as successive reads to a fake pipe. > > > > The abstraction layer ... cannot be this done in some easy way? Currently > > there are fread(f, ..., bytes) ... so instead of fread() there would be > > memcpy(). > > > > The gain would be portability and speed. We could put lena.png and lena.jpg > > into demos/ and be sure that these demos can be run by Windows executables > > as well. > > I don't see how requiring ImageMagick limits the portability, and it is > a much more general solution than one that accommodates only png images. > I am dubious that the speed is enough different to notice. > > As to Windows, it would be of far more value to get the popen() filter > mechanism working under Windows than it would be to add large chunks of > code to make up for various individual things you can't do because of this > shared fundamental flaw. ImageMagick is no problem for Linux users. It is problem for Windows people. We cannot expect them to install any other tool. Gnuplot should not depend on outside filters, if we can organize it within gnuplot. popen() works on Windows, but wgnuplot_pipes.exe binary has to be run instead of wgnuplot.exe --- PM |