Tag Archives: bash, cli, scripting

Прочети ми аватара

от Йордан Радунчев
лиценз CC BY

И все пак една солидна част от това което съставлява една съвременна личност е присъствието ѝ в Интернет - нейния живот онлайн в социални мрежи, форуми и прочие. Образа на тази онлайн самоличност, с който тя осъществя първоначален контакт с останалите виртуални самоличности, е малка картинка, често наричана аватар (понятието е в обръщение дълги години преди Холивуд да започне да го експлоатира). Ако в офлайн пространството посрещат по дрехите, в онлайн пространството посрещат по аватара. С него имате шанс да манипулирате първото впечатление за вас у непознатите и да предпоставите тяхното отношение към вас в подходяща за вас емоционална гама. Така че не подценявайте малката картинка. (Въййй... като като един Максим Бехар го докарах!)

Бидейки едно от първите неща, които другите "виждат" от вас в Интернет, аватара е добър начин да направите изявление, което да привлече вниманието им. Неговата площ по определение е ограничена, но една-две думи биха се събрали. От вас зависи да измислите кратко, но ярко и запомянащо се нещо. А Линукс ще ви помогне да го изпишете върху картинката, която сте избрали да представлява вашата ярка индивидуалност пред света.

Инструментите за целта са част от пакета imagemagick. Ако се интересувате от всички детайли и инструменти в него - www.imagemagick.org е добро начало. Тук няма да изпадам в подробности. Командите, които използвам и опциите са скрити в прост скрипт на bash - каква изненада - който взима от вас името на файла с картинката и текста, който искате да изпишете върху нея. Какъв контрол имате върху скрипта? Отваряте го с любимия си редактор (както пишат в посредствените сайтове за Линукс, кхъкхъ), и:

  • -background : тук можете да зададете цвета на фона ЗАД текста. ако искате да е прозрачен - използвайте transparent.

  • -gravity : този параметър определя къде върху картинката да се позиционира текста. Вариантите са northwest, north, northeast, west, center, east, southwest, south, southeast. Мисля, че е очевидно кой къде позиционира текста - горната част на картинката е north, дясната east, долната south, лявата west.

  • -font : Очевидно това е шрифта с който ще се изпише текста. Зависи от това какви шрифтове имате на системата си.

  • -fill : Цвета на текста.

  • -pointsize : Размера на шрифта, с който ще се изпише текста.

Променяйки тези параметри, можете да постигнете различни комбинации на текст и картинка. "Прочети ми аватара!" е онлайн еквивалента на култовата реплика "Read my lips!", не се притеснявайте да импровизирате и да сменяте често statement-а върху аватара си. С този прост скрипт това не е трудно. А можете и да го използвате в по-сложни сетъпи, които примерно на определен период от време автоматично четат statements от предварително подготвен файл, изписват ги върху аватар и ъпдейтват с него вашия профил в съответната социална мрежа, използвайки API функциите й. Пример за аватар "избродиран" с този скрипт e моя twitter: @yradunchev

Приятна игра!

#!/bin/bash

[[ "$#" -eq 2 ]] || { echo "Usage: ${0} pict.ure \"caption text\"" >&2; exit 1; }

convert \
-size $(identify -format %w ${1})x40 \
-background transparent \
-gravity center \
-font Helvetica-Bold \
-fill yellow \
-pointsize 40 \
caption:"${2}" ${1} \
+swap \
-gravity south \
-composite ${1%.*}_${2}.png