簡體   English   中英

使用命令行向圖像添加透明像素線

[英]Add lines of transparent pixels to image using command line

我有幾個15x15的PNG,我需要轉換為18x18的PNG。

但是,我不想簡單地縮放整個圖像。

我想要的基本上是保留精確的舊圖像,但用不可見/透明像素線“填充”它。

所以讓我們說原始圖像看起來像這樣(想象X是像素):

XXXX
XXXX
XXXX
XXXX

我想把它變成這樣的東西( X是原始圖像的像素, T是新的透明像素):

XXXXT
XXXXT
XXXXT
XXXXT
TTTTT

這可能是使用命令行工具(這樣可以自動化),也許像imagemagick?

這將完成工作:

convert input_file -background transparent -extent '18x18' output_file

您可以使用ImageMagick的-append+append運算符來實現。 -append追加到垂直(底部), +append追加到水平(右):

convert \
  -background transparent \
   15x15.png \
   null: null: null: +append \
   null: null: null: -append \
   18x18.png

null:圖片是內置的ImageMagick:它代表1個透明像素。

但正如IM的情況一樣:有一千種方法可以達到同一目標。

您是否需要將透明部分添加到左側和頂部(而不是右側和底部),或者您是否要將像素添加到一個,或三個或四個(而不是僅兩個邊緣,它應該很明顯你如何修改我的命令。

也許你會發現Theodros的答案更直觀(+1就可以了!)。 在這種情況下,如果要更改添加像素的邊框,可以將-gravity參數添加到其命令中:

convert infile -background transparent -gravity southeast -extent '18x18' outfile

除了south ,您還可以使用northnortheasteast ,......和northwest 不要忘記center ......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM