O processamento de .jpg (rotativo) pode degradá-los para melhor começar com a não substituição.
Baixar Imagemagick para Windows
De um arquivo em lotes. Não substitua originais. Gire 90 graus no sentido horário:
@echo off
SETLOCAL ENABLEEXTENSIONS
md "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\rotated\"
for /f "tokens=*" %%x in ('dir /b "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\*.jpg"') do "path-to-imagemagick\convert.exe" "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\%%x" -rotate "90>" "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\rotated\%%x"
exit /b
Por exemplo:
@echo off
SETLOCAL ENABLEEXTENSIONS
md "%USERPROFILE%\Desktop\New folder\rotated\"
for /f "tokens=*" %%x in ('dir /b "%USERPROFILE%\desktop\new folder\*.jpg"') do "%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE%\desktop\new folder\%%x" -rotate "90>" "%USERPROFILE%\desktop\new folder\rotated\%%x"
exit /b
De um arquivo em lotes. Substituir originais. Gire 90 graus no sentido horário:
@echo off
SETLOCAL ENABLEEXTENSIONS
for /f "tokens=*" %%x in ('dir /b "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\*.jpg"') do "path-to-imagemagick\convert.exe" "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\%%x" -rotate "90>" "path-to-parent-folder-with-double-quotes-if-there-is-a-space-in-the-path\%%x"
exit /b
Por exemplo:
@echo off
SETLOCAL ENABLEEXTENSIONS
for /f "tokens=*" %%x in ('dir /b "%USERPROFILE%\desktop\new folder\*.jpg"') do "%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%USERPROFILE%\desktop\new folder\%%x" -rotate "90>" "%USERPROFILE%\desktop\new folder\rotated\%%x"
exit /b
Um atalho do Windows que gira 90 graus no sentido horário e sobrescreve todos os .jpg no diretório em que é iniciado:
cmd /c for /f "tokens=*" %x in ('dir /b *.jpg') do "%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%x" -rotate "90>" "%x"
Um atalho do Windows que gira 90 graus no sentido horário e sobrescreve cada .jpg no diretório em que é iniciado e em todos os subdiretórios:
cmd /c for /f "tokens=*" %x in ('dir /b /s *.jpg') do "%ProgramFiles%\ImageMagick-7.0.7-Q16\convert.exe" "%x" -rotate "90>" "%x"
gire 90 graus no sentido horário
-rotate "90>"
gire 90 graus no sentido anti-horário
-rotate "-90>"
Aplique a rotação da imagem do caminho (usando operações de cisalhamento) à imagem. Use> para girar a imagem apenas se a largura exceder a altura. <gira a imagem apenas se a largura for menor que a altura. Por exemplo, se você especificar -rotate "-90>" e o tamanho da imagem for 480x640, a imagem não será girada. No entanto, se a imagem for 640x480, é girada em -90 graus. Se você usar> ou <, coloque-o entre aspas para evitar que ele seja mal interpretado como um redirecionamento de arquivo. Triângulos vazios nos cantos, que sobraram da rotação da imagem, são preenchidos com a cor de fundo. O acima é daqui.
Consulte também o operador -distort e, especificamente, o método de distorção 'ScaleRotateTranslate'.
Para obter mais informações sobre como usar o processamento de linha de comando imagemagick, clique aqui