كيفية معالجة الصور في Linux Terminal

هل سئمت من فتح محرر الصور المفضل لديك باستمرار لقص بسيط ، أو تغيير حجم ، أو لتغيير تنسيق الملف؟ ربما تحتاج إلى أداء هذه المهام بسهولة دفعة واحدة أو داخل البرنامج؟

إليك كيفية استخدام أداة Linux convert ، والتي تتيح لك القيام بكل هذا باستخدام Terminal عبر سطر الأوامر ، وغير ذلك الكثير.

قم بتثبيت برنامج ImageMagick

تعد أداة التحويل جزءًا من حزمة imagemagick الشهيرة ، والتي تحتاج إلى تثبيتها. تحقق لمعرفة ما إذا كان ImageMagick مثبتًا بالأمر أم لا:

 convert --version

إذا تم عرض رقم إصدار ImageMagick ، ​​فهذا يعني أنه تم تثبيته بالفعل ويمكنك الانتقال إلى القسم التالي. خلاف ذلك ، قم بتثبيت ImageMagick باستخدام الأمر:

 sudo apt-get -y install imagemagick

الحصول على معلومات الصورة

يمكنك الحصول على المعلومات الأساسية عن أي صورة باستخدام الأمر:

 convert <FILENAME> -print "Type: %m
Size: %b
Dimensions: %wx%h
" /dev/null

سيعطيك هذا نوع mime للصورة ، وحجم الملف بالكيلو بايت ، وأبعاده بالبكسل ، وسيبدو مشابهًا لـ:

 Type: jpeg
Size: 35.6KB
Dimensions: 640 x 480

تغيير تنسيق ملف الصورة

يمكنك بسهولة تغيير تنسيق ملف أي صورة باستخدام:

 convert <SOURCE_FILE> -append <DEST_FILE>

سيأخذ هذا الأمر ملف <SOURCE_FILE> ، ويحوله إلى التنسيق المناسب ويحفظ صورة جديدة في <DEST_FILE> يجب عليك استخدام امتدادات الملفات الصحيحة (مثل JPG ، GIF ، PNG ، وما إلى ذلك) لـ DEST_FILE وسوف يكتشف تلقائيًا التنسيق الذي تريد تحويل الصورة إليه.

تغيير حجم الصورة في Linux

إذا كنت تريد تغيير حجم صورة ما ، أو ربما إنشاء صورة مصغرة بسرعة ، فيمكنك القيام بذلك باستخدام خيار-resize . قم بتشغيل الأمر التالي:

 convert -resize 25% <SOURCE_FILE> <DEST_FILE>

سيؤدي هذا إلى تغيير حجم الصورة وإنشاء ملف صورة جديد في DEST_FILE يكون 25٪ من أبعاد الصورة المصدر. يرجى ملاحظة أن الأمر أعلاه لا يقلل الحجم بنسبة 25٪ ، ولكن بدلاً من ذلك يولد صورة جديدة 25٪ من الحجم. إذا كنت بحاجة إلى تكبير صورة ، فيمكنك ضبط النسبة المئوية إلى أكبر من 100٪.

بدلاً من تغيير الحجم بالنسبة المئوية ، يمكنك أيضًا تحديد أبعاد معينة باستخدام الأمر:

 convert -resize 1024x768 profile.jpg profile_large2.jpg

يقوم الأمر أعلاه بتغيير حجم الصورة المصدر إلى 1024 × 768 بكسل ، وحفظ الصورة الجديدة في DEST_FILE.

قص الصورة

إذا كنت بحاجة إلى إزالة القليل من الجزء العلوي أو الجوانب ، فيمكنك قص صورة باستخدام الأمر التالي:

 convert <SOURCE_FILE> -crop 640x250+0+0 <DEST_FILE>

على سبيل المثال ، إذا كانت الصورة المصدر 640 × 480 بكسل ، فسيؤدي الأمر أعلاه إلى أن تكون DEST_FILE صورة بحجم 640 × 250 بكسل تحتوي على النصف العلوي من الصورة بينما تم اقتصاص النصف السفلي. يحدد + 0 + 0 في الأمر أعلاه أعلى يسار معظم نقطة من الصورة ، أو بمعنى آخر ، مكان بدء الاقتصاص.

باستخدام المثال أعلاه ، يمكنك حفظ النصف السفلي من الصورة بدلاً من الأمر:

 convert <SOURCE_FILE> -crop 640x250+0+230 <DEST_FILE>

سيبدأ هذا القص عند 0x230 داخل الصورة المصدر ، مع اقتصاص النصف العلوي وترك النصف السفلي فقط.

ادر الصورة

يمكنك حتى تدوير الصور باستخدام الأمر:

 convert <SOURCE_FILE> -rotate 90 <DEST_FILE>

