Link to original source: http://netpbm.sourceforge.net/

Netpbm là một bộ công cụ để thao tác các hình ảnh đồ họa, bao gồm chuyển đổi hình ảnh giữa nhiều định dạng khác nhau. Hiện có hơn 300 công cụ riêng biệt trong gói bao gồm bộ chuyển đổi cho khoảng 100 định dạng đồ họa. Ví dụ về loại thao tác hình ảnh mà chúng ta đang nói đến là: Thu hẹp hình ảnh 10%; Cắt nửa trên của hình ảnh; Tạo hình ảnh phản chiếu; Tạo một chuỗi hình ảnh mờ dần từ hình ảnh này sang hình ảnh khác. 

Để biết chi tiết, hãy xem hướng dẫn sử dụng.

Các gói phần mềm được dự định để được di động cho nhiều nền tảng. Nó có, ít nhất là tại một thời gian, đã được thử nghiệm theo nhiều hệ thống dựa trên Unix, Windows, Mac OS X, VMS và Amiga OS. Người duy trì sử dụng và xây dựng nó trên một hệ thống Linux.

Mục tiêu của Netpbm là trở thành một nguồn duy nhất cho tất cả các tiện ích đồ họa nguyên thủy, đặc biệt là các trình chuyển đổi, có thể cần. Vì vậy, nếu bạn biết một số phần mềm tự do phân phối lại trong tĩnh mạch này chưa có trong gói, bạn nên mang nó đến sự chú ý của người bảo trì Netpbm để nó có thể được đưa vào bản phát hành kế tiếp. 

Netpbm không chứa các công cụ tương tác và không có giao diện đồ họa. Các chương trình được gọi hữu ích từ một lệnh shell đã gõ, nhưng hầu hết cũng được định hướng theo hướng được sử dụng trong nội bộ bởi một chương trình.

Bắt Netpbm

Xem Bắt Netpbm.

Xây dựng và cài đặt

Hướng dẫn xây dựng và cài đặt Netpbm nằm trong cây nguồn Netpbm trong tệp doc / INSTALL.

Ủng hộ

Không có danh sách gửi thư hoặc hệ thống theo dõi cho các báo cáo lỗi và yêu cầu trợ giúp. Chỉ cần gửi email đến người bảo trì, Bryan Henderson, tại bryanh@giraffe-data.com. Bryan đáp ứng khá nhanh chóng và đáng tin cậy. 

Vui lòng kiểm tra lịch sử thay đổi cho chuỗi phát hành của bạn trước để xem liệu lỗi đã được sửa chưa. Tùy chọn –version trên hầu hết các chương trình Netpbm cho bạn biết bạn đang sử dụng bản phát hành nào.

Không có hệ thống theo dõi lỗi vì không có đủ báo cáo lỗi để làm cho nó đáng giá. Người duy trì phản hồi từng báo cáo lỗi được gửi qua email ngay lập tức.

Lưu ý rằng thường không có lỗi nào như một lỗi đã được báo cáo nhưng không có lỗi được liệt kê trong lịch sử thay đổi. Đó là bởi vì khi một lỗi được báo cáo, có một bản phát hành mới trong vòng vài ngày để sửa lỗi đó (hoặc thay đổi tài liệu khiến nó không phải là lỗi).

Phát triển

Netpbm được duy trì và phân phối thông qua một dự án Sourceforge.

Điều kiện tiên quyết

Nếu bạn gặp khó khăn trong việc xây dựng, hoặc cài đặt các điều kiện tiên quyết, người bảo trì Netpbm muốn biết. Vì anh ta tự mình sử dụng, anh ấy có thể giúp bạn. Và nếu có một vấn đề với một gói tiên quyết mà người duy trì riêng của nó không thể sửa chữa, nó có thể được gửi một bản sửa lỗi với Netpbm.

Để xây dựng và cài đặt Netpbm, bạn cần trình biên dịch GNU Make và Perl. Bạn có thể lấy GNU Make từ GNU Project và Perl từ CPAN. Có thể để có được xung quanh các yêu cầu Perl bằng cách chạy một số các bước trên một máy khác nhau có Perl và làm những người khác bằng tay. Không có thay thế thực tế cho GNU Make.

Gói Netpbm như một toàn bộ sử dụng hơn một nửa tá thư viện bên ngoài, nhưng bạn không nhất thiết phải cài đặt tất cả chúng để xây dựng Netpbm. Mỗi thư viện được sử dụng bởi một vài chương trình Netpbm, và nếu bạn không có thư viện, xây dựng Netpbm sẽ tự động bỏ qua việc xây dựng các phần đó. Xem Danh sách điều kiện tiên quyết.

