Du kannst/solltest bei dem jpeg die Eigenschaft
Performance auf
jpBestSpeed setzen. Damit wird es schneller.
Alternativ kannst du auch auf die
libjpeg zugreifen. Die Quellen von der Bibliothek dienten auch der jpeg Implementation in Delphi. Allerdings ist die Bibliothek noch mal einen Tick schneller.
Wenn du die Bilder im nachhinein sowieso kleiner skalierst kannst du sie auch von Hause aus kleiner laden. Natürlich nur wenn das möglich ist. Das ist dann ein reingewinn in jeder Hinsicht, denn JPEGs kann man direkt kleiner laden und spart dabei Rechenzeit. Obendrein sind die Operationen dann auch schneller.
PNG und TIFF mit LZW greifen meines wissen nach beide auf die zlib zu und der algorithmus von der Bibliothek ist ziemlich schnell. Allerdings hat jpeg aufgrund der Verlustbehaftung natürlich wesentlich mehr möglichkeiten viel kleinere Dateien zu erzeugen. Fotos als PNG sind in der Regel um das 3-5 fache Größer als JPEG. Was sich dann wieder sehr negativ auf die Lesegeschwindigkeit auswirkt. Für pngs würde ich dir die
libPNG empfehlen. Dazu habe ich auch einen Header geschrieben.
Nur die Menschheit ist arrogant genug, um zu glauben sie sei die einzige intelligente Lebensform im All. Wo nicht mal das nachhaltig bewiesen wurde.