Pues para que siga siendo una imagen, lo suyo sería usar
clip. Pero esto sólo funcionará en elementos con posición absoluta y fija.
Luego podrías jugar con
min-(height|width), con
overflow, etc.
La única forma de hacerlo mediante CSS y que siempre quede bien sin deformarse, es poniendo la imagen como imagen de fondo y luego usar
background-size:
Código CSS:
Ver originaldiv {
background-image: url(afoto.png);
background-size: cover;
}