Silverstripe Version: 4.x
While checking out this article I wondered if a SilverStripe 4 plugin could be made to apply that. It seems like out of the box, SilverStripe can force resampling of an image even if the size isn’t changed, but doesn’t have a way to tell the Image subsystem to always output JPEG images as progressive. As the article is really interesting and uses a fairly powerful technique, I suggest everyone to read it. Basically it uses an image replacement technique to swap a low resolution placeholder with an higher one, but the unique approach is using server-side HTTP-range-request to download only the data that are actually needed, off a single progressive JPEG. All the pieces of the article are doable right now, but the only way to create progressive images seems to be to work off the resampled images made by the Image subsystem and further degrade their quality. Progressive JPEG rendering (if supported) may be interesting enough to become a small feature request, if it is not a feature working right off the box.