Bagaimana cara memotong gambar dengan 30% teratas di Unix?


15

Saya ingin memotong 30% dari bagian atas gambar. Saya tahu utasnya Bagaimana cara memotong gambar raster yang sangat besar menjadi potongan yang lebih kecil? tetapi tidak ada pendekatan yang berhasil karena saya tidak dapat menemukan ukuran jarak convertdari nol sampai akhir , hanya dengan dimensi nilai absolut. Kodesemu

convert -crop-y -units-percentage 0x30 heart.png 

Gbr. 1 Angka input

masukkan deskripsi gambar di sini

Saya dapat melakukan tugas dengan LaTeX adjustboxtetapi output dalam file pdf tidak benar-benar hasil akhir tetapi presentasi itu. Jadi, menyalin gambar dari dokumen pdf menghasilkan gambar asli. Jadi pendekatan ini gagal.


1
Anda dapat menggunakan imagemagick's identifyuntuk melihat seberapa besar gambar tersebut.
pfnuesel

Pendekatan umum adalah memasukkan nilai yang dibutuhkan pada baris perintah menggunakan $(command). Anda kemudian hanya perlu menulis baris perintah yang dapat menghitung nilai yang dibutuhkan. Di sini Anda akan meminta konversi untuk menggambarkan gambar dan pipa untuk awk di mana Anda dapat mencocokkan nilai yang Anda butuhkan dan melakukan perhitungan yang diperlukan dan mencetak hasilnya.
Thorbjørn Ravn Andersen

Jawaban:


23

Anda dapat memotong persentase gambar Anda meskipun dalam kasus ini, untuk menghindari menjalankan perintah tambahan untuk mendapatkan tinggi dan lebar gambar (untuk menghitung pemotongan tanaman yang secara default adalah relatif ke sudut kiri atas) Anda juga harus memotong relatif terhadap gravitasi (sehingga posisi offset tanaman Anda relatif terhadap sudut kiri bawah gambar):

convert -gravity SouthWest -crop 100x70%x+0+0 infile.jpg outfile.jpg

Dikonfirmasi, pendekatan ini berhasil! - - Anda dapat membalikkan pendekatan ini dll dengan NorthWestmemotong dari bawah. Bagus!
Léo Léopold Hertz 준영

5

Perintahnya harus:

convert heart.png -gravity south -crop 100x70% +repage heart-out.png

1
@ LéoLéopoldHertz 준영 Saya salah paham pertanyaannya, coba edit saya
GAD3R

1
Pendekatan baru Anda dipotong oleh unit absolut, bukan oleh persentase. Sekarang, arah pemotongan yang benar dari atas.
Léo Léopold Hertz 준영
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.