pstopnm (công cụ chuyển đổi hình ảnh Postscript sang PNM) yêu cầu Ghostscript (được cài đặt với tên gs trong đường dẫn tìm kiếm lệnh của bạn). Và nó đòi hỏi đặc biệt là Ghostscript được xây dựng với các trình điều khiển thiết bị PNM có liên quan.

Khá nhiều trình biên dịch C hoạt động ngoại trừ Gcc 2.96.

 Netpbm yêu cầu khoảng 6 MiB không gian đĩa, không bao gồm tài liệu. Tài liệu này là 2 MiB, nhưng bạn không nhất thiết phải cài đặt nó; bạn chỉ có thể truy cập vào bản sao công khai.

 Khả năng sử dụng hợp pháp

Netpbm bao gồm mã được nhiều tác giả đóng góp và hầu hết trong số họ có bản quyền trong ít nhất là mã họ đã viết và có thể các phần lớn hơn bắt nguồn từ nó. Tất cả các tác giả đã cấp cho bạn quyền sử dụng và phân phối mã của họ mà không phải trả tiền, miễn là bạn đáp ứng một số yêu cầu đơn giản. Tất cả các giấy phép công khai này là giấy phép “nguồn mở” theo định nghĩa của SourceForge (SourceForge làm cho điều kiện phân phối mã).

Thông thường, bạn có thể tìm thấy đề nghị cấp phép bản quyền trong các tệp mã nguồn. Giấy phép GPL, BSD, MIT và BSD nằm trong số những giấy phép được cung cấp. Steve McIntyre đã thực hiện một cuộc khảo sát mã nguồn vào năm 2001 với mục đích xác định những gì có thể được đưa vào Debian và tóm tắt những gì ông tìm thấy trong file copyright_summary trong cây nguồn. 

Tất nhiên, với Netpbm như với hầu hết các phần mềm mã nguồn mở, bạn không thể chắc chắn ai đã viết mã hoặc nếu giấy phép cung cấp bạn tìm thấy thực sự là từ những người giữ bản quyền. Một người nào đó tại một thời điểm nào đó có thể đã sao chép mã mà không được phép và đóng góp nó cho Netpbm, có nghĩa là nếu bạn sao chép nó thêm, bạn có thể nợ tiền bản quyền của chủ sở hữu bản quyền. Tuy nhiên, rủi ro của điều này nên nhỏ vì không có đóng góp cho Netpbm có giá trị đủ để một chủ bản quyền như vậy sẽ làm phiền việc thực thi bản quyền.

Người bảo trì Netpbm chưa nhận được bất kỳ sự bảo đảm nào rằng mã được cấp phép và không cung cấp bất kỳ bảo hành nào như vậy cho bất kỳ ai khác.

Có thể có bằng sáng chế được thực hiện bởi mã Netpbm, điều này sẽ làm cho người dùng của mã chịu trách nhiệm về tiền bản quyền đối với người nắm giữ bằng sáng chế. Người bảo trì Netpbm không có giấy phép để sử dụng bất kỳ bằng sáng chế nào. Những gì được biết về các bằng sáng chế ảnh hưởng đến Netpbm là trong tập tin patent_summary trong cây nguồn.

 Sử dụng Netpbm trong trang web

Nhiều người sử dụng Netpbm để thực hiện các chức năng đồ họa trong một trang web. Họ có các script CGI gọi các chương trình Netpbm để xử lý hình ảnh để hiển thị trên một trang web. Gallery và 4Images là hai gói phần mềm trang web dựa trên Netpbm để thao tác đồ họa.

Cài đặt Netpbm yêu cầu các kỹ năng và quyền truy cập hệ thống khác với việc cài đặt hầu hết các phần mềm trang web khác. Bạn phải có khả năng biên dịch mã C cho máy chủ web và có một sự hiểu biết cơ bản về cách các tệp được tổ chức và các chương trình chạy trên máy chủ web. Việc chẩn đoán các sự cố không thể tránh khỏi thường yêu cầu truy cập trình bao vào máy chủ web.

Netpbm là phần mềm đồ họa cơ bản cần được cung cấp bởi bất kỳ dịch vụ lưu trữ web nào. Nếu nó chưa có trên máy chủ web của bạn, bạn nên yêu cầu quản trị viên hệ thống thêm nó.

Mức độ phổ biến

