Библиотека для загрузки фотографий на сайт
transImage — это PHP библиотека для простой загрузки фотографий на сайт.
Она умеет:
- Получать изображение из файла, автоматически нормализовать его размер для экономии памяти
 - Автоматически поворачивать исходное изображение по данным Exif
 - Создавать копии себя с изменёнными размерами, изменять свой размер
 - Наносить водяные знаки. Поддерживает любые водяные знаки, соответствующие интерфейсу 
waterMark(см. код) - Выводить результат клиенту или сохранять его в файловую систему
 - Подкладывать белый фон, если исходное изображение поддерживает прозрачность
 - Быстро создавать миниатюру для предпросмотра, используя миниатюру из Exif
 - Преобразовывать изображения в строку для использования их с 
data:URI. В этом случае небольшие изображения можно передавать с другими параметрами в формате JSON (при использовании Ajax) 
Для более подробной информации смотрите комментарии в коде.
Подходит большинству сайтов, которым нужно получить от клиента фотографию, правильно преобразовать её в соответствии с Exif, создать несколько вариантов с разными размерами и, возможно, нанести водяной знак.
Не рекомендую использовать её для выдачи клиенту (браузеру) изображений больших размеров. Эта функция несёт исключительно демонстративную нагрузку.
Лицензия: BSD.
GitHub repo:

https://github.com/valmat/transImage