سيقوم الأمر أعلاه بتدوير الصورة المصدر بمقدار 90 درجة في اتجاه عقارب الساعة وحفظ الصورة الناتجة في DEST_FILE.

أضف التسمية التوضيحية إلى الصورة

ميزة أخرى ممتازة لأداة التحويل هي القدرة على إضافة تسميات توضيحية للصور على الفور ، بما في ذلك مكان في الصورة لوضع التسمية التوضيحية ، بالإضافة إلى عائلة الخط وحجمه ولونه المطلوب استخدامه. استخدم الأمر التالي لإضافة تعليق على الصورة:

 convert profile.jpg -pointsize 14 -font helvetica -fill yellow -draw 'text 270,160 "Warm Regards from the Family" ' profile_cap.jpg

سيضع الأمر أعلاه تعليقًا لـ "Warm Regards from the Family" على الصورة المصدر باستخدام الخط Helvetica 14pt باللون الأصفر ، مع بداية النقطة اليسرى العلوية للصورة عند 270 × 160 بكسل ، وحفظ النتائج في DEST_FILE.

يرجى ملاحظة أنه يجب أن تكون حذرًا عند استخدام الخيار -draw ، والذي يجب أن يبدأ بعلامات اقتباس فردية متبوعة بموقع أعلى يسار أعلى نقطة ، ثم نص التعليق المحاط بعلامات اقتباس مزدوجة.

هناك قائمة ضخمة من الألوان المتاحة ، وإذا رغبت في ذلك ، يمكنك سرد جميع الألوان التي يدعمها جهاز الكمبيوتر الخاص بك باستخدام الأمر

 cb:>showrgb

يختلف اختيار الخطوط اعتمادًا على جهاز الكمبيوتر الخاص بك ، ولكن جميع الخطوط القياسية المستخدمة بشكل عام ستكون موجودة. يختلف كل نظام تشغيل قليلاً ، ولكن في Ubuntu على سبيل المثال ، توجد الخطوط في دليل / usr / share / Fonts وتحتوي على قائمة بجميع خطوط النظام المتاحة التي قد تستخدمها في الأمر أعلاه.

امزج ومطابقة أوامر تحرير الصور

يمكنك مزج أي من الخيارات المذكورة أعلاه ومطابقتها في أمر واحد لزيادة الكفاءة. على سبيل المثال ، إذا كانت لديك صورة كبيرة بالاتجاه الخاطئ ، بحجم 2571 × 1200 بكسل ، وأردت إنشاء صورة مصغرة بحجم 300 × 200 ، فيمكنك استخدام الأمر:

 convert <SOURCE_FILE> -rotate 90 -crop 1200x800 -resize 25% <DEST_FILE>

ما سبق يقوم أولاً بتدوير الصورة بمقدار 90 درجة ، مما يجعل الحجم الجديد 1200 × 2571 بكسل. بعد ذلك ، ستقوم بقص الفائض من الجزء السفلي بحيث يبلغ ارتفاعه 800 بكسل فقط ، وأخيراً يتم تغيير حجم الصورة إلى 25٪ من حجمها الأصلي مما ينتج عنه صورة مصغرة نهائية بحجم 300 × 200 بكسل.

معالجة مجمعة لدليل صور

هل لديك دليل كامل للصور التي تريد معالجتها بنفس الأمر؟ ليست مشكلة في لينكس. على سبيل المثال ، قد ترغب في إنشاء صور مصغرة لجميع الصور في دليل العمل الحالي عن طريق تغيير حجمها إلى 30٪ من حجمها الحالي:

 mkdir thumbs
for i in `ls | grep .jpg$`; do convert $i -resize 30% thumbs/$i; done

سينتقل الأمر أعلاه من خلال جميع الملفات الموجودة في دليلك الحالي التي لها امتداد jpg ، وتغيير حجمها إلى 30٪ من حجمها ، ووضع الصور المصغرة الناتجة في الدليل / thumbs / الفرعي.

أصبح التلاعب بالصور سهلاً!

من خلال هذا البرنامج التعليمي ، نأمل أن تكون قد استبعدت القدرة على معالجة الصور بدون ألم وبدون عناء عبر الجهاز ، ومعالجة مجلد كامل بسهولة باستخدام أمر واحد.

لقد تعلمت ما هي أداة التحويل في ImageMagick ، ​​بالإضافة إلى كيفية تغيير تنسيق الملف ، وتغيير الحجم ، والقص ، والتدوير ، وإضافة التعليقات إلى الصور بسهولة. هناك أيضًا قدر كبير من الوظائف الإضافية المتاحة – جرب خيار تحويل المساعدة للحصول على قائمة كاملة.