Innehållsförteckning:

Lägg till text till bilder med Linux 'convert' -kommando: 3 steg
Lägg till text till bilder med Linux 'convert' -kommando: 3 steg

Video: Lägg till text till bilder med Linux 'convert' -kommando: 3 steg

Video: Lägg till text till bilder med Linux 'convert' -kommando: 3 steg
Video: Счастливая история слепой кошечки по имени Нюша 2024, Juli
Anonim
Lägg till text till bilder med Linux 'convert' -kommando
Lägg till text till bilder med Linux 'convert' -kommando

Denna instruerbara visar dig hur du lägger till text till en bild med kommandot convert i Linux. En värdefull användning av detta är att placera en bildtext på en bild för dokumentation. En annan användning skulle vara att placera en tidsstämpel på en bild som genereras automatiskt av en webbkamera. Det finns många konverteringsalternativ som du kan använda för att placera text på bilden. Du kan välja utgångspunkten för texten (via en höjd/bredd -koordinat), textens fyllningsfärg, textens punktstorlek och det teckensnitt som används. Den här instruerbara kommer att visa dig hur du gör allt detta. Den största fångsten med denna instruerbara är att du måste göra allt detta i Linux -operativsystemet. Jag är inte medveten om ett verktyg som konvertera i Microsoft Windows men vem gör någonsin något med en kommandorad i Windows? Denna instruerbara är mer riktad till Linux -användare som vill få ut mer av sin dator. Om du är en Windows -användare och fortfarande är frestad att läsa detta instruerbara kan du bli frestad att ladda ner och installera Linux. Jag kan skriva en instruktion om hur du gör detta vid ett senare tillfälle, men om du vill fortsätta på egen hand kan du gå till https://www.ubuntu.com/ och starta processen. Du kan förvandla din dator till en dubbelstartmaskin (jag rekommenderar verkligen att du installerar en andra hårddisk i din maskin-vilken storlek som helst gör). BTW, Linux är GRATIS, tillsammans med allt som är tillgängligt för det. Än så länge är det osårbart för virus.

Steg 1: Linux -konverteringsverktyget

För att utföra uppgiften att lägga till en etikett till en bild kommer vi att arbeta helt inom ett Linux -terminalfönster. Windows kallar detta ett kommandofönster men det används sällan i Windows förutom av oldtimers som kommer ihåg det från DOS -dagarna. Linux -användare använder det mycket. Först av allt, ta upp ett terminalfönster. Med Ubuntu Linux gör du detta genom att välja Program-> Terminal. Ett fönster öppnas med en kommandoradsfråga. Det kommer att placera dig i din hemkatalog. Låt oss anta att bilden du vill spela med finns i en "bilder" -katalog. För att komma till den underkatalogen, skriv "cd -bilder". Ge kommandot "ls" för att se vilka filer som finns. I mitt fall vill jag arbeta med en fil som heter "sunset1.jpg". Du vill också se till att kommandot convert är tillgängligt på ditt system. Ett sätt att göra detta är att utfärda kommandot "which convert". Om den är tillgänglig skrivs platsen ut på skärmen. I mitt fall är det på "/usr/bin/convert". Ett annat sätt att ta reda på om det är tillgängligt, bara utfärda kommandot "convert" på kommandoraden. Om det finns där kommer en lång beskrivning av kommandot att skrivas ut med alla tillgängliga alternativ. Om det inte finns där ser du "convert: command not found". Låt oss anta att det är tillgängligt. Om du ger det bara kommandot "convert" kan du se att det är ett mycket kraftfullt verktyg med många funktioner. En mer fullständig beskrivning av kommandot convert finns på: https://linux.about.com/od/commands/l/blcmdl1_convert.htm För våra syften vill vi bara använda argumentet "-draw" för att skriva bildtexten till fotot.

Steg 2: Lägga till en bildtext

Lägga till en bildtext
Lägga till en bildtext
Lägga till en bildtext
Lägga till en bildtext
Lägga till en bildtext
Lägga till en bildtext

Min originalbild kommer att vara en fil som heter sunset1.jpg. Detta är ett foto som jag tog på en resa till Egypten och Jordanien nyligen (Du kan se alla bilder på https://www.datasink.com/egypt2009.shtml). Jag kommer att hålla originalbilden på plats och spara ändringar i nya filnamn för säkerhets skull. Originalbilden är en nedskalad version av en mycket större bild som var en 7 megapixelbild. Jag använde en annan funktion av "convert" -kommandot för att ändra storlek på den till en mindre version för denna instruerbara. Den här bilden är 640x480. Det betyder att den är 640 pixlar bred och 480 pixlar hög. Vi kommer att använda denna information för att avgöra var vi vill placera bildtexten. Här är ett kommando som producerar sunset2.jpg: convert -pointsize 20 -fill yellow -draw 'text 270, 460 "Sunset over the Nile"' sunset1-j.webp

Steg 3: Automatisera märkning av bilder

Automatisera märkning av bilder
Automatisera märkning av bilder

Du har sett hur du manuellt lägger till en bildtext till en bild från kommandoraden. Det här fungerar bra om du bara har några foton att arbeta med, men det kan vara ganska tråkigt att arbeta på det här sättet. Om du har en hel del bilder att bearbeta kanske du vill använda något slags skriptspråk i Linux. En möjlighet är att använda ett skalskript. Det jag använder är ett skriptspråk som heter Perl. Detta är vad jag använder för alla typer av CGI -skript på webben. Andra möjligheter är Java, C ++, PHP och Python. Oavsett vad du använder måste du kunna skapa en kommandoradssträng och skalet ut för att köra den. Ett sätt som jag använder detta är där jag automatiskt sätter tidsstämpeln på en bild som min webbkamera genererar en gång i minuten. I ett Perl -skript formulerar jag den aktuella tidsstämpeln (datum och tid) och överlagrar den sedan på den aktuella bilden. Jag satte också min webbplatsadress på fotot. Du kan se att den bifogade bilden togs den 2 februari klockan 13:07. Jag har ett skript på min dator som körs en gång i minuten. Den tar bilden från webbkameran, infogar webbplatsens namn och tidsstämpel och laddar sedan upp den till min webbplats. Du KAN kunna se detta i aktion på https://www.datasink.com/webcam.shtml. Jag säger "kan" eftersom detta bara händer när min dator är påslagen. Jag låter den inte vara över natten eller när jag är borta. Om jag ville märka en hel bildkatalog skulle jag skapa ett Perl -skript för att göra det. Ett sätt att göra detta är att skapa en textfil som har hela listan med bilder i katalogen, en per rad. Efter bildnamnet på varje rad skulle texten i bildtexten vara. Jag skulle skapa en loop som skulle ta etiketten och applicera den på bilden. Naturligtvis skulle det vara ett problem att få etiketten centrerad horisontellt. Jag skulle förmodligen behöva beräkna bildens faktiska bredd och sedan justera det horisontella argumentet.

Rekommenderad: