Jak manipulować obrazami z terminala

ImageMagick to aplikacja, która pozwala nam manipulować obrazami za pomocą wiersza poleceń i jest używana dla praktycznie wszystkich formatów. Dzięki niemu można również zautomatyzować działania na obrazach zawartych w folderze (konwersja, zmiana rozmiaru itp.)
Zobaczmy listę przydatnych poleceń ImageMagick:

Uzyskaj informacje z obrazu.

identify -ping image.png

Uzyskaj jeszcze więcej informacji.

identify -verbose image.png

Poznaj listę kolorów użytych w obrazie.

identify -list color image.png

Konwertuj obraz PNG na JPG

convert image.png image.jpg

Przekonwertuj obraz PNG na JPG, wskazując jakość konwersji.

convert -quality 96 image.png image.jpg

Konwertuj wszystkie obrazy PNG na JPG zawarte w folderze

mogrify -format png *.jpg

Konwertuj wszystkie obrazy (* .jpg, * .png) do formatu PDF

convert images*.* archivo.pdf

Zmień rozmiar obrazu

convert -resize 48×48 image.png image-mini.png

Zmień rozmiar wszystkich obrazów w folderze

mogrify -resize 48×48 *.png

Zmień rozmiar obrazu, określając szerokość

convert -resize 620x image.png image-620.png

Zmień rozmiar obrazu, określając jego wysokość

convert -resize x100 image.png image-100.png

Utwórz Favicon

convert -colors 256 -resize 16×16 image.jpg favicon.ico

Konwertuj obraz kolorowy na czarno-biały

convert -type image.jpg image-noir-blanc.jpg

Dodaj przezroczystą ramkę 1 piksela wokół obrazu

convert -bordercolor Transparent -border 1×1 image.png image-borde.png

Dodaj 10-pikselową czarną ramkę wokół obrazu

convert -bordercolor #000000 -border 10×10 image.png image-borde.png

Utwórz negatyw obrazu

convert -negate image.png image-negate.png

Obróć obraz w pionie

convert -flip image.png image-inversee.png

Obróć obraz od lewej do prawej

convert -flop image.png image-inversee.png

Użyj graficznego interfejsu użytkownika programu ImageMagick

display image.png


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   lorfindel powiedział

    czy używasz mogrify ?? spójrz na przykład w poście.
    Twoje zdrowie! Paweł.

  2.   RubenGnu powiedział

    Czy skopiowałeś i wkleiłeś?

    Umieszcza literę „x” zamiast znaku „×” umieszczanego przez edytor tekstu na stronie.

    pozdrowienia

    Rubén

  3.   ainhoaredam powiedział

    cześć
    Testowałem to i jest w porządku, ale polecenie utworzenia favicon nie działa dla mnie, oto błąd, który mi podaje:
    convert: niepoprawny argument dla opcji `-resize ': 16 × 16 @ error / convert.c / ConvertImageCommand / 2343.
    pozdrowienia

  4.   Katarzyna powiedział

    co to jest terminal

  5.   Jathan powiedział

    Bardzo dobry dobór poleceń i przejrzystość ich składni. Wcześniej miałem wiele problemów, próbując użyć konwersji do zmiany rozmiaru partii obrazów, a teraz, gdy używam mogrify w tym samym celu, wszystko działało dobrze. Bardzo dziękuję Pablo.

  6.   Harry powiedział

    Mały wkład w ten genialny post!

    Aby przekonwertować na czarno-białe:

    konwertuj -monochromatyczny obraz.png obraz-bw.png

    pozdrowienia

    1.    użyjmy Linuksa powiedział

      Dzięki za wkład!
      Przytulić! Paweł

  7.   Moises Garnica Radilla powiedział

    Witam, widziałem te informacje na wielu stronach internetowych!
    Pytanie: Jak mogę skalować do innego katalogu?
    Przykład: convert -scale 50% -quality 80% * .jpg> scaling /
    Przykład nie działa, jak powinien być z folderu x do podfolderu x / scaled?
    Z góry bardzo dziękuję!

    1.    Szesnaście powiedział

      Zrobiłem dla niego skrypt, a zmodyfikowane są zapisywane w innym folderze.
      Umieszczam skrypt w folderze, w którym mam wszystkie obrazy, które chcę zmodyfikować, i wykonuję go z konsoli (plik musi mieć uprawnienia do wykonywania). Kod, który mam zamiar wstawić dalej, wklejasz go do pliku i nadajesz mu żądaną nazwę (umieszczam na końcu .sh, żeby wiedzieć, że to skrypt, po prostu czytając nazwę pliku).

      Kopiuję i wklejam kod na wypadek, gdyby Ci pomóc:

      #! / bin / bash
      ### Zmień rozmiar obrazu, wskazując szerokość i jakość
      # convert -quality 86 -resize 620x image.png image-620.png
      ### Zmień rozmiar obrazu, wskazując jego wysokość i jakość
      # convert -quality 86 -resize x100 image.png image-100.png

      + informacje: https://blog.desdelinux.net/como-manipular-imagenes-desde-el-terminal/

      #
      # =============================================== == ============
      KATALOG =pwd
      cd $ DIRECTORY
      resized_directory = »resized_img»
      $ (mkdir "$ resized_directory" 2> / dev / null)
      TEMP = »img_list» # wewnętrzny plik tymczasowy
      #
      # lista obrazów katalogów w pliku tymczasowym
      ls * .png 2> / dev / null >> $ resized_directory / $ TEMP; ls * .PNG 2> / dev / null >> $ resized_directory / $ TEMP;
      ls * .jpg 2> / dev / null >> $ resized_directory / $ TEMP; ls * .JPG 2> / dev / null >> $ resized_directory / $ TEMP;
      ls * .jpeg 2> / dev / null >> $ resized_directory / $ TEMP; ls * .JPEG 2> / dev / null >> $ resized_directory / $ TEMP;
      ls * .gif 2> / dev / null >> $ resized_directory / $ TEMP; ls * .GIF 2> / dev / null >> $ resized_directory / $ TEMP
      #
      #changing obrazów w katalogu
      echo -n "Przetwarzanie, proszę czekać"
      podczas czytania obrazu
      do
      echo -n "."
      convert -quality 90 -resize 1000x $ image $ resized_directory / $ image
      gotowe <$ resized_directory / $ TEMP
      wyrzucił ""
      #
      # usuń plik tymczasowy
      rm $ resized_directory / $ TEMP
      echo „zakończono pomyślnie”

  8.   linux pro powiedział

    Dziękuję bardzo dobre