Saltar al contenido

Agregar texto a imágenes con el comando ‘convertir’ de Linux

julio 4, 2021
FLWKZDXFQJZOBOK

Este instructivo le mostrará cómo agregar texto a una imagen usando el convertir comando en Linux. Un uso valioso de esto es colocar un pie de foto en una imagen para la documentación. Otro uso sería colocar una marca de tiempo en una imagen que se genera automáticamente mediante una cámara web.

Hay muchas opciones de conversión que puede utilizar para colocar texto en la imagen. Puede elegir el punto de partida para el texto (a través de una coordenada de alto / ancho), el color de relleno del texto, el tamaño en puntos del texto y la fuente utilizada. Este instructivo le mostrará cómo hacer todo esto.

El principal problema con este instructable es que tienes que hacer todo esto en el sistema operativo Linux. No tengo conocimiento de una utilidad como convertir en Microsoft Windows, pero ¿quién hace algo con una línea de comandos en Windows? Este instructivo está más dirigido a usuarios de Linux que desean sacar más provecho de su computadora. Si es un usuario de Windows y todavía tiene la tentación de leer este instructivo, puede tener la tentación de descargar e instalar Linux. Puede que escriba un instructivo sobre cómo hacer esto en una fecha posterior, pero si desea continuar con esto por su cuenta, puede ir a http://www.ubuntu.com/ e iniciar el proceso. Puede convertir su computadora en una máquina de arranque dual (realmente recomendaría que instale un segundo disco duro en su máquina, cualquier tamaño servirá). Por cierto, Linux es GRATIS, junto con todo lo que está disponible. Además, hasta ahora, es invulnerable a los virus.

Paso 1: la utilidad ‘convertir’ de Linux

Para realizar la tarea de agregar una etiqueta a una imagen, estaremos trabajando íntegramente dentro de una ventana de terminal de Linux. Windows llama a esto una ventana de comandos, pero rara vez se usa en Windows, excepto por los veteranos que la recuerdan de los días de DOS. Los usuarios de Linux lo utilizan mucho.

En primer lugar, abra una ventana de terminal. Con Ubuntu Linux, haz esto seleccionando Aplicaciones-> Terminal. Se abrirá una ventana con una línea de comandos. Lo colocará en su directorio personal.

Supongamos que la imagen con la que quieres jugar está en un subdirectorio de “imágenes”. Para llegar a ese subdirectorio, escriba “cd images”. Ejecute el comando “ls” para ver qué archivos hay. En mi caso, quiero trabajar con un archivo llamado “sunset1.jpg”.

También desea asegurarse de que el convertir El comando está disponible en su sistema. Una forma de hacer esto es emitir el comando “que convertir”. Si está disponible, su ubicación se imprimirá en la pantalla. En mi caso, está en “/ usr / bin / convert”. Otra forma de averiguar si está disponible, simplemente ejecute el comando “convertir” en la línea de comandos. Si está allí, se imprimirá una descripción larga del comando con todas las opciones disponibles. Si no está allí, verá “convertir: comando no encontrado”. Supongamos que está disponible.

Si emite el comando simple “convertir”, puede ver que es una herramienta muy poderosa con muchas capacidades. Puede encontrar una descripción más completa del comando de conversión en:
http://linux.about.com/od/commands/l/blcmdl1_convert.htm

Para nuestros propósitos, solo queremos usar el argumento “-draw” para escribir el título de la foto.

Paso 2: agregar un título

Agregar un títuloAgregar un títuloAgregar un título

