Vraag Hoe het formaat van een afbeelding wijzigen via de terminal? [duplicaat]


Deze vraag heeft hier al een antwoord:

Ik heb Ubuntu 10.04. Ik heb het beeld geconverteerd via terminal met behulp van de volgende opdracht:

convert myfigure.png myfigure.jpg

Maar ik wil de hoogte en breedte van de geconverteerde afbeelding wijzigen. Is er een manier om dit te doen?


123
2018-03-24 02:20


oorsprong




antwoorden:


Dezelfde opdracht, met een extra optie:

convert myfigure.png -resize 200x100 myfigure.jpg

of

convert -resize 50% myfigure.png myfigure.jpg

Om het formaat van meerdere bestanden te wijzigen, kunt u de volgende opdracht proberen (zoals voorgesteld door @ test30)

find . -maxdepth 1 -iname "*.jpg" | xargs -L1 -I{} convert -resize 30% "{}" _resized/"{}"

157
2018-03-24 04:49



U kunt ook het percentage gebruiken, zoals in convert -resize 50% myfigure.png myfigure.jpg - January
@Januari uitstekend :) - Rinzwind
Als ik alle afbeeldingen in een map wil converteren, wat is dan het beste commando? doet convert -resize 50% *.JPG werk? tnx - Ehsan M. Kermani
het formaat van alle afbeeldingen in de huidige map wijzigen met 50% find -maxdepth 1 . -iname "*.jpg" | xargs -l -i convert -resize 50% {} /tmp/{}   src: perturb.org/display/632_ImageMagick_resize_images.html   ik voegde toe maxdepth :) - test30
Vond dat om alle foto's te maken het. moest vóór -maxdepth zijn, dus het zou dit moeten zijn: vinden. -maxdepth 1 -iname "* .JPG" | xargs -l -i convert-resize 25% {} email / {} - Andrew Stern


Als u alleen CLI wilt:

sudo apt-get install imagemagick
mogrify -resize 320x240 Image.png 
mogrify -resize 50% Image.png
mogrify -resize 320x240 *.jpg

Als je GUI wilt proberen:

Installeren nautilus-image-converter

sudo apt-get install nautilus-image-converter

Het voegt twee contextmenu-items toe in nautlius, zodat u met de rechtermuisknop kunt klikken en "Afbeelding verkleinen" kunt kiezen. (De andere is "Beeld draaien").

Je kunt een hele map met afbeeldingen in één keer doen als je wilt en je hoeft niet eens een applicatie te openen om dit te doen.


38
2018-03-11 10:46



Is er nog meer capabele CLI-software beschikbaar? Het crasht en werkt op ongeveer 80% afbeeldingen. - Luka


Omdat Ubuntu wordt geleverd met Python, kun je ook een Python-script gebruiken om dit te bereiken, met wat meer controle over wat er gebeurt - zie deze stackoverloop vraag bijvoorbeeld scripts. Die voorbeelden gebruiken alleen de standaardbibliotheek.

Script # 1

import os, sys
import Image

size = 128, 128

for infile in sys.argv[1:]:
    outfile = os.path.splitext(infile)[0] + ".thumbnail"
    if infile != outfile:
        try:
            im = Image.open(infile)
            im.thumbnail(size, Image.ANTIALIAS)
            im.save(outfile, "JPEG")
        except IOError:
            print "cannot create thumbnail for '%s'" % infile

En nog een voorbeeld waarbij je alleen de breedte hoeft te specificeren (als de breedtevariabele):

Script # 2

from PIL import Image
import sys

filename = sys.argv[1:]
basewidth = 300
img = Image.open(filename)
wpercent = (basewidth/float(img.size[0]))
hsize = int((float(img.size[1])*float(wpercent)))
img = img.resize((basewidth,hsize), Image.ANTIALIAS)
img.save(filename) 

Nu, hoe dit te doen via de terminal ...

sudo nano resizescript.py

Plak een van die codeblokken in de teksteditor. Ctrl + x om af te sluiten (ja zeggen om wijzigingen op te slaan).

Om Script # 1 te gebruiken:

python resizescript.py yourfilenamehere.jpg

Om Script # 2 te gebruiken:

python resizescript.py yourfilenamehere.jpg

U moet zich in dezelfde map bevinden als de afbeeldingsbestanden voor beide scripts. De eerste verkleint de afbeelding tot 128 x 128 pixels. Het tweede script maakt het 300 pixels breed en berekent de proportionele hoogte. Dit is meer een antwoord van Python, maar het wordt technisch helemaal door de terminal gedaan.


2
2017-09-10 20:08



voeg hier (een) voorbeeld (s) toe - Zanna
Geef het voorbeeld via de terminal als per vraag. - kenorb
Bedankt, ik nam teveel aan in mijn eerste antwoord. Ik heb de bewerkingen per vraag gemaakt. - freeworld
Merk op dat PIL alleen beschikbaar is voor Python 2; ondersteuning voor 3.x is gepland "later" als per pythonware.com/products/pil - arp


imgp is een relatief nieuw hulpprogramma dat het formaat en de rotatie van afbeeldingen aanpast. Het heeft meer functies dan nautilus-beeldomzetter.


0
2017-10-05 05:00



Hoewel dit theoretisch de vraag kan beantwoorden, het zou de voorkeur hebbenom de essentiële delen van het antwoord hier op te nemen, en geef de link voor referentie. - Kevin Bowen