Mastodon

Konwersja obrazów za pomocą komendy sips

4
Dodane: 10 lat temu

O narzędziu sips pisałem już jakiś czas temu, gdy pokazywałem Wam, jak przy jego pomocy można zmienić rozmiar plików graficznych. Dziś z kolei zaprezentuję inną możliwość – konwersję obrazów z jednego rodzaju na drugi.

Konwertować grafiki można z wielu powodów. Na przykład pliki PNG do JPG w celu zaoszczędzenia miejsca i czasu ładowania ich na stronie www. Ja z kolei potrzebuję czasem wykonać odwrotną operację (JPG do PNG), żeby wykonać masową zmianę rozmiaru w skrypcie napisanym w Pythonie (w którym jest trochę kombinowania jeśli chodzi o działanie na plikach JPG). W takim momencie przydaje się właśnie narzędzie sips.

Polecenie konwertujące pliki z jednego formatu na drugi wygląda następująco:

sips -s format [format] [nazwa pliku] --out [plik wyjściowy]
  • [format] tu wskazujemy, na jaki format ma zostać przekonwertowany plik: jpg, png, gif itd.
  • [nazwa pliku] tu podajemy ścieżkę i nazwę oryginalnego pliku.
  • [plik wyjściowy] tu z kolei ścieżkę i nazwę pliku, który ma być utworzony po konwersji. Oczywiście należy pamiętać, żeby rozszerzenie zgadzało się ze wpisanym w sekcji [format].

Dla przykładu, żeby przekonwertować plik grafika.jpg do formatu PNG posłużymy się następującym poleceniem:

sips -s format png grafika.jpg --out grafika.png

W celu przekonwertowania wielu plików można posłużyć się pętlą for:

for i in [zakres plików]; do sips -s format [format] $i --out $i.[rozszerzenie]; done

Poniżej przykład konwersji plików JPEG do PNG:

for i in *.jpeg; do sips -s format png $i --out $i.png; done

Warto jednak zauważyć, że tak przekonwertowane pliki będą się nazywać mniej więcej tak:

nazwapliku.jpeg.png

Żeby pozbyć się niepotrzebnego rozszerzenia .jpeg musimy nieco zmodyfikować powyższą pętlę:

for i in *.jpeg; do sips -s format png $i --out ${i%.*}.png; done

Dla tych, którzy zastanawiają się nad sensem korzystania z takiego narzędzia zamiast np. z Photoshopa napiszę, że swoje możliwości sips pokazuje w skryptach. Mam taki jeden utworzony w Keyboard Maestro i dzięki temu bardzo szybko mogę przygotować odpowiednie grafiki.

Źródło: osxdaily.com

Maciej Skrzypczak

Użytkownik sprzętu z nadgryzionym jabłkiem, grafik komputerowy, Redaktor iMagazine.pl. Mastodon: mcskrzypczak@c.im

Zapraszamy do dalszej dyskusji na Mastodonie lub Twitterze .

Komentarze: 4

Do automatyzacji pewnie fajne. Ale nie mam czasu na zabawę w skrypty.

Więc pozostałym (niejajogłowym użytkownikom :) polecam program

XnView
http://www.xnview.com/en/

Ma UI oraz (dla fanów trzyliterowych komend) narzędzia konsolowe, o wielokrotnie większych możliwościach. Można przetwarzać całe katalogi obrazków paroma kliknięciami i kolejkować zadania, np. zmień rozmiar, wyostrz, obetnij, zastosuj filtr, zapisz pod nazwą, etc.. Tysiąc możliwości a trzeba tylko parę razy kliknąć.

używam jej od dobrych 7 lat na Windows i Linux, a od 2ch lat na OS X i nie znalazłem nic lepszego. Zresztą, po co zmieniać coś co jest idealne :)