Mi imagen original será un archivo llamado sunset1.jpg. Esta es una foto que tomé en un viaje reciente a Egipto y Jordania.
(Puedes ver todas las fotos en http://www.datasink.com/egypt2009.shtml ).
Mantendré la imagen original en su lugar y guardaré los cambios en los nuevos nombres de archivo por razones de seguridad.

La imagen original es una versión reducida de una imagen mucho más grande que era una imagen de 7 megapíxeles. Usé otra capacidad del comando “convertir” para cambiar su tamaño a una versión más pequeña para este instructable. Esta imagen es de 640×480. Eso significa que tiene 640 píxeles de ancho y 480 píxeles de alto. Usaremos esta información para determinar dónde queremos colocar el título.

Aquí hay un comando que produce sunset2.jpg:

convert -pointize 20 -fill yellow -draw ‘text 270,460 “Sunset over the Nile”‘ sunset1.jpg sunset2.jpg

Nota:
-puntos tamaño 20: este es el tamaño de la letra (hay 72 puntos por pulgada)

-fill yellow: este es el color de relleno del texto

-dibujar ‘texto 270,460 “Puesta de sol sobre el Nilo”‘: comience a 270 píxeles desde la izquierda y a 460 píxeles desde la parte superior

sunset1.jpg sunset2.jpg: utilizando el primer archivo como punto de partida, escriba en el segundo archivo

Existe una amplia gama de nombres de colores que puede especificar. Si ingresa el comando “showrgb”, verá la larga lista de nombres de colores disponibles (¿no es genial Linux?).

El argumento -draw debe tratarse con cuidado. Después -dibujar comienza el argumento con una comilla simple. Luego coloque las coordenadas horizontal y vertical de donde desea que comience el texto. Si coloca una coordenada que es más grande que cualquiera de las dimensiones, el texto no se mostrará. Finalmente, pones el título entre comillas dobles. Asegúrese de terminar todo el argumento con una comilla simple de cierre.

Los dos últimos argumentos (sunset1.jpg sunset2.jpg) indican que desea utilizar sunset1.jpg como punto de partida y desea escribir los resultados en sunset2.jpg. Si hubiera puesto sunset1.jpg sunset1.jpg, modificaría la copia original de la imagen.

Una vez que emita este comando, debería ver el archivo sunset2.jpg aparecer en su directorio de fotos. Si lo desea, puede poner tantos fragmentos de texto como desee en la imagen. Solo sigue agregándolos al archivo sunset2.jpg.

Tenga en cuenta que hay un argumento de fuente que también puede utilizar. Por ejemplo, puede insertar “-font helvetica” después de “convertir”. Su sistema Linux tiene una biblioteca completa de fuentes. Los míos se encuentran en “/var/lib/defoma/gs.d/dirs/fonts/”. Cuento más de 170 de ellos allí. En lugar de usar “-font helvetica”, podría usar algo como “-font /var/lib/defoma/gs.d/dirs/fonts/Loma-BoldOblique.ttf”. Es divertido jugar con ellos.

Puede utilizar el mapa de coordenadas para las coordenadas horizontales y verticales aproximadas que se aplicarían a una imagen de 640×480. El marcado de esta imagen se creó con la utilidad de conversión.

Paso 3: Automatización del etiquetado de imágenes

Automatización del etiquetado de imágenes

Ha visto cómo agrega manualmente un título a una imagen desde la línea de comando. Esto funciona bien si solo tiene algunas fotos con las que trabajar, pero puede ser bastante tedioso trabajar de esta manera. Si tiene muchas imágenes para procesar, es posible que desee utilizar algún tipo de lenguaje de secuencias de comandos en Linux. Una posibilidad es utilizar un script de shell. Lo que uso es un lenguaje de secuencias de comandos llamado Perl. Esto es lo que uso para todo tipo de scripts CGI en la web. Otras posibilidades son Java, C ++, PHP y Python. Independientemente de lo que use, debe poder crear una cadena de línea de comando y el shell para ejecutarla.

Una forma en que hago uso de esto es cuando pongo automáticamente la marca de tiempo en una imagen que mi cámara web genera una vez por minuto. En un script de Perl, formulo la marca de tiempo actual (fecha y hora) y luego la superpongo en la imagen actual. También puse la dirección de mi sitio web en la foto. Puedes ver que la imagen adjunta fue tomada el 2 de febrero a las 13:07. Tengo un script en mi computadora que se ejecuta una vez por minuto. Toma la imagen de la cámara web, inserta el nombre del sitio web y la marca de tiempo y luego la carga en mi sitio web. PUEDES ver esto en acción en http://www.datasink.com/webcam.shtml. Digo “puede” porque esto solo sucede cuando mi computadora está encendida. No lo dejo encendido durante la noche o cuando estoy fuera.

Si quisiera etiquetar un directorio completo de imágenes, crearía un script en Perl para hacerlo. Una forma de hacer esto es crear un archivo de texto que tenga la lista completa de imágenes en el directorio, una por línea. Después del nombre de la imagen en cada línea estaría el texto del título. Crearía un bucle que tomaría la etiqueta y la aplicaría a la imagen. Por supuesto, habría un problema de centrar la etiqueta horizontalmente. Probablemente tendría que calcular el ancho real del título y luego ajustar el argumento horizontal.

¡1 persona hizo este proyecto!

  • Agregar texto a imágenes con el comando 'convertir' de Linux
    ¡ShubhamB30 lo logró!

21 comentarios

0
Fernando Melo Medeiros
Fernando Melo Medeiros

Pregunta

Hace 2 años

Yo uso el sistema operativo Peppermint. He instalado “lucida calligraphy”, “comic sans ms” y verdana. Ahora, cuando uso “convertir”, no tengo acceso a ellos. Cuando intento cambiar la fuente, “convertir” no acepta. Entonces escribo “-font verdana” y no pasa nada más que mucha información que dice que me es imposible usar “verdana”. Y ni siquiera sé dónde está Verdana. Intenté encontrarlo pero no lo logré.

0
rhackenb
rhackenb

Respuesta hace 2 años

Me temo que no he tenido mucha experiencia en el uso de fuentes con esta aplicación.
Para ver las fuentes que conoce, emita el siguiente comando en una terminal:
convertir -lista de fuentes
Esto le dará una lista muy larga de las fuentes que puede manejar. Puede agregar un grep al comando como
convert -list fuente | grep cómic
Esto no encuentra nada con Comic (o comic).
Tal vez pueda encontrar una fuente que se acerque más a lo que está buscando.

0
Fernando Melo Medeiros
Fernando Melo Medeiros

Pregunta

Hace 2 años

¿Cómo elegir el idioma a utilizar?

0
Fernando Melo Medeiros
Fernando Melo Medeiros

Hace 2 años

¿Cómo puedo cambiar el idioma utilizado en los subtítulos?

0
JeesX
JeesX

Pregunta

Hace 3 años en Introducción

cómo agregar un título a una imagen usando el editor de texto

0
SatyanarayanaR1
SatyanarayanaR1

Hace 4 años

“convertir” es una información útil que sería útil para mi sitio www.eternessehyd.com

0
SatyanarayanaR1
SatyanarayanaR1

Hace 4 años

para estos usuarios de linux “convertir” es una información usul para estudiar, para más programas de capacitación en línea visite www.ittrainingsonline.com

0
MarketingT1
MarketingT1

Hace 4 años

Para los usuarios de Linux, “Convertir” es un buen comentario para agregar texto a las imágenes. También estamos explorando el sistema operativo Linux y compartiendo con nuestros estudiantes. Si alguien está buscando desarrollar habilidades en la administración de Linux, consulte este enlace.http: //www.kerneltraining.com/linux-admin-training/.

0
Chanio
Chanio

Hace 6 años en Introducción

¡Gracias! ¡Muy útil!

Una forma en que hago uso de esto es donde automáticamente pongo el
marca de tiempo en una imagen que mi cámara web genera una vez por minuto. En un perl
texto

También hay un Imagen :: Magia módulo perl que funciona igual en cualquier plataforma.

Si agrega subtítulos automáticamente, es posible que, en algunos casos, el color del texto se mezcle con un fondo. En este caso, es posible que desee utilizar la técnica de subtítulos 3D:

convertir-tamaño de punto 20 -llenar en blanco -dibujar ‘texto 268.458 “Puesta de sol sobre el Nilo”‘ -llenar en negro -dibujar ‘texto 272.462 “Puesta de sol sobre el Nilo”‘ -llenar en amarillo -dibujar ‘texto 270.460 …

close