{"id":54503,"date":"2022-01-05T03:01:07","date_gmt":"2022-01-04T17:01:07","guid":{"rendered":"http:\/\/www.rjmprogramming.com.au\/ITblog\/?p=54503"},"modified":"2022-01-05T07:30:16","modified_gmt":"2022-01-04T21:30:16","slug":"emoji-borders-and-backgrounds-for-image-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/emoji-borders-and-backgrounds-for-image-tutorial\/","title":{"rendered":"Emoji Borders and Backgrounds for Image Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Emoji Borders and Backgrounds for Image Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg_image.jpg\" title=\"Emoji Borders and Backgrounds Context Tutorial\"  style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Emoji Borders and Backgrounds for Image Tutorial<\/p><\/div>\n<p>Yesterday&#8217;s <a title='Emoji Borders and Backgrounds Context Tutorial' href='#ebbct'>Emoji Borders and Backgrounds Context Tutorial<\/a> involved Emoji Borders and Backgrounds around some Text, and hosted the SVG producing PHP with an HTML\/Javascript\/CSS parent webpage, but today we&#8217;re diving back into <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/inline_svg.php-GETME\" title=\"inline_svg.php\">the changed<\/a> <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php-GETME\">inline_svg.php<\/a> PHP <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg\">live run<\/a> to allow for the bordered or backgrounded content be an image, staying within the SVG itself that the PHP code produces.<\/p>\n<p>When image content becomes involved it might be best for you to see for yourself, below, how this new functionality might be used &#8230;<\/p>\n<table style='width:100%;'>\n<tr>\n<th><a target=_blank href='http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;width=260&#038;height=260' title='Tutorial Picture bordered by Doves of Peace (width=260=height) ... http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;width=260&#038;height=260'>Tutorial Picture bordered by Doves of Peace (width=260=height)<\/a><\/th>\n<\/tr>\n<tr>\n<td style='width:100%;height:280px;'><iframe style='width:100%;height:280px;' src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;width=260&#038;height=260\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<th><a target=_blank href='http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;widZth=260&#038;heigZht=260' title='Tutorial Picture bordered by Doves of Peace ... http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;widZth=260&#038;heigZht=260'>Tutorial Picture bordered by Doves of Peace<\/a><\/th>\n<\/tr>\n<tr>\n<td style='width:100%;height:280px;'><iframe style='width:100%;height:280px;' src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insvg=128330&#038;widZth=260&#038;heigZht=260\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<th><a target=_blank href='http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;inZsvg=128330&#038;widZth=260&#038;heigZht=260' title='Tutorial Picture ... \"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;inZsvg=128330&#038;widZth=260&#038;heigZht=260'>Tutorial Picture<\/a><\/th>\n<\/tr>\n<tr>\n<td style='width:100%;height:280px;'><iframe style='width:100%;height:280px;' src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;inZsvg=128330&#038;widZth=260&#038;heigZht=260\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<th><a target=_blank href='http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insZvg=128330&#038;width=260&#038;height=260' title='Tutorial Picture (width=260=height) ... http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insZvg=128330&#038;width=260&#038;height=260'>Tutorial Picture (width=260=height)<\/a><\/th>\n<\/tr>\n<tr>\n<td style='width:100%;height:280px;'><iframe style='width:100%;height:280px;' src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?image=inline_svg_image.jpg&#038;insZvg=128330&#038;width=260&#038;height=260\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<th><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html-GETME\" title=\"emoji_border_background.html\">Yesterday&#8217;s changed<\/a> <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html-GETME\">emoji_border_background.html<\/a> <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html\">HTML Parent<\/a> now Allows for an Image in SVG<\/th>\n<\/tr>\n<tr>\n<td style='width:100%;height:880px;'><iframe style='width:100%;height:880px;' src=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html\" title=\"emoji_border_background.html\"><\/iframe><\/td>\n<\/tr>\n<\/table>\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\/emoji-borders-and-backgrounds-for-image-tutorial\/'>Emoji Borders and Backgrounds for Image Tutorial<\/a>.<\/p-->\n<hr>\n<p id='ebbct'>Previous relevant <a target=_blank title='Emoji Borders and Backgrounds Context Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/emoji-borders-and-backgrounds-context-tutorial\/'>Emoji Borders and Backgrounds Context Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Emoji Borders and Backgrounds Context Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.jpg\" title=\"Emoji Borders and Backgrounds Context Tutorial\"  style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Emoji Borders and Backgrounds Context Tutorial<\/p><\/div>\n<p>It&#8217;s all fine and good creating the Emoji Borders and Backgrounds of yesterday&#8217;s <a title='Emoji Borders and Backgrounds Primer Tutorial' href='#ebbpt'>Emoji Borders and Backgrounds Primer Tutorial<\/a>, but it&#8217;s the context of their use that we are starting to take an interest in with today&#8217;s &#8230;<\/p>\n<ol>\n<li>take yesterday&#8217;s <a href='#emtable'>table<\/a> as a starting bit to our &#8230;<\/li>\n<li>&#8220;making use of&#8221; &#8220;proof of concept&#8221; <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html_GETME\" title=\"emoji_border_background.html\">emoji_border_background.html<\/a> <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html\">live run<\/a> link for you to contextualize and make use of those table&#8217;s iframe contents from yesterday &#8230;<br \/>\n<iframe style='width:100%;height:800px;' src='http:\/\/www.rjmprogramming.com.au\/emoji_border_background.html'><\/iframe>\n<\/li>\n<\/ol>\n<p> &#8230; as we figure out, perhaps, some better &#8220;tool like generics&#8221; here.  We&#8217;ll see <font size=1>(we hope)<\/font>!<\/p>\n<p>But, so far, how would we assess the approach, here?  Well, what we had to do today reminded us a lot of what we do here, often, at this blog, when we talk about <a target=_blank href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/\/tag\/overlay\">&#8220;overlay&#8221;<\/a> webpage design approaches.  CSS <i>position:absolute<\/i> and <i>opacity<\/i> and Javascript [element].<i>getBoundingClientRect()<\/i> all made guest appearances!<\/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\/emoji-borders-and-backgrounds-context-tutorial\/'>Emoji Borders and Backgrounds Context Tutorial<\/a>.<\/p-->\n<hr>\n<p id='ebbpt'>Previous relevant <a target=_blank title='Emoji Borders and Backgrounds Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/emoji-borders-and-backgrounds-primer-tutorial\/'>Emoji Borders and Backgrounds 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\/inline_svg.php?insvg=127931\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Emoji Borders and Backgrounds Primer Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.jpg\" title=\"Emoji Borders and Backgrounds Primer Tutorial\"  style=\"float:left;\" \/><\/a><p class=\"wp-caption-text\">Emoji Borders and Backgrounds Primer Tutorial<\/p><\/div>\n<p>Time for a new project into the new year.   It&#8217;s an &#8220;old chestnut&#8221; project, for us.   Being able to handle &#8230;<\/p>\n<ul>\n<li>borders made up of emoji images (in the form of &#8220;image\/svg+xml&#8221; mimetype data)<\/li>\n<li>backgrounds made up of emoji images (in the form of &#8220;image\/svg+xml&#8221; mimetype data)<\/li>\n<\/ul>\n<p> &#8230; via &#8220;proof of concept&#8221; (at least for our &#8220;Primer&#8221; tutorial start) <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php_GETME\">inline_svg.php<\/a>&#8216;s <a target=_blank href=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=127931\" title=\"Click picture\">single violin emoji<\/a> or &#8230;<\/p>\n<table id=emtable>\n<tr>\n<th>Description<\/th>\n<th>Iframe<\/th>\n<\/tr>\n<tr>\n<td style='vertical-align:top;'><span id=spanone title=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=128330&#038;width=260\">Line of Doves of Peace Emojis<\/span><\/td>\n<td><iframe id=ifone  src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=128330&#038;width=260\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<td style='vertical-align:top;'><span id=spantwo title=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=128646&#038;width=260&#038;height=120\">Border of Train Emojis<\/span><\/td>\n<td><iframe id=iftwo  src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=128646&#038;width=260&#038;height=120\"><\/iframe><\/td>\n<\/tr>\n<tr>\n<td style='vertical-align:top;'><span id=spanthree title=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=127462,127465&#038;width=260&#038;height=120&#038;background=\">Background Flag of Andorra Emojis<\/span><\/td>\n<td><iframe  id=ifthree src=\"http:\/\/www.rjmprogramming.com.au\/inline_svg.php?insvg=127462,127465&#038;width=260&#038;height=120&#038;background=\"><\/iframe><\/td>\n<\/tr>\n<\/table>\n<p>Cute, huh?!<\/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='#d54474' onclick='var dv=document.getElementById(\"d54474\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/emoji\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d54474' 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='#d54500' onclick='var dv=document.getElementById(\"d54500\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/context\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d54500' 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='#d54503' onclick='var dv=document.getElementById(\"d54503\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/image\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d54503' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Yesterday&#8217;s Emoji Borders and Backgrounds Context Tutorial involved Emoji Borders and Backgrounds around some Text, and hosted the SVG producing PHP with an HTML\/Javascript\/CSS parent webpage, but today we&#8217;re diving back into the changed inline_svg.php PHP live run to allow &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/emoji-borders-and-backgrounds-for-image-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,37],"tags":[126,161,2105,281,385,2208,576,587,590,652,2732,876,894,932,1988,997,1986,1226,3889,1238,1254,1319,1480],"class_list":["post-54503","post","type-post","status-publish","format-standard","hentry","category-elearning","category-tutorials","tag-background","tag-border","tag-context","tag-css","tag-emoji","tag-getboundingclientrect","tag-html","tag-iframe","tag-image","tag-javascript","tag-mimetype","tag-opacity","tag-overlay","tag-php","tag-position","tag-programming","tag-proof-of-concept","tag-svg","tag-svgxml","tag-table","tag-text","tag-tutorial","tag-xml"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/54503"}],"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=54503"}],"version-history":[{"count":20,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/54503\/revisions"}],"predecessor-version":[{"id":54523,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/54503\/revisions\/54523"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=54503"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=54503"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=54503"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}