Acerca de Netpbm

Netpbbm es un kit de herramientas para la manipulación de imágenes, incluyendo la conversión de imágenes entre una variedad de formatos diferentes. Hay más de 300 herramientas separadas en el paquete, incluyendo convertidores para unos 100 formatos gráficos. Ejemplos del tipo de manipulación de imágenes de las que estamos hablando son: Reducir una imagen en un 10%; Recortar la mitad superior de una imagen; Hacer un reflejo de la imagen; Crear una secuencia de imágenes que se desvanecen de una imagen a otra.

Para más detalles, consulte el manual de usuario.

El paquete está pensado para ser portátil a muchas plataformas. Ha sido probado, al menos una vez, bajo varios sistemas basados en Unix, Windows, Mac OS X, VMS y Amiga OS. El encargado del mantenimiento lo utiliza y construye sobre un sistema Linux.

El objetivo de Netpbm es ser una fuente única para todas las utilidades gráficas primitivas, especialmente los convertidores, que uno pueda necesitar. Así que si usted sabe de algún software libremente redistribuible en este sentido que aún no está en el paquete, debe traerlo a la atención del mantenedor de Netpbm para que pueda ser incluido en la próxima versión.

Netpbm no contiene herramientas interactivas y no tiene una interfaz gráfica. Los programas son útiles invocados desde un comando shell escrito, pero la mayoría también están orientados a ser utilizados internamente por un programa.

Obtener Netpbm

Vea Obtener Netpbm.

Construcción e instalación

Las instrucciones para construir e instalar Netpbm están en el árbol de fuentes de Netpbm en el archivo doc/INSTALL.

Soporte

No existe una lista de correo ni un sistema de seguimiento para los informes de errores y las solicitudes de ayuda. Sólo tiene que enviar un correo electrónico al encargado del mantenimiento, Bryan Henderson, a [email protected] Bryan responde con bastante rapidez y fiabilidad.

Por favor, compruebe primero el de su serie de versiones para ver si el error ya ha sido corregido. La opción -- version en la mayoría de los programas de Netpbm le indica qué versión está utilizando.

No hay un sistema de seguimiento de errores porque no hay suficientes informes de errores para que valga la pena. El responsable responde a cada informe de fallo enviado por correo electrónico inmediatamente.

Tenga en cuenta que, en general, no existe ningún fallo que se haya notificado pero que no tenga una corrección en el historial de cambios. Esto se debe a que cuando se informa de un fallo, hay una nueva versión en unos pocos días para corregirlo (o un cambio en la documentación que hace que no sea un fallo).

Desarrollo

Netpbbm se mantiene y distribuye a través de un  proyecto de Sourceforge.

Requisitos previos

 Si tiene problemas para obtener, construir o instalar los prerrequisitos, el responsable de Netpbm quiere saberlo. Ya que los usa él mismo, puede ayudarte. Y si hay un problema con un paquete de prerrequisitos que su propio mantenedor no puede arreglar, puede ser posible enviar una solución con Netpbm.

TPara construir e instalar Netpbm, necesita GNU Make y un intérprete de Perl. Puede obtener GNU Make de  The GNU Project y Perl de CPAN. Es posible sortear el requisito de Perl ejecutando algunos de los pasos en una máquina diferente que tenga Perl y haciendo otros manualmente. No hay sustituto práctico para GNU Make.

El paquete de Netpbm en su conjunto utiliza más de media docena de librerías externas, pero no es necesario que las instale todas para poder construir Netpbm. Cada biblioteca es utilizada por unos pocos programas de Netpbm, y si no tiene la biblioteca, la compilación de Netpbm omitirá automáticamente la compilación de esas partes. Véase la Lista de Prerequisitos.

pstopnm (el conversor de imágenes Postscript a PNM) requiere instalado con el nombre gs en su

comando ruta de búsqueda

