เครื่องมือปรับขนาดรูปภาพสำหรับ Ubuntu


11

ฉันมีรอบ 500 ภาพ และฉันต้องปรับขนาดให้เป็น 6 ขนาดแตกต่างกัน . สามารถมีสคริปต์หรือซอฟต์แวร์ใด ๆ นอกจากนี้แพลตฟอร์มของฉันคือ อูบุนตู .


คำตอบ:


14

โปรดลองใช้ ImageMagick . ก่อนอื่นให้ติดตั้ง:

$ sudo apt-get install imagemagick

จากนั้นคุณสามารถสร้างสคริปต์ทุบตีเล็ก ๆ น้อย ๆ เพื่อแปลงเป็น 6 ขนาดของคุณ:

#!/bin/bash

# List all the formats you wish to have
SIZES="640x480 800x600 1024x768"

# pass directory as first argument to the script
# Use '.' (current directory) if no argument was passed
DIR=${1:-.}

find $DIR -type f | while read file; do
   for size in $SIZES; do
      # Resize and rename DSC01258.JPG into DSC01258_640x480.JPG, etc.
      # Remove the ! after $size if you do not wish to force the format
      convert -resize "${size}!" "$file" "${file%.*}_${size}.${file##*.}"
   done
done

บันทึกสคริปต์เป็นเช่น convert.shและเรียกใช้:

chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default

แก้ไข: ฉันแก้ไขสคริปต์เพื่อให้แน่ใจว่าจะไม่แทนที่ไฟล์เมื่อปรับขนาด แต่เปลี่ยนชื่อไฟล์เป็นเช่น DSC01258_640x480.JPG และใช้การแปลงแทน mogrify เนื่องจากไฟล์ถูกเปลี่ยนชื่อจริง ฉันทำให้บริสุทธิ์ของตัวแปรเล็กน้อยไม่เจ็บ

ฉันทดสอบสคริปต์ด้วยไฟล์ png และมันก็ใช้ได้ดี ควรทำงานกับรูปแบบภาพทุกประเภทที่รองรับโดย ImageMagick:

