2017-10-19 101 views
0

我使用jpegtran來旋轉我的圖像,但它似乎在做一些奇怪的東西。 在我的其他服務器上運行相同的代碼/邏輯。下面是測試情況下,我已經做了:旋轉圖像時奇怪的「邊框」與jpegtran當旋轉圖像

test.jpg放在是原始圖像,然後我運行:

jpegtran -rotate 90 test1.jpg > test2.jpg.tmp 
mv test2.jpg.tmp test2.jpg 
jpegtran -rotate 90 test2.jpg > test3.jpg.tmp 
mv test3.jpg.tmp test3.jpg 

test.jpg放在:

test1.jpg

TEST2 .jpg

test2.jpg (first rotation)

test3.jpg:

test3.jpg (2nd rotation)

正如你應該能夠看到,有它怪異的邊界(就像是在圖像的另一部分陰影):

enter image description here

什麼會導致這種情況,我該如何解決它?

OLD服務器顯示:

jpegtran -v 
libjpeg-turbo version 1.2.1 (build 20131209) 
Copyright (C) 1991-2010 Thomas G. Lane, Guido Vollbeding 
Copyright (C) 1999-2006 MIYASAKA Masaru 
Copyright (C) 2009 Pierre Ossman for Cendio AB 
Copyright (C) 2009-2012 D. R. Commander 
Copyright (C) 2009-2011 Nokia Corporation and/or its subsidiary(-ies) 

Emulating The Independent JPEG Group's libjpeg, version 6b 27-Mar-1998 

...和NEW服務器顯示:

jpegtran -v 
Independent JPEG Group's JPEGTRAN, version 9b 17-Jan-2016 
Copyright (C) 2016, Thomas G. Lane, Guido Vollbeding 

回答

0

通常情況下,我剛寫出來的問題和貼吧,我找到了解決辦法:)

http://www.imagemagick.org/discourse-server/viewtopic.php?t=21341#p87099

基本上,加上「-trim」的指令 - 所以它看起來像:

jpegtran -rotate 90 -trim test1.jpg > test2.jpg.tmp 
mv test2.jpg.tmp test2.jpg 
jpegtran -rotate 90 -trim test2.jpg > test3.jpg.tmp 
mv test3.jpg.tmp test3.jpg 

我只是嘗試了這一點,它按預期工作:)想我會在這裏發佈的遇到任何人遇到此問題!