Cualquier compilador de C que implemente el estándar C89 debería funcionar. Sin embargo, Gcc 2.96 está roto de tal manera que no puede compilar Netpbm.

Netpbm requiere una biblioteca de tiempo de ejecución C (libc) que implemente la especificación Single Unix, versión 2 (ca. 1997). Algunos compiladores o bibliotecas de tiempo de ejecución de C, incluyendo MinGW, implementan incorrectamente macros de prueba de características y los archivos de cabecera de la biblioteca o Netpbm deben ser modificados ligeramente para que el código pueda ser compilado.

Netpbbm requiere alrededor de 6 MiB de espacio en disco, sin incluir documentación. La documentación es de 2 MiB, pero no es necesario que la instale; sólo tiene que acceder a la copia pública.

Usabilidad legal

Netpbbm consiste en código aportado por muchos autores y la mayoría de ellos, o en algunos casos sus empleadores, tienen derechos de autor en las partes que escribieron. Todos los autores le han concedido el derecho de usar y distribuir su código sin tener que pagarles, siempre y cuando cumpla algunos requisitos simples. Todas estas licencias públicas son licencias de "código abierto" tal y como las define SourceForge (SourceForge lo convierte en una condición para distribuir el código).

Por lo general, puede encontrar una oferta de una licencia de copyright en los archivos de código fuente. Las licencias GPL, BSD, MIT y BSD se encuentran entre las que se ofrecen. Steve McIntyre hizo una encuesta del código fuente en 2001 con el propósito de determinar qué se podía incluir en Debian y resumió lo que encontró en el archivo copyright_summary en el árbol de fuentes.

Por supuesto, con Netpbm como con la mayoría del software de código abierto, no puedes estar seguro de quién escribió el código o si las ofertas de licencia que encuentras son realmente de las personas que tienen los derechos de autor. Alguien en algún momento puede haber copiado código sin permiso y contribuido con él a Netpbm, lo que significa que si lo copia aún más, podría deberle al propietario de los derechos de autor derechos de autor. Sin embargo, el riesgo de esto debería ser pequeño porque ninguna contribución a Netpbm es lo suficientemente valiosa como para que el propietario de los derechos de autor se moleste en hacer cumplir los derechos de autor.

El mantenedor de Netpbm no ha recibido ninguna garantía de que el código tenga licencia y no ofrece ninguna garantía de este tipo a nadie más.

Podría haber patentes practicadas por el código Netpbm, lo que haría que un usuario del código sea responsable de los derechos de autor para el titular de la patente. El mantenedor de Netpbm no tiene licencia para usar ninguna patente. No hay patentes activas conocidas por el mantenedor de Netpbm que cubran Netpbm, pero solía haberlas, detalladas en el archivo patent_summary en el árbol de fuentes.

Uso de Netpbm en un sitio web

Muchas personas utilizan Netpbm para realizar funciones gráficas en un sitio web. Tienen scripts CGI que invocan programas Netpbm para procesar imágenes y mostrarlas en una página web. Gallery y 4Images son dos paquetes de software para sitios web que dependen de Netpbm para la manipulación de gráficos.

La instalación de Netpbm requiere diferentes habilidades y acceso al sistema que la instalación de la mayoría de los otros software de sitios web. Debe ser capaz de compilar código C para la máquina del servidor web y tener una comprensión básica de cómo se organizan los archivos y cómo se ejecutan los programas en el servidor web. El diagnóstico de los problemas inevitables suele requerir acceso al servidor web mediante shell.

Netpbm es un software básico de gráficos que debe ser suministrado por cualquier servicio de alojamiento web. Si no está ya en su servidor web, debe solicitar al administrador del sistema que lo añada.

Popularidad

