2013-03-13 18 views
8

ImageMagick đang sử dụng lượng bộ nhớ khổng lồ để chuyển đổi các tệp PDF - hơn 2GB. Lệnh tôi đang sử dụng là:ImageMagick sử dụng hơn 2GB bộ nhớ để chuyển đổi các tệp PDF

convert -density 250 -resize 1280x myfile.pdf -interlace plane -strip -quality 40 -alpha flatten myfolder/myfile-%03d.jpg 

Làm cách nào để cải thiện điều này? Tôi có giới hạn 1GB hoặc quy trình khác bị giết tàn nhẫn.):

Trả lời

15

Sử dụng tùy chọn giới hạn bộ nhớ.

Lựa chọn sử dụng đưa ra ở đây:

http://www.imagemagick.org/script/command-line-options.php#limit

-Giới hạn kiểu giá trị

Đặt giới hạn tài nguyên điểm ảnh bộ nhớ cache.

Chọn từ: area, disk, file, map, memory, threads, hoặc time.

Giá trị cho file là số lượng tệp. Các giới hạn khác bằng byte. Xác định đối số cho giới hạn bộ nhớ, bản đồ, khu vực và đĩa với tiền tố SI (.e.g 100MB).

Theo mặc định giới hạn là 768 tệp, 3GB vùng hình ảnh, bộ nhớ 1.5GiB, bản đồ bộ nhớ 3GiB và 18.45EB đĩa. Các giới hạn này được điều chỉnh liên quan đến các tài nguyên có sẵn trên máy tính của bạn nếu thông tin này có sẵn. Khi đạt đến bất kỳ giới hạn nào, ImageMagick sẽ thất bại trong một số thời trang nhưng cố gắng thực hiện các hành động bù trừ, nếu có thể. Ví dụ, bộ nhớ hạn sau đây:

-Giới hạn bộ nhớ 32MiB -Giới hạn bản đồ 64MiB

+1

này không hoạt động. Tôi nhận được một lỗi chỉ nó không thể phân bổ đủ nguồn lực. – MaiaVictor

+0

Đó là một tập hợp các giá trị mẫu từ tài liệu tùy chọn dòng lệnh của họ. Bạn có thể cần phải sử dụng giới hạn cao hơn mức sử dụng cụ thể, cài đặt chất lượng, v.v. Ví dụ: hãy thử thứ gì đó sẽ giữ giới hạn 1 GB mà bạn đã nêu trong câu hỏi ban đầu. Nếu vẫn cần nhiều hơn thế, bạn có thể phải giảm chất lượng chuyển đổi để phù hợp với lượng RAM bạn có thể sử dụng trong quá trình của mình. –

+1

Điều này phù hợp với tôi. chuyển đổi sẽ bị giết và tôi sẽ kinh nghiệm bị đóng băng liên tục khi gọi 'convert * .png out.pdf'. Việc đóng băng liên tục vẫn xảy ra nhưng ít nghiêm trọng hơn. Ngoài ra tôi đặt '-limit thread 2' –

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