{"id":53722,"date":"2021-10-27T03:01:08","date_gmt":"2021-10-26T17:01:08","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/ITblog\/?p=53722"},"modified":"2021-10-26T12:48:58","modified_gmt":"2021-10-26T02:48:58","slug":"imagemagick-vignette-primer-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/imagemagick-vignette-primer-tutorial\/","title":{"rendered":"ImageMagick Vignette Primer Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif\"><img decoding=\"async\" id='qmgti' style=\"float:left; border: 15px solid pink;\" alt=\"ImageMagick Vignette Primer Tutorial\"  src=\"http:\/\/www.rjmprogramming.com.au\/Mac\/pet_photos_jpg_to_quality_20_jpg_1100_820_180_vignette_50.gif\" title=\"ImageMagick Vignette Primer Tutorial\" \/><\/a><p class=\"wp-caption-text\">ImageMagick Vignette Primer Tutorial<\/p><\/div>\n<p>Continuing on with the  <a target=_blank href='http:\/\/imagemagick.org\/index.php'>ImageMagick<\/a> batch processing &#8220;mogrify&#8221; ideas of yesterday&#8217;s <a target=_blank title='ImageMagick Batch Image Conversion Affine Transformation Tutorial' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/imagemagick-batch-image-conversion-affine-transformation-tutorial\/'>ImageMagick Batch Image Conversion Affine Transformation Tutorial<\/a> and the <a target=_blank title='Vignette info from Wikipedia ... thanks' href='https:\/\/en.wikipedia.org\/wiki\/Vignetting'>&#8220;vignette&#8221;<\/a> image editing ideas of <a title='Gimp Vignette Primer Tutorial' href='#gvpt'>Gimp Vignette Primer Tutorial<\/a>, as below, today, we took some pet photos with an iPad&#8217;s Camera app and shared them off the Photos app via two Mail sharing option emails containing seven attachments each.  Using an iPad, the JPEG &#8220;jpg&#8221; output files were too big for our inhouse <a target=_blank href='http:\/\/www.rjmprogramming.com.au\/PHP\/animegif\/tutorial_to_animated_gif.php' title='Animated GIF Creator'>Animated GIF Creator<\/a> PHP web application to handle, and so to perform the &#8230;<\/p>\n<ul>\n<li>animated GIF presentation, off these downloaded email photo attachments &#8230; and along the way &#8230;<\/li>\n<li>quality adjusted them (yes, &#8220;mogrify&#8221; does not stuff JPG to JPG conversions, and we used &#8220;mogrify&#8221; <i>-quality 20%<\/i> switch here) &#8230; and &#8230;<\/li>\n<li>rotate them 180 degrees (&#8220;mogrify&#8221; uses switches <i>-affine -1,0,0,-1,0,0 -transform +repage<\/i> here) &#8230; and &#8230;<\/li>\n<li>vignette 50% (&#8220;mogrify&#8221; uses switch <i>-vignette 50<\/i> here)<\/li>\n<\/ul>\n<p> &#8230; on the way to compiling into an animated GIF image, and we turned to ImageMagick again, using its affine transformation talents, along with its awesome vignetting talents &#8230;<\/p>\n<form title='mogrify -quality 20% petvignettes12\/*.jpg -comment \"Straight off iPad 3x smaller to 1100x820 pet_photos_jpg_to_quality_20_jpg_1100_820.gif\" ; mogrify -quality 20% -affine -1,0,0,-1,0,0 -transform +repage petvignettes12\/*.jpg -comment \"iPad 3x smaller to 1100x820 pet_photos_jpg_to_quality_20_jpg_1100_820_180.gif copied to pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif\" ; mogrify -quality 20% -affine -1,0,0,-1,0,0 -transform +repage -vignette 50 petvignettes12\/*.jpg -comment \"iPad 3x smaller to 1100x820 pet_photos_jpg_to_quality_20_jpg_1100_820_180_vignette_50.gif\" ; mogrify -vignette 50 petvignettes12\/*_copy.gif -comment \"pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif\"\n' target=vfiframe method=GET onsubmit=\"if (document.getElementById('vfsel').value != '') { document.getElementById('vfiframe').style.display='block';    document.getElementById('vfiframe').src='\/\/www.rjmprogramming.com.au\/Mac\/' + document.getElementById('vfsel').value.toLowerCase(); return false; } return false;\" action='.\/'><br \/>\n<select style='font-size:8px;' onchange=\"document.getElementById('vfiframe').title=this.innerHTML.split(String.fromCharCode(34) + this.value + String.fromCharCode(34) + '')[1].substring(1).split('<')[0]; document.getElementById('vdisplay').click();\" size=5 name=vfsel id=vfsel><option value=\"pet_photos_jpg_to_quality_20_jpg_1100_820.GIF\">Please choose an ImageMagick batch mogrify JPG to JPG with Affine Transformation and\/or Vignetting command below<\/option><option value=\"pet_photos_jpg_to_quality_20_jpg_1100_820.gif\">mogrify -quality 20% petvignettes12\/*.jpg -comment &#8220;Straight off iPad 3x smaller to 1100&#215;820 pet_photos_jpg_to_quality_20_jpg_1100_820.gif&#8221;<\/option><option value=\"pet_photos_jpg_to_quality_20_jpg_1100_820_180.gif\">mogrify -quality 20% -affine -1,0,0,-1,0,0 -transform +repage petvignettes12\/*.jpg -comment &#8220;iPad 3x smaller to 1100&#215;820 pet_photos_jpg_to_quality_20_jpg_1100_820_180.gif copied to pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif&#8221;<\/option><option value=\"pet_photos_jpg_to_quality_20_jpg_1100_820_180_vignette_50.gif\">mogrify -quality 20% -affine -1,0,0,-1,0,0 -transform +repage -vignette 50 petvignettes12\/*.jpg -comment &#8220;iPad 3x smaller to 1100&#215;820 pet_photos_jpg_to_quality_20_jpg_1100_820_180_vignette_50.gif&#8221;<\/option><option value=\"pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif\">mogrify -vignette 50 petvignettes12\/*_copy.gif -comment &#8220;pet_photos_jpg_to_quality_20_jpg_1100_820_180_copy.gif&#8221;<\/option><\/select><br \/>\n<input type=submit value=Display id=vdisplay style=display:none;><\/input><br \/>\n<\/form>\n<p><img name=vfiframe id=vfiframe style=display:block;width:100%;height:100% src=http:\/\/www.rjmprogramming.com.au\/Mac\/pet_photos_jpg_to_quality_20_jpg_1100_820.gif title='mogrify -quality 20% petvignettes12\/*.jpg -comment \"Straight off iPad 3x smaller to 1100x820 pet_photos_jpg_to_quality_20_jpg_1100_820.gif\"'><\/img><\/p>\n<p> &#8230; where the last two dropdown options will be similar, the last showing the input image into ImageMagick can be an animated GIF that is truely treated like an animated GIF.<\/p>\n<p>By the way, should you be interested in photo orientation off a mobile device camera, have a read of <a target=_blank title='PHP Exif Image Information Revisit Tutorial' href='https:\/\/www.rjmprogramming.com.au\/ITblog\/php-exif-image-information-revisit-tutorial\/'>PHP Exif Image Information Revisit Tutorial<\/a>.<\/p>\n<p>Nala and Luna and Charlie bid you a fond farewell!<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=_blank  href='\/\/www.rjmprogramming.com.au\/ITblog\/imagemagick-vignette-primer-tutorial\/'>ImageMagick Vignette Primer Tutorial<\/a>.<\/p-->\n<hr>\n<p id='gvpt'>Previous relevant <a target=_blank title='Gimp Vignette Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/gimp-vignette-primer-tutorial\/'>Gimp Vignette Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Vignette\/\"><img decoding=\"async\" id='qmgti' style=\"float:left; border: 15px solid pink;\" alt=\"Gimp Vignette Primer Tutorial\"  src=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Vignette\/Vignette.jpg\" title=\"Gimp Vignette Primer Tutorial\" \/><\/a><p class=\"wp-caption-text\">Gimp Vignette Primer Tutorial<\/p><\/div>\n<p>The last time we talked about the miraculous, redolent and amazing image editor called <a target=_blank href='http:\/\/www.gimp.org' title='Gimp, or GIMP'>Gimp<\/a> am sure there was someone in a shower &#8230; it stands to reason &#8230; and one of those showerers, surely, would have been singing <a target=_blank title='The Gimp Song' href='https:\/\/www.youtube.com\/watch?v=NCR_klyeqCc'>The Gimp Song<\/a> &#8230; and if not &#8230; why not? &#8230; but we digress &#8230; anyway we had the  <a target=_blank href='#gtpt' title='Gimp Transparency Primer Tutorial'>Gimp Transparency Primer Tutorial<\/a> as shown below go into some image transparency issues with Gimp.<\/p>\n<p>In today&#8217;s <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Vignette\/\" title=\"Click picture\">tutorial<\/a> we make use of a great tutorial (even so far as with direct quotes below) called <a target=_blank title='Gimp Vignette tutorial' href='http:\/\/www.wikihow.com\/Add-a-Vignette-to-a-Photograph-with-GIMP'>Add a Vignette to a Photograph with GIMP<\/a> (thanks) to try a photographic technique called <a target=_blank title='Vignetting information via Wikipedia ... thanks' href='http:\/\/en.wikipedia.org\/wiki\/Vignetting'>vignetting<\/a> on one of the photographs we added, recently, into the mix of those of the Custom Header Image mix at this blog &#8230; specifically the one of Nala, the dog, on the door ledge.  Need to warn you here and now that if there was the time all over again, it would be better achieved that second time around, but this is not the point with learning, but rather getting some starting point with a great &#8220;product&#8221; like Gimp, and trying it yourself, once you have a method.  It boils down to:<\/p>\n<ol>\n<li>Open Gimp graphical editor application<\/li>\n<li>File-&gt;Open &#8230; pick your image file<\/li>\n<li>Layer-&gt;New Layer (we&#8217;ll call &#8220;Vg&#8221;) &#8230; pick Foreground Colour<\/li>\n<li>In the Layers dialog, click on your &#8220;Vg&#8221; layer to select it, and select Soft light from the &#8220;Mode&#8221; drop-down box<\/li>\n<li>Right click on your &#8220;Vg&#8221; layer and go to Add Layer Mask. In the dialog that pops up, you want &#8220;Initialise Layer Mask to&#8221; set to &#8220;White (full opacity)&#8221;. Click &#8220;Add&#8221;<\/li>\n<li>Below Opacity bar select Link icon next to Eye icon, which will already be showing<\/li>\n<li>Use the freeform select tool (press F to bring this up) and draw a selection somewhere around the primary point of interest in your photo<\/li>\n<li>Use your bucket tool (Shift+B) and click within the selection to fill it<\/li>\n<li>Deselect your selection with Select-&gt;None<\/li>\n<li>Go to Filters-&gt;Blur-&gt;Gaussian Blur. In the dialog that comes up, you want &#8220;Radius&#8221; set to a very large amount; a tenth of the longest edge of the photo is not too much<\/li>\n<li>Click on your &#8220;Vg&#8221; layer to select it (if it isn&#8217;t already selected), and then slide the opacity slider towards the right until the effect is subtle enough. Our (ever so subtle) example of Nala, in the tutorial, used an opacity of about 66%<\/li>\n<li>Click Export button in two windows (NB. this overwrites the image file, so if this is not desirable, export to a different image file name and\/or type)<\/li>\n<\/ol>\n<p>Here is an image comparison <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Vignette\/beforeafter.html\" title='Before and After'>link<\/a>.<\/p>\n<p>As with most Gimp ideas, jump in and give it a go, as you&#8217;ll find your own ways and means of using this great product &#8230; am pretty sure.<\/p>\n<p>Link to Gimp &#8220;spiritual home&#8221; &#8230; <a target=_blank href='http:\/\/www.gimp.org' title='Gimp'>here<\/a>.<br \/>\nLink to Gimp forum &#8230; <a target=_blank href='http:\/\/gimpforums.com\/' title='Google Geo Charts'>here<\/a>.<\/p>\n<hr \/>\n<p id='gtpt'>Previous relevant <a target=_blank href='http:\/\/www.rjmprogramming.com.au\/wordpress\/?p=9389' title='Gimp Transparency Primer Tutorial'>Gimp Transparency Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Transparency\/\"><img decoding=\"async\" id='mgti' style=\"float:left; border: 15px solid pink;\" alt=\"Gimp Transparency Primer Tutorial\" onmouseover=\" this.src = this.src.replace('97of.jpg','77of.JPG').replace('77of.jpg','97of.jpg').replace('.JPG','.jpg'); \" src=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Transparency\/Gimp_Transparency-97of.jpg\" title=\"Gimp Transparency Primer Tutorial\" \/><\/a><p class=\"wp-caption-text\">Gimp Transparency Primer Tutorial<\/p><\/div>\n<p>Here is a tutorial that adds to a previous <a target=_blank href='#glpt' title='Gimp Layers Primer Tutorial'>Gimp Layers Primer Tutorial<\/a> as shown below, and gives you more insight into the massive possibilities of using a sophisticated image editor and use layers with various amounts of transparency, especially suited to use with png image files.<\/p>\n<p>Today&#8217;s tutorial where we construct a Birthday Card that needs tweaking for the words in front to be seen a bit more clearly, by making the image behind a bit more transparent, changes the transparency of a single image via:<\/p>\n<ol>\n<li>Open Gimp graphical editor application<\/li>\n<li>File-&gt;Open Layers &#8230; pick your image file<\/li>\n<li>If Layers window not showing, make it show via Windows-&gt;Layers &#8211; Brushes<\/li>\n<li>Below Opacity bar select Link icon next to Eye icon, which will already be showing<\/li>\n<li>Change Opacity bar setting to a value of Transparency (100% is Opaque, 0% is Transparent) that suits &#8230; today we do 70%<\/li>\n<li>File-&gt;Export<\/li>\n<li>Click Export button in two windows (NB. this overwrites the image file, so if this is not desirable, export to a different image file name and\/or type)<\/li>\n<\/ol>\n<p>As with most Gimp ideas, jump in and give it a go, as you&#8217;ll find your own ways and means of using this great product &#8230; am pretty sure.<\/p>\n<p>Link to Gimp &#8220;spiritual home&#8221; &#8230; <a target=_blank href='http:\/\/www.gimp.org' title='Gimp'>here<\/a>.<br \/>\nLink to Gimp forum &#8230; <a target=_blank href='http:\/\/gimpforums.com\/' title='Google Geo Charts'>here<\/a>.<\/p>\n<hr \/>\n<p id='glpt'>Previous relevant <a target=_blank href='http:\/\/www.rjmprogramming.com.au\/wordpress\/?p=5366' title='Gimp Layers Primer Tutorial'>Gimp Layers Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Layers\/GimpLayers.m4v\"><img decoding=\"async\" style=\"float:left; border: 15px solid pink;\" alt=\"Gimp Layers Primer Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/GIMP\/Layers\/GimpLayers.jpg\" title=\"Gimp Layers Primer Tutorial\" \/><\/a><p class=\"wp-caption-text\">Gimp Layers Primer Tutorial<\/p><\/div>\n<p>Here is a tutorial that gives you an insight into the massive possibilities of using a sophisticated image editor and use layers with various amounts of transparency, especially suited to use with png image files.<\/p>\n<p>Transparency (or its obverse, opacity) can be used to have the one image achieve several &#8220;ends&#8221; (ie. purposes).  Although it is a bit of a clumsy example in the tutorial, you can see that the technique can be used for artistic purposes &#8230; often called &#8220;Photoshopping&#8221; (named after the more famous, and also brilliant, rival product, Photoshop).<\/p>\n<p>Lots of those classic &#8220;Photoshopping&#8221; techniques can be achieved in Gimp, and some other <a target=_blank title='Gimp tutorials here' href='http:\/\/www.rjmprogramming.com.au\/wordpress\/?cat=4'>tutorials<\/a> at this blog touch on that.<\/p>\n<p>Am sure you can imagine what the concept of a layer is with regard to image manipulation.   Within Gimp, for beginners not used to this concept, you find yourself underestimating and underplaying what can be achieved with the various layers of a multi-layered image.   In simplistic terms each layer has the functionality in Gimp to be treated as a whole new image, and this is the best way to think of it when trying to achieve what you want to achieve with Gimp.<\/p>\n<p>Link to Gimp &#8220;spiritual home&#8221; &#8230; <a target=_blank href='http:\/\/www.gimp.org' title='Gimp'>here<\/a>.<br \/>\nLink to Gimp forum &#8230; <a target=_blank href='http:\/\/gimpforums.com\/' title='Google Geo Charts'>here<\/a>.<\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d5366' onclick='var dv=document.getElementById(\"d5366\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"http:\/\/www.rjmprogramming.com.au\/wordpress\/?cat=4\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d5366' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr \/>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d9389' onclick='var dv=document.getElementById(\"d9389\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"http:\/\/www.rjmprogramming.com.au\/wordpress\/?tag=GIMP\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d9389' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr \/>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d10953' onclick='var dv=document.getElementById(\"d10953\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"http:\/\/www.rjmprogramming.com.au\/wordpress\/?tag=photography\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d10953' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d53722' onclick='var dv=document.getElementById(\"d53722\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/vignette\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d53722' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Continuing on with the ImageMagick batch processing &#8220;mogrify&#8221; ideas of yesterday&#8217;s ImageMagick Batch Image Conversion Affine Transformation Tutorial and the &#8220;vignette&#8221; image editing ideas of Gimp Vignette Primer Tutorial, as below, today, we took some pet photos with an iPad&#8217;s &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/imagemagick-vignette-primer-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,20,29,30,37],"tags":[3836,1714,96,135,3833,183,234,263,2650,319,380,406,418,425,2223,2224,571,590,3137,1658,611,626,630,631,662,2178,738,3835,1725,2042,1897,1776,1133,1137,3837,2272,3834,1252,1299,1319,1374],"class_list":["post-53722","post","type-post","status-publish","format-standard","hentry","category-elearning","category-ios","category-operating-system","category-photography","category-tutorials","tag-actual-size","tag-affine","tag-application","tag-batch","tag-brew","tag-camera","tag-command-line","tag-conversion","tag-convert","tag-desktop","tag-email","tag-exif","tag-file","tag-file-size","tag-flip","tag-flop","tag-homebrew","tag-image","tag-image-editor","tag-imagemagick","tag-install","tag-ios","tag-ipad","tag-iphone","tag-jpeg","tag-macos","tag-mail","tag-medium","tag-photos","tag-png","tag-quality","tag-screenshot","tag-share","tag-sharing","tag-shear","tag-size","tag-small","tag-terminal","tag-transformation","tag-tutorial","tag-vignette"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53722"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=53722"}],"version-history":[{"count":23,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53722\/revisions"}],"predecessor-version":[{"id":53745,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/53722\/revisions\/53745"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=53722"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=53722"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=53722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}