Are there any developers interested in working on a core modification to enable auto-generated resized images (copies) when upload and placing images into tinyMCE. I think this feature is sorely lacking in Moodle and could easily be implemented. As Moodle grows, it is not reasonable to expect all users to have the knowledge to properly resize images for use in the system. Resizing the image via html does not help performance and constraining the file size limit doesn't address the UX issue. Other CMSes have successfully created this kind of system and I think Moodle would greatly benefit from it. I've been working for only a few months in a large university rolling out Moodle and this problem continues to be an issue.
There's several approaches to enabling this kind of functionality. It could be accessible via parameters to pluginfile.php. For security purposes, available sizes should be constained with a setting, so that not any sizing would be produced.
The script would have to be smart enough to use the existing file or produce the resized image when requested.
TinyMCE could incorporate this functionality by extending the insert dialog to include an option to choose an available resize. This would modify the url placed into tinyMCE, including the modifying parameter (ie. ?size=large, where large = 600x600). As a later step, one could enable the html resizing to actually request a properly produced resized images. I've done exactly this in another project, so I know it is possible, but it has some large system considerations. Regardless of the exact approach, I am recommending code that would enabling system-wide image resizing when appropriate. Where and how it gets tied into the system could be determined and implemented at a later date.
As a starting point, the lib/gdlib.php would need to be modified to include the base resizing code (a form of it already exists to create icons).
Since I am new to the development community, I would appreciate any feedback on this feature. Has it been proposed? Is anyone working on it? I'm happy to work on the development and propose it for inclusion in the code. I would also love to hear any major objections to such a feature since from my perspective it is clearly needed. I understand that if I build it, it won't necessarily get included in the core, so any thoughts on how it could be a module (i don't think it can) or on other issues that I might not be considering are greatly appreciated.