La popularidad de Netpbm es mayormente histórica. Hubo un tiempo en el que era el principal paquete de procesamiento de gráficos del mundo, pero ese fue un tiempo en el que los ordenadores eran utilizados principalmente por ingenieros y científicos, gente que se sentía cómoda escribiendo comandos de shell y programas de escritura. Era una época en la que las interfaces gráficas de usuario eran débiles y poco frecuentes. Hoy en día, algunos de los más de 300 programas de Netpbm son bastante populares, pero la mayoría de ellos son utilizados principalmente por programas muy antiguos e incluso por programadores de mayor edad. Una persona es más propensa a recortar una imagen hoy en día utilizando Adobe Photoshop o Gimp que el pnmcrop de Netpbm o convertir de GIF a PNG con ImageMagick.

Otra razón para la disminución de la popularidad es que la característica principal de Netpbm cuando era nuevo era su capacidad para convertir entre los formatos gráficos. Todos menos ocho de los 100 formatos que Netpbm conoce se ven sólo en museos hoy en día.

Nada de esto significa que Netpbm esté obsoleto. Entre el nicho de los ingenieros que aprecian el diseño modular, la reutilización de código y la construcción de cosas a partir de bloques de construcción, Netpbm no tiene igual. Estas personas continúan usándolo en grandes cantidades, y hay nuevas versiones, generalmente con nuevas características, cada tres meses.

En junio de 2012, el desarrollador y usuario de Netpbm Akira F Urushibata hizo un estudio del sistema operativo Fedora basado en Linux y encontró que 114 programas de Netpbm fueron usados hasta cierto punto en al menos un paquete de Fedora. Esto incluye convertidores para 34 formatos gráficos.

Los diez programas de Netpbm más populares (por el número de paquetes que lo usan) en Fedora fueron, en orden de los más populares:

  1. pnmtopng/pngtopnm (convierte a/para PNG)
  2. pnmtops (Convierte a Postscript)
  3. ppmtogif/giftopnm (Convierte a/de GIF)
  4. pnmquant (Cuantiza los colores)
  5. pamscale (Escala imágenes - expande y encoge imágenes)
  6. tifftopnm/pnmtotiff (Convierte a/desde TIFF)
  7. jpegtopnm (Convierte a JFIF)
  8. ppmtopgm (Convierte color a escala de grises)
  9. pamcut (Corta imagenes)
  10. bmptopnm/ppmtobmp (convierte a/desde BMP).

Los diez convertidores más populares, sin contar los convertidores, fueron:

  1. pnmquant (Cuantiza los colores)
  2. pamscale (Escala imágenes - expande y encoge imágenes)
  3. pamcut (Corta imagenes)
  4. pamfile (dimensiones de una imagen)
  5. pnmcrop (Elimina bordes de las imágenes)
  6. pamflip (Voltea las imágenes de varias maneras)
  7. pnminvert (cambia negro por blanco)
  8. pnmrotate (rota imágenes)
  9. ppmdist (Mejora el contraste)
  10. ppmnorm (Mejora el contraste)

Vale la pena notar que las dependencias de paquetes reales muestran mucho menos uso de Netpbm de lo que estos números indican. Este estudio se realizó buscando nombres de programas Netpbm en los archivos de los paquetes.

Los recuentos de descargas no son posibles porque Netpbm distribuye principalmente a través de la caja de Subversion.

Historia

La historia de Netpbm se remonta a 1988. Brevemente: Netpbm reemplaza al ampliamente difundido paquete Pbmplus (publicado el 10 de diciembre de 1991). Se habían realizado innumerables mejoras y adiciones. Después de la última versión de Pbmplus, una gran cantidad de filtros adicionales comenzaron a circular en la red, lo que era una situación bastante novedosa en ese momento. El objetivo de Netpbm era reunirlos y convertirlos en un paquete, de ahí el nombre "Netpbm". Este trabajo ha sido realizado por programadores de todo el mundo.

Para obtener información detallada sobre el historial de cambios de código, consulte change.html. Desde aquí, puede saber si se ha corregido un determinado error desde la versión en la que lo ve, y qué nuevas funciones hay en las versiones más recientes que las que tiene.