Eu usei o IrfanView para realizar uma solução viável.
Usando a conversão em lote / Renomear do arquivo > > Eu simplesmente adiciono imagens à caixa de diálogo Arquivos de Entrada.
-
Use as opções avançadas nas configurações de conversão em lote e clique em Avançado.
-
Marque RESIZE e selecione SET NEW SIZE, em seguida, defina um ou ambos os lados para. Na altura / largura coloque o mesmo tamanho (eu uso 300px). O que isso fará é redimensionar a imagem para um ponto máximo desse tamanho. Então, será necessário o maior tamanho (dependendo se a imagem é retrato ou paisagem) - e isso fará com que 300px. E o outro lado será dimensionado proporcionalmente desde que você mantenha a proporção.
-
O que você também quer fazer é o Smart Crop, no caso do IrfanView, ele é chamado de Borda de corte automática - você verá essa configuração à direita da caixa de diálogo RESIZE.
Antes de concluir, você quer ter certeza de que ele primeiro faz o recorte e, em seguida, o redimensionamento, caso contrário, você terá algo menor que 300px, porque se ele for redimensionado para 300px e depois for depois disso ... você pode imaginar o resultado.
- Portanto, no canto inferior direito, marque Ordem de processamento personalizada e clique em Alterar pedido. Mova as bordas de recorte automático para o topo. Clique em OK, clique em OK novamente e você estará pronto para converter. Clik Start Batch.
Isso não resolveu exatamente a minha pergunta exata, mas não importa, desde que eu consiga obter o maior lado de 300px e o recorte inteligente antes do redimensionamento. O resto eu posso realizar com CSS no meu html, o que pode realmente ser uma solução melhor.