Я пытаюсь уменьшить изображения на стороне клиента, прежде чем загружать их, чтобы сохранить пропускную способность и пространство для хранения пользователей на стороне сервера, сохраняя информацию об исходном снимке.Добавить метаданные (Exif) в base64
Текущий поток процесса: FileReader -> холст (DrawImage) -> base64 -> XMLHttpRequest (чтобы получить прогресс) -> PHP сервер
Одним из недостатков этого метода является потеря метаданных (Exif), такие как дата и время, положение, ориентация ...
Извлечение данных exif можно сделать через Exif JS или в другую библиотеку. Но я не нашел, как помещать эти данные в уменьшенный файл (в canvas object, base64 url или php side).
Любая идея или путь для подражания?
Благодарим вас, я, вероятно, извлечу данные Exif, прикрепите их к моему запросу и сохраните информацию в базе данных. К сожалению, эта функция не существует в клиенте ... – cocoto
Ops, я хотел описать JPEG, но по какой-то причине оказался PNG (слишком много PNG-декодирования в последнее время). Но принцип здесь остается тем же. Да, это немного сложнее. – K3N