Hi guys,
Just found out the hard way that uploaded photos will retain any location (ie. GPS Lat/Lon) data stored in the image’s EXIF (in fact, the whole EXIF is retained, including device, f-stop, white balance, ISO etc data). While I understand there’d be a bit of work involved in stripping any EXIF data out, the removal of at least the location data would be a privacy concern of many users (both current and potential), especially if it’s expected they may be uploading from a mobile device (which they more than likely took said photo on) - while someone might feel comfortable having their home town in their profile, having the GPS coordinates of their house publicly available is likely another story.
That’s a sensible idea, but at the same time I think Discourse shouldn’t be modifying users’ uploaded files unless the user explicitly told it to do so.
This could be an option in the “Add image or file” dialog, however; a “strip private metadata” checkbox, for instance. When images are uploaded via drag&drop and contain problematic EXIF headers, a warning message in the composer should be enough.
I know twitter strips the EXIF headers. And I’m not totally sure how Wordpress does it, but I think if the image is resized the EXIF headers are stripped. I doubt 500px strips any of the headers, but they are more of a photo centric application.
I personally think the private information should be removed but I think we should also look and see what other apps are doing and learn from them.
Would definitely accept a community PR in this area!
Add a checkbox, checked by default, labelled “remove EXIF data”.
You mean you’d put this in as a standard option? I think this is definately plugin territory. Or at least have the ability to turn it off.
Safe by default is what we try to deliver and I think stripping exif data is safer by default. Helps with rotated by metadata images as well, which @zogstrip already completed, right @zogstrip?
Since EXIF data also contains copyright information which can be used to help fight copyright violations, I think it’s a really, really bad idea to strip it - regardless of the fact that Twitter and Pinterest do it.
Removing copyright information might even be illegal in some countries.
(b) Removal or Alteration of Copyright Management Information. — No person shall, without the authority of the copyright owner or the law —
(1) intentionally remove or alter any copyright management information,
I don’t see anything bad about stripping EXIF location, you don’t need to touch copyright
Yes I did.
Looks like the action is here?
def self.fix_image_orientation(path)
`convert #{path} -auto-orient #{path}`
end
Maybe someone can extend that into a PR to remove EXIF location information.
Unfortunately, after a quick lookup, Image Magick only support stripping all the EXIF information. We’ll need either a new gem or a new tool to deal with that issue properly.
Personally I think that’s fine. If it’s good enough for Pinterest and Twitter, it’s certainly good enough for us.
Non credo che Discourse dovrebbe rimuovere alcun dato EXIF, almeno non di default, e in ogni caso dovrebbe offrire l’opzione per rimuoverli come impostazione globale o opzione per utente (forse tramite un plugin?).
Gli utenti che non desiderano che alcuni dati EXIF siano condivisi su qualsiasi rete sociale dovrebbero rimuoverli quando esportano le immagini in formato JPEG.
Come amministratore di un forum di fotografia, i dati EXIF delle immagini sono importanti per i nostri utenti.
Forse la soluzione per te sarebbe collegare le foto di Flickr invece di caricarle?
Per niente… vogliamo che le foto caricate sul nostro sito rispettino l’accordo di licenza, e abbiamo creato il forum perché non ci piacciono Flickr o Facebook, dove non si ricevono commenti, solo like.
Abbiamo creato la comunità per ricevere opinioni sulle nostre foto, e le foto dovrebbero rimanere all’interno della comunità.
Se ti preoccupano la tua privacy o i dati sensibili nelle tue foto, basta non salvarli nell’immagine quando la esporti.
Interessante. Pensavo che Flickr fosse il luogo online più rispettoso per l’archiviazione e la condivisione di foto, in nessun modo simile a Facebook. Ma non uso nessuno dei due da un po’ di tempo. Personalmente archivio le mie foto offline e su un server Nextcloud, e condivido solo di tanto in tanto una foto su un forum Discourse.
Sembra che ciò di cui hai bisogno sia un plugin per rendere opzionale la rimozione dei dati EXIF. Potresti richiederlo in Marketplace.
Il più rispettoso potrebbe essere 1x o 500px, e anche Flickr è rispettoso, ma non è gratuito e non possiamo dipendere da ciò che Flickr, 500px o altri pensano riguardo alle nostre esigenze.
Stai fraintendendo il nostro punto (forse non l’ho spiegato bene, scusa per il mio inglese): siamo una comunità di fotografi che condividono le proprie foto per ricevere opinioni dagli altri.
Non usiamo Discourse come luogo per caricare tutte o la maggior parte delle nostre foto.
Le informazioni EXIF sono utili per dare un’opinione, a volte.
NO, non ho bisogno di un plugin; chi ne ha bisogno è chi sta chiedendo di cambiare il comportamento di Discourse.
Attualmente, Discourse mostra i dati EXIF e non li rimuove dal file.
Avere un’opzione per scegliere se rimuoverli a livello globale o come preferenza utente è una buona soluzione.
Ciò può essere implementato come plugin, naturalmente.
Potresti espanderla con una semplice casella di spunta al momento del caricamento; sarebbe una funzionalità fantastica.
Spesso scatto foto di parti o oggetti in vendita con il telefono e le carico sul nostro forum, il che rivela la mia posizione di casa ![]()
Il nostro forum è anche molto ricco di immagini, quindi concordo sul fatto che mantenere intatti gli EXIF sia davvero utile per noi.
La maggior parte delle volte ![]()
Sì, aggiungere la possibilità di eliminare alcuni dati EXIF sarebbe ottimo.
Tuttavia, per farlo è necessario implementare una gestione completa degli EXIF nel sistema.
Penso che la soluzione migliore sia:
Stabilire un parametro globale con tre opzioni:
- Mantenere tutti gli EXIF (attivo per impostazione predefinita, in modo da non interrompere il funzionamento delle installazioni esistenti).
- Rimuovere gli EXIF dalle immagini caricate.
- Consentire all’utente di scegliere se rimuovere gli EXIF.
Se viene selezionata la terza opzione a livello globale, gli utenti dovrebbero avere una preferenza personale per scegliere:
- Mantenere tutti gli EXIF (attivo per impostazione predefinita, in modo da non interrompere il funzionamento delle installazioni esistenti).
- Rimuovere gli EXIF dalle immagini caricate.
Quando si carica un’immagine, il sistema potrebbe comunque offrire la possibilità di rimuovere i dati dell’immagine su base singola (anche se è stata selezionata l’opzione per mantenerli).
Puoi aggiungere questa opzione nella finestra di dialogo per il caricamento delle immagini.
Idealmente, se qualcuno seleziona l’opzione per rimuovere i dati, dovrebbe poter scegliere:
- Rimuovere solo i dati GPS e di ubicazione.
- Mantenere solo i dati di base (modello di fotocamera e obiettivo, parametri di scatto).
- Rimuovere tutti i dati dell’immagine.