$ file wave_bible_bot/*
  wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced

$ ./resize.sh wave_bible_bot/

$ file wave_bible_bot/*
  wave_bible_bot/wave_bible_bot1_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot1.png:          PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot2.png:          PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_640x480.png:  PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3_800x600.png:  PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
  wave_bible_bot/wave_bible_bot3.png:          PNG image, 565 x 384, 8-bit/color RGB, non-interlaced

7

หากคุณติดตั้ง ImageMagick ตามที่ Sathya กล่าวมามีส่วนหน้า GUI ที่ดีที่จะทำให้การปรับขนาดง่ายขึ้นเรียกว่า nautilus-image-converter.

วิธีติดตั้ง:

sudo apt-get install nautilus-image-converter

รีสตาร์ทหอยโข่ง (หรือออกจากระบบและกลับเข้ามาใหม่) มันจะเพิ่ม "ปรับขนาดรูปภาพ" และ "หมุนรูปภาพ" ในเมนูบริบทของคุณดังที่แสดงที่นี่:

alt text

เพียงไฮไลต์ภาพทั้งหมดที่คุณต้องการปรับขนาดคลิกขวาเลือก ปรับขนาดรูปภาพ และคุณจะได้รับอินเทอร์เฟซนี้:

alt text

ใช้ตัวเลือก "ผนวก" และเพิ่มชื่อที่กำหนดเองให้กับรูปภาพที่ปรับขนาดแล้วของคุณ คุณอาจต้องการผนวกขนาดเช่น 1024x768 หรือ คุณสามารถทำสำเนา 6 รูปในโฟลเดอร์ต่าง ๆ จากนั้นใช้ ปรับขนาดภาพให้เข้าที่ ตัวเลือกในภาพในแต่ละโฟลเดอร์เพื่อเขียนทับด้วยภาพใหม่ที่มีขนาดแตกต่างกัน ปรับขนาดภาพให้เข้าที่ จะเขียนทับภาพที่เลือกไว้เสมอดังนั้นระวังสิ่งที่คุณเลือก!


5

คุณสามารถใช้ ImageMagick: ก่อนติดตั้ง ImageMagick

sudo apt-get install imagemagick

ถัดไป cd ไปยังตำแหน่งที่มีภาพของคุณ:

cd /path/to/where/images/are/stored

ถัดไปสร้างไดเรกทอรีตามขนาดภาพของคุณ

mkdir /path/to/where/images/are/stored/size

คัดลอกรูปภาพไปยังไดเรกทอรีที่คุณต้องการแปลง

cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size

ถัดไปเปลี่ยนไดเรกทอรีเป็นไดเรกทอรีอื่น

cp /path/to/where/images/are/stored/size

จากนั้นใช้เครื่องมือที่เรียกว่า mogrify จัดทำโดยห้องสมุด ImageMagick เพื่อปรับขนาด

mogrify -resize 640×480! *.jpg

สิ่งนี้จะปรับขนาดทั้งหมดเป็น 640*480, ! บอกให้บังคับอัตราส่วนกว้างยาว

ฉันไม่รู้จัก Bash scripting ดังนั้นจึงไม่ใช่เรื่องอัตโนมัติ


2

ควรมีการอ้างอิงหลายอย่างถึง mogrify เครื่องมือ ใน convert คู่มือของ ... ฉันค้นหาประมาณสี่สิบห้านาที แต่มันไม่ได้จนกว่าฉันจะเจอโพสต์อื่นที่ฉันสามารถเริ่มมองไปในทิศทางที่ถูกต้อง

เพื่อประโยชน์ของผู้อื่นบรรทัดนี้ทำสิ่งที่ฉันต้องการ มันใช้เวลาประมาณห้าสิบ 2meg ถึง 3meg JPGs (ในไดเรกทอรีเดียวกัน) และทำให้มันลดลงเหลือ 80 ถึง 120 kb และแน่นอนมันทำให้ชื่อของพวกเขาเหมือนกันหมด

mogrify *.jpg -quality 75 -resize "640x480>" *

และเพื่อประโยชน์ของผู้อื่นอีกครั้ง:

  • *.jpg ... ดำเนินการคำสั่ง mogrify สำหรับ JPG ทั้งหมดในไดเรกทอรี

  • -quality 75 ... ลดคุณภาพของ jpg ลงเหลือ 75% ซึ่งเพียงพอสำหรับการรับชมออนไลน์

  • -resize "640x480>" ... ทำให้รูปภาพทั้งหมดถูกปรับขนาดเป็น 640x480 (สังเกต "& gt;" ในตอนท้ายนั่นทำให้รูปภาพเล็กลง แต่ 'ไม่' ใหญ่กว่า ... และอย่าลืมเครื่องหมายคำพูดเหล่านั้นมีความสำคัญ

  • * ... และอย่าลืมสิ่งนี้ในตอนท้ายของคำสั่ง


1

ฉันจะแนะนำ phatch GUI มีความยืดหยุ่นมากกว่าสิ่งที่ imagemagick และ nautilus มีให้และมีอินเตอร์เฟสบรรทัดคำสั่งด้วยหากคุณต้องการเขียนสคริปต์ คุณสามารถติดตั้งได้ด้วย

sudo apt-get install phatch


0

ฉันได้สร้างเครื่องมือที่ใช้ง่าย: ปรับขนาดรูปภาพ . มันใช้ imagemagick ที่อยู่เบื้องหลัง เมื่อติดตั้งแล้วมันจะสร้างไอคอนบนเดสก์ทอป linux ของคุณ คุณสามารถลากและวางหนึ่งหรือหลายภาพหรือโฟลเดอร์ของภาพในนั้นและมันจะสร้างสำเนาปรับขนาดของแต่ละภาพ ขนาดที่คุณต้องการสามารถเปลี่ยนได้อย่างง่ายดายโดยการคลิกขวาที่ไอคอนเดสก์ท็อป


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.