我使用imageMagick將圖像拆分爲瓷磚。我使用以下命令:結合瓷磚使用imagemagick創建圖像
convert -crop 100x100 source.png tile%d.png
這會創建一堆平鋪圖像。有沒有辦法從瓷磚重新創建原始圖像?我正在做這個不同的source.png文件(不同的維度),所以我並不總是知道每個圖像(即多少行/列)將有多少瓦片。
我使用imageMagick將圖像拆分爲瓷磚。我使用以下命令:結合瓷磚使用imagemagick創建圖像
convert -crop 100x100 source.png tile%d.png
這會創建一堆平鋪圖像。有沒有辦法從瓷磚重新創建原始圖像?我正在做這個不同的source.png文件(不同的維度),所以我並不總是知道每個圖像(即多少行/列)將有多少瓦片。
我不認爲你能夠做到這一點與tile%d.png
因爲你 不知道有多少行和列。如果圖像大小不是 100的倍數,則最終會顯示不同大小的圖塊。然後,您可以通過檢查尺寸的文件 查找非「全尺寸」圖塊。如果原始大小是1000x2000,那麼這將會破壞 。
我認爲你需要在文件名中包含行和列。你需要 需要IM v6.4.8-4及更高版本。
convert source.png -crop 100x100 -set filename:tile \
"%[fx:page.y/100+1000]_%[fx:page.x/100+1000]" \
+repage +adjoin "file_tiles_%[filename:tile].png"
魔法是fx:page.x/100+1000
。 100
需要匹配你的裁剪尺寸 是爲x和1000
是使文件所有行高達9999(所以最多8999 行和列)或899如果你不想做數學去除1000從 號碼。
如果你需要tile%d.png
,你總是可以創建兩個集合。當您恢復原始文件時,您需要執行如下操作:
montage -mode concatenate -tile 4x file_tiles_*.png rejoined.png
您需要計算出列數。這可以從 最後一個有1000行的解析......
ls -1 file_tiles_1000* | tail -1 | sed 's/.*_//g; s/\.png//g; s/^.000*//g'