34,35d33 < $thirtytwo="32"; < $thirtytwoplus="42"; 37,42d34 < $lri=""; < if (isset($_GET['lri'])) { < $lri=$_GET['lri']; < } else if (isset($_POST['lri'])) { < $lri=$_POST['lri']; < } 118c110 < if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-$thirtytwo; } --- > if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-32; } 209c201 < if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-$thirtytwo; } --- > if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-32; } 217c209 < if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-$thirtytwo; } --- > if (substr($_POST['rhdiag'],0,1) == 'C') { $rightfl='C'; $roff=-32; } 243c235 < global $sb, $sbtwo, $bigsofarl, $bigsofarr, $smallsofarl, $smallsofarr, $oursbtwo, $ipaddr, $leftfl, $rightfl, $thirtytwo, $thirtytwoplus; --- > global $sb, $sbtwo, $bigsofarl, $bigsofarr, $smallsofarl, $smallsofarr, $oursbtwo, $ipaddr, $leftfl, $rightfl; 501,504d492 < var myhta='hta'; < var extralri=''; < var curlri='" . $lri . "'; < var lastelo=null; 507c495 < return '?' + (document.URL.indexOf('prefix=') != -1 ? document.URL.split('prefix=')[1].split('&')[0].split('#')[0] : '') + 'lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extralri + extral + extrar + gtr + gtl + syl + syr; --- > return '?' + (document.URL.indexOf('prefix=') != -1 ? document.URL.split('prefix=')[1].split('&')[0].split('#')[0] : '') + 'lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extral + extrar + gtr + gtl + syl + syr; 553c541 < top.location.href='./cow_says_insertion.php' + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extralri + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash); --- > top.location.href='./cow_says_insertion.php' + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash); 566c554 < document.getElementById('es').href='mailto:?subject=Cow%20Says%20Cartoon&body=' + encodeURIComponent(document.URL.split('?')[0].split('#')[0] + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extralri + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash)); --- > document.getElementById('es').href='mailto:?subject=Cow%20Says%20Cartoon&body=' + encodeURIComponent(document.URL.split('?')[0].split('#')[0] + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash)); 578c566 < document.getElementById('es').href='sms:&body=' + encodeURIComponent(document.URL.split('?')[0].split('#')[0] + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extralri + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash)); --- > document.getElementById('es').href='sms:&body=' + encodeURIComponent(document.URL.split('?')[0].split('#')[0] + '?lhdiag=' + encodeURIComponent(document.getElementById('lhdiag').value) + '&rhdiag=' + encodeURIComponent(document.getElementById('rhdiag').value) + '&lfontc=' + encodeURIComponent(document.getElementById('lfontc').value) + '&rfontc=' + encodeURIComponent(document.getElementById('rfontc').value) + '&lbc=' + encodeURIComponent(document.getElementById('lbc').value) + '&rbc=' + encodeURIComponent(document.getElementById('rbc').value) + extral + extrar + gtr + gtl + syl + syr + hhsort(homehash)); 681d668 < document.getElementById('mydet').style.marginLeft='50px'; 704,711d690 < if (curlri.toLowerCase().indexOf('l') != -1) { < readycanvas(document.getElementById('lhta')); < } < < if (curlri.toLowerCase().indexOf('r') != -1) { < readycanvas(document.getElementById('rhta')); < } < 880d858 < var thissuffix=''; 882d859 < thissuffix='r'; 885,900d861 < if (textareatwo.title.indexOf(' ') != -1) { < textareaone.title=''; < textareatwo.title=''; < document.getElementById('atendr').style.visibility='hidden'; < document.getElementById('myCanvasr').visibility='hidden'; < textareaone.style.color='black'; < textareatwo.style.color='black'; < document.getElementById('lri').value=document.getElementById('lri').value.replace('r',''); < extralri='&lri=' + document.getElementById('lri').value; < return ''; < } else { < textareaone.title=' '; < textareatwo.title=' '; < document.getElementById('lri').value=document.getElementById('lri').value.replace('r','') + 'r'; < extralri='&lri=' + document.getElementById('lri').value; < } 902,921c863,865 < thissuffix='l'; < textareaone=document.getElementById('lhxta'); < textareatwo=document.getElementById('lhta'); < if (textareatwo.title.indexOf(' ') != -1) { < textareaone.title=''; < textareatwo.title=''; < document.getElementById('atendl').style.visibility='hidden'; < document.getElementById('myCanvasl').visibility='hidden'; < textareaone.style.color='black'; < textareatwo.style.color='black'; < document.getElementById('lri').value=document.getElementById('lri').value.replace('l',''); < extralri='&lri=' + document.getElementById('lri').value; < return ''; < } else { < textareaone.title=' '; < textareatwo.title=' '; < document.getElementById('lri').value=document.getElementById('lri').value.replace('l','') + 'l'; < extralri='&lri=' + document.getElementById('lri').value; < } < } --- > textareaone=document.getElementById('lhxta'); > textareatwo=document.getElementById('lhta'); > } 925,960c869,875 < document.getElementById('atend' + thissuffix).style.visibility='visible'; < document.getElementById('atend' + thissuffix).style.position='absolute'; < if (textareatwo.id.substring(0,1) == 'r' && ('' + textareatwo.outerHTML).replace('scaleX(1)','').indexOf('scale') != -1) { < document.getElementById('atend' + thissuffix).style.left='' + document.getElementById('tdright').getBoundingClientRect().left + 'px'; < document.getElementById('atend' + thissuffix).style.width='' + document.getElementById('tdright').getBoundingClientRect().width + 'px'; < //alert(recttwo.top); < } else { < //alert(1); < if (textareatwo.id.substring(0,1) == 'r') { < document.getElementById('atend' + thissuffix).style.left='' + document.getElementById('tdright').getBoundingClientRect().left + 'px'; < } else { < document.getElementById('atend' + thissuffix).style.left='' + recttwo.left + 'px'; < } < document.getElementById('atend' + thissuffix).style.width='' + document.getElementById('tdleft').getBoundingClientRect().width + 'px'; < } < if (eval('' + recttwo.top) >= eval('" . $thirtytwo . "')) { < //alert(11); < document.getElementById('atend' + thissuffix).style.top='' + eval(-" . $thirtytwo . " + recttwo.top) + 'px'; < document.getElementById('atend' + thissuffix).style.height='' + eval(eval('" . $thirtytwo . "') + eval('' + recttwo.height)) + 'px'; < } else { < //alert(111); < document.getElementById('atend' + thissuffix).style.top='' + eval('' + recttwo.top) + 'px'; < document.getElementById('atend' + thissuffix).style.height='' + eval(0 + eval('' + recttwo.height)) + 'px'; < } < //alert(recttwo.left); < document.getElementById('atend' + thissuffix).style.zIndex='99'; < if (eval('' + recttwo.top) >= eval('" . $thirtytwo . "')) { < //document.getElementById('atend' + thissuffix).innerHTML=''; < document.getElementById('atend' + thissuffix).innerHTML=''; < } else if (textareatwo.id.substring(0,1) == 'r' && ('' + textareatwo.outerHTML).replace('scaleX(1)','').indexOf('scale') != -1) { < document.getElementById('atend' + thissuffix).innerHTML=''; < } else { < //document.getElementById('atend' + thissuffix).innerHTML=''; < document.getElementById('atend' + thissuffix).innerHTML=''; < } < canvas=document.getElementById('myCanvas' + thissuffix); --- > document.getElementById('atend').style.visibility='visible'; > document.getElementById('atend').style.position='absolute'; > document.getElementById('atend').style.left='' + recttwo.left + 'px'; > document.getElementById('atend').style.top='' + eval(-32 + recttwo.top) + 'px'; > document.getElementById('atend').style.zIndex='99'; > document.getElementById('atend').innerHTML=''; > canvas=document.getElementById('myCanvas'); 963,964c878 < textareaone.style.color='transparent'; < textareatwo.style.color='transparent'; --- > tao.style.color='transparent'; 972,978d885 < var ii=0, jj=-1, maxchars=0, gtsfound=false, leftno='', lthingo='x'; < if (textareatwo.id.substring(0,1) == 'l' && ('' + textareatwo.outerHTML).replace('scaleX(1)','').indexOf('scale') != -1) { < lthingo='l'; < } else if (textareatwo.id.substring(0,1) == 'r' && ('' + textareatwo.outerHTML).replace('scaleX(1)','').indexOf('scale') != -1) { < lthingo='R'; < //alert('is R'); < } 983c890 < ctx.font = \"14px Courier New\"; --- > ctx.font = \"20px Arial\"; 988,1021c895 < var lines = ((textareaone != null ? textareaone.value + String.fromCharCode(10) : '') + (textareatwo != null ? textareatwo.value : '')).split(String.fromCharCode(10)); < < for (var ii=0; ii maxchars) { maxchars=eval('' + lines[ii].length); } < if (textareatwo.id.substring(0,1) == 'r' && leftno == '' && ('' + textareatwo.outerHTML).replace('scaleX(1)','').indexOf('scale') == -1 && lines[ii].trim() != '' && lines[ii].indexOf('" . $lts . "') != -1) { < leftno=lines[ii].split('" . $lts . "')[0]; < //alert(leftno); < if (document.URL.indexOf('rjmprogramming.com.au/') != -1) { < leftno=' '; < } < } < } < < if (textareatwo.id.substring(0,1).toUpperCase() == lthingo.toUpperCase() || 7 == 7) { < for (var ii=0; ii const lines = ((textareaone != null ? textareaone.value + String.fromCharCode(10) : '') + (textareatwo != null ? textareatwo.value : '')).split(String.fromCharCode(10)); 1023c897 < //alert('prerevstr=' + prerevstr + ' and revstr=' + revstr + ' and textareaonevalue=' + textareaone.value + String.fromCharCode(10) + textareatwo.value); --- > //alert('prerevstr=' + prerevstr + ' and revstr=' + revstr + ' and textareaone.value=' + textareaone.value); 1026,1038c900,902 < var lineHeight = 16; < var startX = 0; < var startY = 10; < if (textareatwo.id.substring(0,1) == 'r' && lthingo.toUpperCase() != 'R') { < startY-=" . $thirtytwo . "; < } < < if (textareatwo.id.substring(0,1) == lthingo || textareatwo.id.substring(0,1).toUpperCase() == lthingo) { < startX = canvas.width; < startY-=14; < ctx.textAlign = 'right'; < //alert('Here'); < } --- > const lineHeight = 28; > const startX = 20; > const startY = 20; 1041,1049d904 < //if (textareatwo.id.substring(0,1) == lthingo && 1 == 5) { < if (textareatwo.id.substring(0,1) == lthingo && 1 == 5) { < ctx.fillText(line.split('').reverse().join(''), startX, startY + (index * lineHeight)); < //alert('thEre'); < } else { < if (leftno != '') { < //alert('there'); < ctx.fillText(line.replace(leftno,''), startX, startY + (index * lineHeight)); < } else { 1051,1052d905 < } < } 1055,1123c908,909 < if (textareatwo.id.substring(0,1).toUpperCase() == lthingo.toUpperCase()) { // thanks to https://www.google.com/search?q=just+scale+part+of+an+HTML+canvas&sca_esv=ddd109fd00e45f93&rlz=1C5OZZY_en&sxsrf=AKL5yDgSuo_oLZNuX2RTf0dEj8ymY_NrUg%3A1794091464710&ei=yKnvatDyKvrl2roP5PjAkAE&biw=1440&bih=703&uact=5&oq=just+scale+part+of+an+HTML+canvas&gs_lp=Egxnd3Mtd2l6LXNlcnAiIWp1c3Qgc2NhbGUgcGFydCBvZiBhbiBIVE1MIGNhbnZhczIIECEYoAEYwwQyCBAhGKABGMMESIE3UJgUWKw1cAN4AZABAJgBzgGgAYkLqgEFMC43LjG4AQPIAQD4AQGYAgqgAoMKwgIKEAAYRxjWBBiwA8ICBxAjGLACGCfCAgUQABjvBcICChAhGAoYoAEYwwSYAwCIBgGQBgiSBwUzLjYuMaAHlCKyBwUwLjYuMbgH9QnCBwUxLjMuNsgHHYAIAQ&sclient=gws-wiz-serp < //alert('where'); < var offscreen = document.createElement('canvas'); < var offCtx = offscreen.getContext('2d'); < var offscreentop = document.createElement('canvas'); < var offCtxtop = offscreentop.getContext('2d'); < < < var sourceX = 0, sourceY = " . $thirtytwoplus . ", sourceW = canvas.width, sourceH = eval(-" . $thirtytwoplus . " + canvas.height); < offscreen.width = sourceW; < offscreen.height = sourceH; < offscreentop.width = sourceW; < offscreentop.height = " . $thirtytwoplus . "; < < // 2. Copy the specific part from the main canvas to the offscreen canvas < offCtx.drawImage(canvas, sourceX, sourceY, sourceW, sourceH, 0, 0, sourceW, sourceH); < offCtxtop.drawImage(canvas, 0,0, sourceW, " . $thirtytwoplus . ", 0, 0, sourceW, " . $thirtytwoplus . "); < < // 3. Draw it back onto the main canvas at a larger or smaller scale < var xscaleFactor = 1; < var yscaleFactor = 1; < ctx.save(); < < // 2. Move the origin to the center (or left) of where you want the image < //alert('w,h=' + canvas.width + ',' + canvas.height); < //ctx.translate(canvas.width * 1.6, 0); < ctx.translate(canvas.width * 1.6, 0); < < // 3. Flip the X axis (scales width by -1) < ctx.scale(-1, 1); < < ctx.globalCompositeOperation = 'copy'; < ctx.drawImage( < offscreen, < 0, 0, sourceW, sourceH, // source rectangle < sourceX, sourceY, sourceW * xscaleFactor, sourceH * yscaleFactor // destination rectangle < ); < < ctx.globalCompositeOperation = 'source-over'; < ctx.restore(); < ctx.drawImage( < offscreentop, < 0, 0, sourceW, " . $thirtytwoplus . ", // source rectangle < sourceX, 0, sourceW * xscaleFactor, " . $thirtytwoplus . " * yscaleFactor // destination rectangle < ); < < if (lthingo == 'R') { < //alert('huh'); < var rectone=document.getElementById('tdright').getBoundingClientRect(); < var recttwo=document.getElementById('myCanvasr').getBoundingClientRect(); < if (eval('' + recttwo.right) > eval('' + rectone.right)) { < //alert('yes ' + document.getElementById('myCanvasr').style.left); < //alert('' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('myCanvasr').style.left.replace('px',''))) + 'px'); < document.getElementById('atendr').style.left='' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('atendr').style.left.replace('px',''))) + 'px'; < document.getElementById('myCanvasr').style.left='' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('myCanvasr').style.left.replace('px',''))) + 'px'; < } < //} else if (textareatwo.id.substring(0,1) == 'r') { < //alert('RE huh'); < } < } else if (textareatwo.id.substring(0,1) == 'r') { < //alert('RE Huh'); < var rectone=document.getElementById('tdright').getBoundingClientRect(); < var recttwo=document.getElementById('myCanvasr').getBoundingClientRect(); < if (eval('' + recttwo.left) < eval('' + rectone.left)) { < //alert('Yes ' + document.getElementById('myCanvasr').style.left); < //alert('' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('myCanvasr').style.left.replace('px',''))) + 'px'); < document.getElementById('atendr').style.left='' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('atendr').style.left.replace('px',''))) + 'px'; < document.getElementById('myCanvasr').style.left='' + eval(eval(rectone.right - recttwo.right) + eval(document.getElementById('myCanvasr').style.left.replace('px',''))) + 'px'; < } --- > if (textareatwo.id.substring(0,1) == 'l') { > canvas.style.transform='scaleX(-1)'; 1125,1129d910 < < < textareaone.style.color='transparent'; < textareatwo.style.color='transparent'; < document.getElementById('inout').focus(); 1131,1141d911 < < function ouralert(elo) { < if (elo != null) { < if (elo != lastelo) { < if (('' + elo.outerHTML).split('>')[0].indexOf(' title=') != -1) { < lastelo=elo; < alert(elo.title); < } < } < } < } 1147c917 < --- > 1150,1151c920,921 < < --- > > 1153,1155c923,925 < < <
              

Cow Says Cartoon ++

RJM Programming - November, 2026

--- > > >

Cow Says Cartoon ++

RJM Programming - November, 2026

1157,1159c927,929 <   " . $sayls . "  " . ($smallsofarl == '' ? $bigsofarl : $smallsofarl) . "

<   " . $sayrs . "  " . ($smallsofarr == '' ? $bigsofarr : $smallsofarr) . "

< --- >   " . $sayls . "  " . ($smallsofarl == '' ? $bigsofarl : $smallsofarl) . "

>   " . $sayrs . "  " . ($smallsofarr == '' ? $bigsofarr : $smallsofarr) . "

> 1164,1167c934,936 < < < < --- > > >