Sự phổ biến của Netpbm chủ yếu là lịch sử. Có một thời gian khi nó là gói xử lý đồ họa hàng đầu trên thế giới, nhưng đó là thời điểm máy tính chủ yếu được các kỹ sư và nhà khoa học sử dụng – những người thoải mái gõ lệnh shell và viết chương trình. Đó là thời điểm giao diện người dùng đồ họa yếu và hiếm. Ngày nay, một vài trong số 300 chương trình của Netpbm khá phổ biến, nhưng hầu hết chúng được sử dụng chủ yếu bởi các chương trình rất cũ và thậm chí là các lập trình viên cũ hơn. Một người có nhiều khả năng cắt một hình ảnh ngày hôm nay bằng cách sử dụng Adobe Photoshop hoặc GIMP hơn pnmcrop của Netpbm hoặc chuyển đổi từ GIF sang PNG bằng ImageMagick.

Một lý do khác cho sự suy giảm phổ biến là tính năng chính của Netpbm khi nó mới là khả năng chuyển đổi giữa các định dạng đồ họa. Tất cả trừ tám trong số 100 định dạng mà Netpbm biết chỉ được nhìn thấy trong các bảo tàng ngày nay.

Không có điều này có nghĩa là Netpbm đã lỗi thời. Trong số các kỹ sư thích đánh giá thiết kế mô-đun, tái sử dụng mã và xây dựng mọi thứ từ khối xây dựng, Netpbm không bằng nhau. Những người này tiếp tục sử dụng nó với số lượng lớn và có các bản phát hành mới, thường chứa các tính năng mới, cứ ba tháng một lần. 

Vào tháng 6 năm 2012, nhà phát triển và người dùng Netpbm Akira F Urushibata đã nghiên cứu về hệ điều hành Fedora dựa trên Linux và thấy rằng 114 chương trình Netpbm đã được sử dụng ở một mức độ nào đó trong ít nhất một gói Fedora. Điều này bao gồm bộ chuyển đổi cho 34 định dạng đồ họa.

Mười phổ biến nhất (theo số gói sử dụng nó) Các chương trình Netpbm trong Fedora, theo thứ tự phổ biến nhất:

  1. pnmtopng / pngtopnm (Chuyển đổi thành / từ PNG)
  2. pnmtops (Chuyển đổi thành Postscript)
  3. ppmtogif / giftopnm (Chuyển đổi thành / từ GIF)
  4. pnmquant (Định lượng màu)
  5. pamscale (Cân hình ảnh – mở rộng và thu nhỏ hình ảnh)
  6. tifftopnm / pnmtotiff (Chuyển đổi thành / từ TIFF)
  7. jpegtopnm (Chuyển đổi thành JFIF)
  8. ppmtopgm (Chuyển đổi màu thành thang độ xám)
  9. pamcut (hình ảnh cây trồng)
  10. bmptopnm / ppmtobmp (Chuyển đổi thành / từ BMP).

 Mười công cụ chuyển đổi không tính phổ biến nhất là:

  1. pnmquant (Định lượng màu)
  2. pamscale (Cân hình ảnh – mở rộng và thu nhỏ hình ảnh)
  3. pamcut (hình ảnh cây trồng)
  4. pamfile (Kích thước báo cáo của hình ảnh)
  5. pnmcrop (Xóa đường viền khỏi hình ảnh)
  6. pamflip (Flips hình ảnh theo nhiều cách khác nhau)
  7. pnminvert (trao đổi màu đen cho màu trắng)
  8. pnmrotate (Xoay hình ảnh)
  9. ppmdist (Tăng cường độ tương phản)
  10. ppmnorm (Tăng cường độ tương phản)

Cần lưu ý rằng các gói phụ thuộc thực tế cho thấy việc sử dụng Netpbm ít hơn nhiều so với những con số này. Nghiên cứu này được thực hiện bằng cách tìm kiếm tên của các chương trình Netpbm trong các tệp của gói.

Không thể tải xuống vì Netpbm phân phối chủ yếu thông qua thanh toán Subversion.

Lịch sử

Lịch sử của Netpbm kéo dài trở lại năm 1988. Tóm lại: Netpbm thay thế gói Pbmplus lan rộng rộng rãi (phát hành ngày 10 tháng 12 năm 1991). Vô số cải tiến và bổ sung đã được thực hiện. Sau khi phát hành Pbmplus mới nhất, nhiều bộ lọc bổ sung bắt đầu lưu hành trên mạng, đó là một tình trạng khá mới lạ vào thời điểm đó. Mục đích của Netpbm là thu thập chúng và biến chúng thành một gói, do đó có tên là “Netpbm”. Công việc này đã được thực hiện bởi các lập trình viên trên khắp thế giới.

Để biết lịch sử thay đổi mã chi tiết, hãy xem change.html. Từ đây, bạn có thể biết một lỗi nào đó đã được khắc phục hay chưa kể từ khi bạn phát hành nó và các tính năng mới có trong các bản phát hành mới hơn so với những gì bạn có.