2012-11-07 41 views
9

Tôi đang chuyển đổi các file PDF khác nhau được tải lên bởi người dùng cuối vào hình ảnh sử dụng lệnh sauImageMagick thay đổi màu sắc khi chuyển đổi PDF sang hình ảnh

-density 140 -limit memory 64MB -limit map 128MB [pdffile] page.png 

Dưới đây là kết quả. Ở bên phải, chúng tôi có PDF gốc và hình ảnh đầu ra bên trái. Như bạn có thể thấy các màu sắc khá khác nhau đáng chú ý.

Điều gì có thể gây ra điều này và cách khắc phục sự cố?

image

Trả lời

7

thử lệnh sau:

-density 140 -limit memory 64MB -limit map 128MB -colorspace RGB [pdffile] page.png 
+0

đã làm điều đó, cảm ơn –

+1

Trong trường hợp không hoạt động với bạn, hãy thử 'sRGB' thay vì' RGB'. – joeytwiddle

0

Sử dụng -resample tùy chọn:

-density 140 -resample 100 -limit memory 64MB -limit map 128MB [pdffile] page.png 
3

Edit: sau, tôi phát hiện ra rằng ImageMagick có thể làm điều đó tốt, tôi chỉ cần thiết để sử dụng -colorspace sRGB

lệnh cuối cùng của tôi là:

convert -density 560 -limit memory 64MB -limit map 128MB \ 
     -colorspace sRGB [pdffile] -scale 25% page.png 

Các oversampling và thu hẹp là để đối phó với người nghèo anti-aliasing đề cập dưới đây.

Trước khi tôi phát hiện ra rằng, đây là giải pháp trước đó của tôi ...


Trong trường hợp của tôi màu sắc được tạo ra bởi ImageMagick của convert đã bão hòa, khá giống như những người trong câu hỏi. Tôi đang cố gắng chuyển đổi this file bằng IM 6.7.7.10-6ubuntu3.

  • -resample 100 không có sự khác biệt.

  • -colorspace RGB dường như tạo ra độ bão hòa chính xác hơn, nhưng toàn bộ hình ảnh tối hơn mức cần thiết.

Tò mò, this suggestion sử dụng GhostScript thay vì ImageMagick cho việc chuyển đổi, được sản xuất rất gần với màu sắc chính xác:

gs -q -sDEVICE=png16m -dSubsetFonts=true -dEmbedAllFonts=true \ 
     -sOutputFile=page.png -r200 -dBATCH -dNOPAUSE [pdffile] 

(Các gợi ý ban đầu thông qua các tùy chọn -dUseCIEColor, nhưng trong trường hợp của tôi này xuất hiện để giảm gamma: pixel ánh sáng là tốt, nhưng các điểm ảnh tối quá tối, vì vậy tôi đã xóa nó.)

Sau đó, điều duy nhất làm phiền tôi là rằng chống răng cưa/cạnh đã được một chút off ở những nơi (đặc biệt là nhìn thấy trên các đường cong đi qua 45 độ). Để cải thiện điều đó, tôi đã tạo ra kết quả ở độ phân giải yêu cầu gấp bốn lần và sau đó thu nhỏ lại, làm cho các lỗi đó gần như không thể nhận thấy. Lưu ý rằng tôi đã phải sử dụng -scale của ImageMagick cho điều này và không phải-geometry hoặc -resize, để tránh bicubic ringing effects.

-1

Những hình ảnh sau cho thấy cách chống răng cưa cải thiện nếu bạn lấy mẫu ở độ phân giải cao hơn và sau đó giảm tỷ lệ.

Mặc dù 1120 có chất lượng tốt hơn một chút so với 560, nhưng phải mất một thời gian dài để chuyển đổi, vì vậy tôi có thể chọn 560 trong thời gian thích hợp: thỏa mãn chất lượng.

-colorspace sRGB -density 140

enter image description here

-colorspace sRGB -density 280 -scale 50%

enter image description here

-colorspace sRGB -density 420 -scale 33.3333%

enter image description here

-colorspace sRGB -density 560 -scale 25%

enter image description here

-colorspace sRGB -density 1120 -scale 12.5%

enter image description here

(Nó là dễ dàng hơn để thấy sự khác biệt nếu bạn tải hai hình ảnh cuối cùng và lật giữa chúng trong trình xem ảnh yêu thích của bạn. Hoặc cuộn lên danh sách hình ảnh này, thay vì xuống. Bạn có vẻ như chúng dần trở nên xấu xí hơn.)

Các vấn đề liên quan