আমি -geometry +0+0
অতিরিক্ত টাইল স্থান সরিয়ে নেওয়ার গৃহীত উত্তরের সাথে একমত হয়েছি এবং আমি যুক্ত করব -mode Concatenate
(কিছু শর্তাধীন)।
এছাড়াও, একবার আপনার সাথে বিভিন্ন আকারের হয়ে ওঠার পরে montage
, "টাইল ব্যাকগ্রাউন্ড" (টাইল স্পেস) বনাম "ফ্রেম" এবং "সীমান্ত" এর মধ্যে পার্থক্য নির্ধারণ করা কিছুটা কঠিন হয়ে যায় - আমি প্রায়শই নিজেকে ট্র্যাক করে ফেলি, সুতরাং এখানে একটি ছোট পরীক্ষার মামলা রয়েছে (ক্লিকযোগ্য) চিত্রগুলি:
#$ montage --version # done on:
#Version: ImageMagick 6.6.2-6 2012-08-17 Q16 http://www.imagemagick.org
# pipe to `display` (for preview):
# montage img1.png img3.png img2.png img4.png bmp:- | display
# generate images first
convert -size 200x100 xc:red img1.png
convert -size 300x200 xc:blue img2.png
convert -size 400x300 xc:green img3.png
convert -size 500x400 xc:orange img4.png
# #01: direct montage (-tile 2x2 automatic for four images)
# note: mont01.png is 256x252 pixels!
montage img1.png img3.png img2.png img4.png \
mont01.png
# "The 'tile' size is then set to the largest dimentions
# of all the resized images, and the size actually specified."
# "by removing the 'size' component, non of the images will
# be resized, and the 'tile' size will be set to the largest
# dimensions of all the images given"
# #02: specify -geometry offset (tile spacing)
# note: mont02.png is 1008x808 pixels now!
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 \
mont02.png
# #03: add border to command #02:
# border sticks around images themselves
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -border 5 \
mont03.png
# #04: add frame to command #02:
# frame is around the tile (and is "3D") - and
# background (which isn't image) is colored default gray:
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -frame 5 \
mont04.png
# #05: add background color spec to command #04:
# that is background behind the tiles - not of the tiles
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -frame 5 -background "brown" \
mont05.png
# #06: add mattecolor to command #05:
# "-mattecolor The color used as the frame color."
# but just changes color of the "3D" frame borders
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -frame 5 -mattecolor "white" -background "brown" \
mont06.png
# #07: add bordercolor to command #05:
# "-bordercolor The fill color inside the frame for images, or any border padding."
# this does change the color of time background
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -frame 5 -bordercolor "purple" -background "brown" \
mont07.png
# #08: both frame and border :
# no difference from command #07 -
# once the tiles are resized, the entire remaining
# background is used as a "border", and specifying
# "-border 5" size for it has no effect
montage img1.png img3.png img2.png img4.png \
-geometry +2+2 -frame 5 -border 5 -bordercolor "purple" \
mont08.png
# #09: add mode Concatenate (with -tile) to #08
# No difference from #08
montage img1.png img3.png img2.png img4.png \
-mode Concatenate -tile 2x2 -geometry +2+2 -frame 5 -border 5 -bordercolor "purple" \
mont09.png
# #10 remove -frame, from #09
# now there is no tile background, and
# images are not centered in tiles (they
# have gravity NorthWest instead)
montage img1.png img3.png img2.png img4.png \
-mode Concatenate -tile 2x2 -geometry +2+2 -border 5 -bordercolor "purple" \
mont10.png
# #11 Mode Concatenate with only -tile
# images are without padding (as much as possible)
montage img1.png img3.png img2.png img4.png \
-mode Concatenate -tile 2x2 -border 5 -bordercolor "purple" \
mont11.png
# #12 Try geometry +0+0 instead of concatenate
# almost the same as #11, except more correct overall borders
montage img1.png img3.png img2.png img4.png \
-tile 2x2 -geometry +0+0 -border 5 -bordercolor "purple" \
mont12.png
ওয়েল, আশা করি এটি দরকারী হিসাবে পাওয়া যাবে,
চিয়ার্স!
সম্পাদনা করুন: আমি ইমেজম্যাগিকের জন্য একটি ছোট পাইথন / টিন্টার / পিআইএল জিইআই, tkGui_ImageMagick.py একসাথে রেখেছি - এবং শেষ পর্যন্ত আমি যা চাইছিলাম তার জন্য সঠিক কমান্ড লাইনটি পেয়েছি: চারটি চিত্রের মন্টেজ তৈরি করতে, যেখানে টাইলসের উচ্চতা এবং প্রস্থ রয়েছে এই কলামটির বৃহত্তম প্রস্থ (বা সারির উচ্চতা) যাই হোক না কেন তার সাথে মেলে।
এই উদাহরণে, img1 (200x100) এবং img2 (300x200) প্রথম কলামে যায়, বৃহত্তর প্রস্থ 300 হয় - যা img1 এর টাইল প্রস্থ নির্ধারণ করা উচিত। এছাড়াও, ইমজি 1 এর উচ্চতা ইমজি 3 (300 পিক্স) এর বৃহত্তর উচ্চতার সাথে সম্পর্কিত হওয়া দরকার, এটির সাথে এটি একটি সারি গঠন করে। এটি extent
অপারেটরের মাধ্যমে নির্দিষ্ট করা যেতে পারে ( চিত্রও দেখুন Image বিষয়টি দেখুন - প্রসারিতের পরিবর্তে আকার পরিবর্তন করুন এবং প্যাড করুন )। এবং সেই কমান্ড লাইনের montage
জন্য প্রতিটি কলামের জন্য পৃথক ও জন্য উপ-প্রসেস কলগুলি প্রয়োজন - এবং সেখান থেকে convert
প্রতিটি চিত্রের জন্য পৃথক এস:
montage \
<(montage \
<(convert \
img1.png -gravity center -extent 300x300 \
bmp:-) \
<(convert \
img2.png -gravity North -extent x400 \
bmp:-) \
-tile 1x -geometry +0+0 \
bmp:-) \
<(montage \
<(convert \
img3.png -gravity center -extent 500x \
bmp:-) \
img4.png \
-tile 1x -geometry +0+0 \
bmp:-) \
-geometry +0+0 -border 2 \
mont13.png
# or as one liner:
montage <(montage <(convert img1.png -gravity center -extent 300x300 bmp:-) <(convert img2.png -gravity North -extent x400 bmp:-) -tile 1x -geometry +0+0 bmp:-) <(montage <(convert img3.png -gravity center -extent 500x bmp:-) img4.png -tile 1x -geometry +0+0 bmp:-) -geometry +0+0 -border 2 mont13.png
এখানে নোট করুন, যদি আমরা ব্যবহার করতাম -extents
সরাসরি monটেজ লাইনে এটি করে :
montage \
img1.png -extent 300x200 -gravity center \
img2.png -extent 0x400 -gravity North \
-tile 1x -geometry +0+0 \
bmp:-
... আমরা লক্ষ্য করব যে উচ্চতার জন্য প্রথম স্পেসিফিকেশন (200) উপেক্ষা করা হবে এবং বৃহত্তর হিসাবে 400 উভয় টাইলগুলিতে প্রয়োগ করা হবে টাইলই !
সুতরাং আমরা (কল করে প্রতিটি ইমেজ প্যাডিং নিয়ন্ত্রণ আবশ্যক convert
সঙ্গে extents
জন্য প্রতিটি ) - এবং তারপর এড়ানোরextents
মধ্যে montage
লাইন; এবং তেমনি, আমাদের অবশ্যই প্রতিটি কলামের (বৃহত্তম সারি) প্রস্থের (এবং প্রতিটি সারিটির উচ্চতা) এপ্রিওরি জানতে হবে। এছাড়াও নোট:
- যেহেতু img1 এর প্রতিবেশীদের অন্তর্ভুক্ত প্রস্থ / উচ্চতার চেয়ে ছোট, তাই আমাদের স্পষ্টভাবে এর প্রস্থগুলিতে প্রস্থ এবং উচ্চতা উভয়ই নির্ধারণ করতে হবে
- অন্যান্য মাত্রায় কেবলমাত্র প্রাসঙ্গিক মাত্রা নির্দিষ্ট থাকতে পারে - এবং img4, বৃহত্তম হিসাবে, প্যাড করতে হবে না (এবং এর মধ্য দিয়ে চলেছে)
convert
)
- ইন
montage
, সাধারণত পরে-gravity
আসতে হবে (পুরো নির্দিষ্ট: w & h) ; ইন , আগে কাজ করে (সাধারণত)-extent
convert
-gravity
-extent