Puoi identificare le foto a bassa risoluzione in Photos.app utilizzando AppleScript e raggrupparle in un unico album che ti consentirebbe quindi di selezionarle tutte in una volta per la cancellazione.
Normalmente, questo frammento di codice (eseguito da Script Editor ) trova le foto a bassa risoluzione (e i video) e le inserisce in un nuovo album chiamato "Bassa risoluzione" :
tell application "Photos" to add ¬
(every media item whose ¬
(height > width and height ≤ 480) or ¬
(width > height and width ≤ 480)) to ¬
make new album named "Low Res"
Tuttavia, su MacOS 10.13 con gli ultimi aggiornamenti installati, genera un errore, segnalando che non è possibile recuperare l'album specificato. Questo è probabilmente un bug in Photos.app .
Quindi, ho deciso di assegnare una descrizione a tutti questi elementi multimediali invece:
tell application "Photos" to ¬
set the description of ¬
(every media item whose ¬
(height > width and height ≤ 480) or ¬
(width > height and width ≤ 480)) to ¬
"Low Resolution"
display alert "Done."
Quindi, in Photos.app , ho creato un album intelligente con il seguente criterio di ricerca:
DopoaverfattoclicsuOK,l'albumèstatopopolatodafoto(evideo)contrassegnaticomeabassarisoluzione.
Ora,supponendochenoncisianullachevorrestimantenere,devisemplicementepremereCmd+Aperselezionaretuttiglielementi,quindiCmd+⌫pereliminarlituttidallalibreria(inrealtàlispostanellacartellaRecentementeeliminatidellalibreria,ilchesignificachepuoirecuperaretuttiglielementichenonhaiintesocancellare).
Unpaiodinote:
Senondesidericheifilevideovenganoinclusinell'eliminazione,utilizzainvecequesticriteriperl'albumsmart:
Notachelaselezionedellapartitaèimpostatasututti.Ciòescludeivideoetidàunalbumpopolatosolodafotodibassarisoluzione.
Infine,tienipresentecheAppleScriptdevecercarenell'interalibreriaeconfrontarel'altezzaelalarghezzadiognioggettocheincontra.Asecondadelledimensionidellatualibreria,possonoesserenecessarialcuniminuti.
LamialibreriaPhotos.appcontiene8000fotoecisonovoluticircatreminutisuunMacBookda1,2GHzpercompletare.
SescadeScriptEditor,racchiudiilcodiceall'internodiunbloccotimeout
especificaunintervalloditempoinsecondiperconsentireilcompletamentodelcodice:
withtimeoutof300secondstellapplication"Photos" to...
...etc...
end timeout
display alert "Done."