I would say that you should use the imagelist component from the GLXTreem package, it does just what you want, it saves textures in streams. The latest released version has support for bitmaps and jpegs of any size and bitdeapths, next version will also support targa files.

Or if you don't wont the component, the class TGLXGraphic does the trick aswell..