Skip to content

Instantly share code, notes, and snippets.

@AngusFu
Last active September 10, 2021 11:16
Show Gist options
  • Save AngusFu/fe7be4676453cb12afd75851bf32af32 to your computer and use it in GitHub Desktop.
Save AngusFu/fe7be4676453cb12afd75851bf32af32 to your computer and use it in GitHub Desktop.
周刊排版助手
// ==UserScript==
// @name 周刊排版助手
// @namespace https://gist.github.com/AngusFu/fe7be4676453cb12afd75851bf32af32
// @version 0.2
// @description try to take over the world!
// @author wemlion
// @match https://editor.mdnice.com/*
// @icon https://www.google.com/s2/favicons?domain=mdnice.com
// @grant none
// ==/UserScript==
(async function () {
await init();
let timer = null;
$("#nice-md-editor .CodeMirror")[0].CodeMirror.on("change", () => {
clearTimeout(timer);
timer = setTimeout(() => {
render();
}, 30);
});
$("#nice-sidebar-wechat")
.off()
.on("click", () => {
window.getSelection().removeAllRanges();
const range = document.createRange();
range.selectNodeContents($("#nice")[0]);
window.getSelection().addRange(range);
document.execCommand("copy");
setTimeout(() => window.getSelection().removeAllRanges());
});
})();
async function init() {
await import("https://lib.baomitu.com/jquery/3.5.0/jquery.min.js");
// prettier-ignore
!function(t){"use strict";function r(){return(r=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}).apply(this,arguments)}var e,n,o=(function(t,r){var e=function(){var t=function(t,r){var e=t,n=l[r],o=null,i=0,a=null,u=[],f={},c=function(t,r){o=function(t){for(var r=new Array(t),e=0;e<t;e+=1){r[e]=new Array(t);for(var n=0;n<t;n+=1)r[e][n]=null}return r}(i=4*e+17),s(0,0),s(i-7,0),s(0,i-7),h(),g(),d(t,r),e>=7&&v(t),null==a&&(a=p(e,n,u)),w(a,r)},s=function(t,r){for(var e=-1;e<=7;e+=1)if(!(t+e<=-1||i<=t+e))for(var n=-1;n<=7;n+=1)r+n<=-1||i<=r+n||(o[t+e][r+n]=0<=e&&e<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==e||6==e)||2<=e&&e<=4&&2<=n&&n<=4)},g=function(){for(var t=8;t<i-8;t+=1)null==o[t][6]&&(o[t][6]=t%2==0);for(var r=8;r<i-8;r+=1)null==o[6][r]&&(o[6][r]=r%2==0)},h=function(){for(var t=C.getPatternPosition(e),r=0;r<t.length;r+=1)for(var n=0;n<t.length;n+=1){var i=t[r],a=t[n];if(null==o[i][a])for(var u=-2;u<=2;u+=1)for(var f=-2;f<=2;f+=1)o[i+u][a+f]=-2==u||2==u||-2==f||2==f||0==u&&0==f}},v=function(t){for(var r=C.getBCHTypeNumber(e),n=0;n<18;n+=1){var a=!t&&1==(r>>n&1);o[Math.floor(n/3)][n%3+i-8-3]=a}for(n=0;n<18;n+=1)a=!t&&1==(r>>n&1),o[n%3+i-8-3][Math.floor(n/3)]=a},d=function(t,r){for(var e=n<<3|r,a=C.getBCHTypeInfo(e),u=0;u<15;u+=1){var f=!t&&1==(a>>u&1);u<6?o[u][8]=f:u<8?o[u+1][8]=f:o[i-15+u][8]=f}for(u=0;u<15;u+=1)f=!t&&1==(a>>u&1),u<8?o[8][i-u-1]=f:u<9?o[8][15-u-1+1]=f:o[8][15-u-1]=f;o[i-8][8]=!t},w=function(t,r){for(var e=-1,n=i-1,a=7,u=0,f=C.getMaskFunction(r),c=i-1;c>0;c-=2)for(6==c&&(c-=1);;){for(var l=0;l<2;l+=1)if(null==o[n][c-l]){var s=!1;u<t.length&&(s=1==(t[u]>>>a&1)),f(n,c-l)&&(s=!s),o[n][c-l]=s,-1==(a-=1)&&(u+=1,a=7)}if((n+=e)<0||i<=n){n-=e,e=-e;break}}},p=function(t,r,e){for(var n=k.getRSBlocks(t,r),o=b(),i=0;i<e.length;i+=1){var a=e[i];o.put(a.getMode(),4),o.put(a.getLength(),C.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<n.length;i+=1)u+=n[i].dataCount;if(o.getLengthInBits()>8*u)throw"code length overflow. ("+o.getLengthInBits()+">"+8*u+")";for(o.getLengthInBits()+4<=8*u&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=8*u||(o.put(236,8),o.getLengthInBits()>=8*u));)o.put(17,8);return function(t,r){for(var e=0,n=0,o=0,i=new Array(r.length),a=new Array(r.length),u=0;u<r.length;u+=1){var f=r[u].dataCount,c=r[u].totalCount-f;n=Math.max(n,f),o=Math.max(o,c),i[u]=new Array(f);for(var l=0;l<i[u].length;l+=1)i[u][l]=255&t.getBuffer()[l+e];e+=f;var s=C.getErrorCorrectPolynomial(c),g=x(i[u],s.getLength()-1).mod(s);for(a[u]=new Array(s.getLength()-1),l=0;l<a[u].length;l+=1){var h=l+g.getLength()-a[u].length;a[u][l]=h>=0?g.getAt(h):0}}var v=0;for(l=0;l<r.length;l+=1)v+=r[l].totalCount;var d=new Array(v),w=0;for(l=0;l<n;l+=1)for(u=0;u<r.length;u+=1)l<i[u].length&&(d[w]=i[u][l],w+=1);for(l=0;l<o;l+=1)for(u=0;u<r.length;u+=1)l<a[u].length&&(d[w]=a[u][l],w+=1);return d}(o,n)};f.addData=function(t,r){var e=null;switch(r=r||"Byte"){case"Numeric":e=B(t);break;case"Alphanumeric":e=S(t);break;case"Byte":e=A(t);break;case"Kanji":e=M(t);break;default:throw"mode:"+r}u.push(e),a=null},f.isDark=function(t,r){if(t<0||i<=t||r<0||i<=r)throw t+","+r;return o[t][r]},f.getModuleCount=function(){return i},f.make=function(){if(e<1){for(var t=1;t<40;t++){for(var r=k.getRSBlocks(t,n),o=b(),i=0;i<u.length;i++){var a=u[i];o.put(a.getMode(),4),o.put(a.getLength(),C.getLengthInBits(a.getMode(),t)),a.write(o)}var l=0;for(i=0;i<r.length;i++)l+=r[i].dataCount;if(o.getLengthInBits()<=8*l)break}e=t}c(!1,function(){for(var t=0,r=0,e=0;e<8;e+=1){c(!0,e);var n=C.getLostPoint(f);(0==e||t>n)&&(t=n,r=e)}return r}())},f.createTableTag=function(t,r){t=t||2;var e="";e+='<table style="',e+=" border-width: 0px; border-style: none;",e+=" border-collapse: collapse;",e+=" padding: 0px; margin: "+(r=void 0===r?4*t:r)+"px;",e+='">',e+="<tbody>";for(var n=0;n<f.getModuleCount();n+=1){e+="<tr>";for(var o=0;o<f.getModuleCount();o+=1)e+='<td style="',e+=" border-width: 0px; border-style: none;",e+=" border-collapse: collapse;",e+=" padding: 0px; margin: 0px;",e+=" width: "+t+"px;",e+=" height: "+t+"px;",e+=" background-color: ",e+=f.isDark(n,o)?"#000000":"#ffffff",e+=";",e+='"/>';e+="</tr>"}return e+="</tbody>",e+="</table>"},f.createSvgTag=function(t,r,e,n){var o={};"object"==typeof arguments[0]&&(t=(o=arguments[0]).cellSize,r=o.margin,e=o.alt,n=o.title),t=t||2,r=void 0===r?4*t:r,(e="string"==typeof e?{text:e}:e||{}).text=e.text||null,e.id=e.text?e.id||"qrcode-description":null,(n="string"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var i,a,u,c,l=f.getModuleCount()*t+2*r,s="";for(c="l"+t+",0 0,"+t+" -"+t+",0 0,-"+t+"z ",s+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',s+=o.scalable?"":' width="'+l+'px" height="'+l+'px"',s+=' viewBox="0 0 '+l+" "+l+'" ',s+=' preserveAspectRatio="xMinYMin meet"',s+=n.text||e.text?' role="img" aria-labelledby="'+y([n.id,e.id].join(" ").trim())+'"':"",s+=">",s+=n.text?'<title id="'+y(n.id)+'">'+y(n.text)+"</title>":"",s+=e.text?'<description id="'+y(e.id)+'">'+y(e.text)+"</description>":"",s+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',s+='<path d="',a=0;a<f.getModuleCount();a+=1)for(u=a*t+r,i=0;i<f.getModuleCount();i+=1)f.isDark(a,i)&&(s+="M"+(i*t+r)+","+u+c);return s+='" stroke="transparent" fill="black"/>',s+="</svg>"},f.createDataURL=function(t,r){t=t||2,r=void 0===r?4*t:r;var e=f.getModuleCount()*t+2*r,n=r,o=e-r;return z(e,e,(function(r,e){if(n<=r&&r<o&&n<=e&&e<o){var i=Math.floor((r-n)/t),a=Math.floor((e-n)/t);return f.isDark(a,i)?0:1}return 1}))},f.createImgTag=function(t,r,e){t=t||2,r=void 0===r?4*t:r;var n=f.getModuleCount()*t+2*r,o="";return o+="<img",o+=' src="',o+=f.createDataURL(t,r),o+='"',o+=' width="',o+=n,o+='"',o+=' height="',o+=n,o+='"',e&&(o+=' alt="',o+=y(e),o+='"'),o+="/>"};var y=function(t){for(var r="",e=0;e<t.length;e+=1){var n=t.charAt(e);switch(n){case"<":r+="&lt;";break;case">":r+="&gt;";break;case"&":r+="&amp;";break;case'"':r+="&quot;";break;default:r+=n}}return r};return f.createASCII=function(t,r){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var r,e,n,o,i,a=1*f.getModuleCount()+2*t,u=t,c=a-t,l={"██":"█","█ ":"▀"," █":"▄"," ":" "},s={"██":"▀","█ ":"▀"," █":" "," ":" "},g="";for(r=0;r<a;r+=2){for(n=Math.floor((r-u)/1),o=Math.floor((r+1-u)/1),e=0;e<a;e+=1)i="█",u<=e&&e<c&&u<=r&&r<c&&f.isDark(n,Math.floor((e-u)/1))&&(i=" "),u<=e&&e<c&&u<=r+1&&r+1<c&&f.isDark(o,Math.floor((e-u)/1))?i+=" ":i+="█",g+=t<1&&r+1>=c?s[i]:l[i];g+="\n"}return a%2&&t>0?g.substring(0,g.length-a-1)+Array(a+1).join("▀"):g.substring(0,g.length-1)}(r);t-=1,r=void 0===r?2*t:r;var e,n,o,i,a=f.getModuleCount()*t+2*r,u=r,c=a-r,l=Array(t+1).join("██"),s=Array(t+1).join(" "),g="",h="";for(e=0;e<a;e+=1){for(o=Math.floor((e-u)/t),h="",n=0;n<a;n+=1)i=1,u<=n&&n<c&&u<=e&&e<c&&f.isDark(o,Math.floor((n-u)/t))&&(i=0),h+=i?l:s;for(o=0;o<t;o+=1)g+=h+"\n"}return g.substring(0,g.length-1)},f.renderTo2dContext=function(t,r){r=r||2;for(var e=f.getModuleCount(),n=0;n<e;n++)for(var o=0;o<e;o++)t.fillStyle=f.isDark(n,o)?"black":"white",t.fillRect(n*r,o*r,r,r)},f};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var r=[],e=0;e<t.length;e+=1){var n=t.charCodeAt(e);r.push(255&n)}return r}}).default,t.createStringToBytes=function(t,r){var e=function(){for(var e=L(t),n=function(){var t=e.read();if(-1==t)throw"eof";return t},o=0,i={};;){var a=e.read();if(-1==a)break;var u=n(),f=n()<<8|n();i[String.fromCharCode(a<<8|u)]=f,o+=1}if(o!=r)throw o+" != "+r;return i}(),n="?".charCodeAt(0);return function(t){for(var r=[],o=0;o<t.length;o+=1){var i=t.charCodeAt(o);if(i<128)r.push(i);else{var a=e[t.charAt(o)];"number"==typeof a?(255&a)==a?r.push(a):(r.push(a>>>8),r.push(255&a)):r.push(n)}}return r}};var r,e,n,o,i,a=1,u=2,f=4,c=8,l={L:1,M:0,Q:3,H:2},s=0,g=1,h=2,v=3,d=4,w=5,p=6,y=7,C=(r=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],e=1335,n=7973,i=function(t){for(var r=0;0!=t;)r+=1,t>>>=1;return r},(o={}).getBCHTypeInfo=function(t){for(var r=t<<10;i(r)-i(e)>=0;)r^=e<<i(r)-i(e);return 21522^(t<<10|r)},o.getBCHTypeNumber=function(t){for(var r=t<<12;i(r)-i(n)>=0;)r^=n<<i(r)-i(n);return t<<12|r},o.getPatternPosition=function(t){return r[t-1]},o.getMaskFunction=function(t){switch(t){case s:return function(t,r){return(t+r)%2==0};case g:return function(t,r){return t%2==0};case h:return function(t,r){return r%3==0};case v:return function(t,r){return(t+r)%3==0};case d:return function(t,r){return(Math.floor(t/2)+Math.floor(r/3))%2==0};case w:return function(t,r){return t*r%2+t*r%3==0};case p:return function(t,r){return(t*r%2+t*r%3)%2==0};case y:return function(t,r){return(t*r%3+(t+r)%2)%2==0};default:throw"bad maskPattern:"+t}},o.getErrorCorrectPolynomial=function(t){for(var r=x([1],0),e=0;e<t;e+=1)r=r.multiply(x([1,m.gexp(e)],0));return r},o.getLengthInBits=function(t,r){if(1<=r&&r<10)switch(t){case a:return 10;case u:return 9;case f:case c:return 8;default:throw"mode:"+t}else if(r<27)switch(t){case a:return 12;case u:return 11;case f:return 16;case c:return 10;default:throw"mode:"+t}else{if(!(r<41))throw"type:"+r;switch(t){case a:return 14;case u:return 13;case f:return 16;case c:return 12;default:throw"mode:"+t}}},o.getLostPoint=function(t){for(var r=t.getModuleCount(),e=0,n=0;n<r;n+=1)for(var o=0;o<r;o+=1){for(var i=0,a=t.isDark(n,o),u=-1;u<=1;u+=1)if(!(n+u<0||r<=n+u))for(var f=-1;f<=1;f+=1)o+f<0||r<=o+f||0==u&&0==f||a==t.isDark(n+u,o+f)&&(i+=1);i>5&&(e+=3+i-5)}for(n=0;n<r-1;n+=1)for(o=0;o<r-1;o+=1){var c=0;t.isDark(n,o)&&(c+=1),t.isDark(n+1,o)&&(c+=1),t.isDark(n,o+1)&&(c+=1),t.isDark(n+1,o+1)&&(c+=1),0!=c&&4!=c||(e+=3)}for(n=0;n<r;n+=1)for(o=0;o<r-6;o+=1)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(e+=40);for(o=0;o<r;o+=1)for(n=0;n<r-6;n+=1)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(e+=40);var l=0;for(o=0;o<r;o+=1)for(n=0;n<r;n+=1)t.isDark(n,o)&&(l+=1);return e+=Math.abs(100*l/r/r-50)/5*10},o),m=function(){for(var t=new Array(256),r=new Array(256),e=0;e<8;e+=1)t[e]=1<<e;for(e=8;e<256;e+=1)t[e]=t[e-4]^t[e-5]^t[e-6]^t[e-8];for(e=0;e<255;e+=1)r[t[e]]=e;var n={glog:function(t){if(t<1)throw"glog("+t+")";return r[t]},gexp:function(r){for(;r<0;)r+=255;for(;r>=256;)r-=255;return t[r]}};return n}();function x(t,r){if(void 0===t.length)throw t.length+"/"+r;var e=function(){for(var e=0;e<t.length&&0==t[e];)e+=1;for(var n=new Array(t.length-e+r),o=0;o<t.length-e;o+=1)n[o]=t[o+e];return n}(),n={getAt:function(t){return e[t]},getLength:function(){return e.length},multiply:function(t){for(var r=new Array(n.getLength()+t.getLength()-1),e=0;e<n.getLength();e+=1)for(var o=0;o<t.getLength();o+=1)r[e+o]^=m.gexp(m.glog(n.getAt(e))+m.glog(t.getAt(o)));return x(r,0)},mod:function(t){if(n.getLength()-t.getLength()<0)return n;for(var r=m.glog(n.getAt(0))-m.glog(t.getAt(0)),e=new Array(n.getLength()),o=0;o<n.getLength();o+=1)e[o]=n.getAt(o);for(o=0;o<t.getLength();o+=1)e[o]^=m.gexp(m.glog(t.getAt(o))+r);return x(e,0).mod(t)}};return n}var k=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],r=function(t,r){var e={};return e.totalCount=t,e.dataCount=r,e},e={getRSBlocks:function(e,n){var o=function(r,e){switch(e){case l.L:return t[4*(r-1)+0];case l.M:return t[4*(r-1)+1];case l.Q:return t[4*(r-1)+2];case l.H:return t[4*(r-1)+3];default:return}}(e,n);if(void 0===o)throw"bad rs block @ typeNumber:"+e+"/errorCorrectionLevel:"+n;for(var i=o.length/3,a=[],u=0;u<i;u+=1)for(var f=o[3*u+0],c=o[3*u+1],s=o[3*u+2],g=0;g<f;g+=1)a.push(r(c,s));return a}};return e}(),b=function(){var t=[],r=0,e={getBuffer:function(){return t},getAt:function(r){var e=Math.floor(r/8);return 1==(t[e]>>>7-r%8&1)},put:function(t,r){for(var n=0;n<r;n+=1)e.putBit(1==(t>>>r-n-1&1))},getLengthInBits:function(){return r},putBit:function(e){var n=Math.floor(r/8);t.length<=n&&t.push(0),e&&(t[n]|=128>>>r%8),r+=1}};return e},B=function(t){var r=a,e=t,n={getMode:function(){return r},getLength:function(t){return e.length},write:function(t){for(var r=e,n=0;n+2<r.length;)t.put(o(r.substring(n,n+3)),10),n+=3;n<r.length&&(r.length-n==1?t.put(o(r.substring(n,n+1)),4):r.length-n==2&&t.put(o(r.substring(n,n+2)),7))}},o=function(t){for(var r=0,e=0;e<t.length;e+=1)r=10*r+i(t.charAt(e));return r},i=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+t};return n},S=function(t){var r=u,e=t,n={getMode:function(){return r},getLength:function(t){return e.length},write:function(t){for(var r=e,n=0;n+1<r.length;)t.put(45*o(r.charAt(n))+o(r.charAt(n+1)),11),n+=2;n<r.length&&t.put(o(r.charAt(n)),6)}},o=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);if("A"<=t&&t<="Z")return t.charCodeAt(0)-"A".charCodeAt(0)+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return n},A=function(r){var e=f,n=t.stringToBytes(r),o={getMode:function(){return e},getLength:function(t){return n.length},write:function(t){for(var r=0;r<n.length;r+=1)t.put(n[r],8)}};return o},M=function(r){var e=c,n=t.stringToBytesFuncs.SJIS;if(!n)throw"sjis not supported.";!function(t,r){var e=n("友");if(2!=e.length||38726!=(e[0]<<8|e[1]))throw"sjis not supported."}();var o=n(r),i={getMode:function(){return e},getLength:function(t){return~~(o.length/2)},write:function(t){for(var r=o,e=0;e+1<r.length;){var n=(255&r[e])<<8|255&r[e+1];if(33088<=n&&n<=40956)n-=33088;else{if(!(57408<=n&&n<=60351))throw"illegal char at "+(e+1)+"/"+n;n-=49472}n=192*(n>>>8&255)+(255&n),t.put(n,13),e+=2}if(e<r.length)throw"illegal char at "+(e+1)}};return i},D=function(){var t=[],r={writeByte:function(r){t.push(255&r)},writeShort:function(t){r.writeByte(t),r.writeByte(t>>>8)},writeBytes:function(t,e,n){e=e||0,n=n||t.length;for(var o=0;o<n;o+=1)r.writeByte(t[o+e])},writeString:function(t){for(var e=0;e<t.length;e+=1)r.writeByte(t.charCodeAt(e))},toByteArray:function(){return t},toString:function(){var r="";r+="[";for(var e=0;e<t.length;e+=1)e>0&&(r+=","),r+=t[e];return r+="]"}};return r},L=function(t){var r=t,e=0,n=0,o=0,i={read:function(){for(;o<8;){if(e>=r.length){if(0==o)return-1;throw"unexpected end of file./"+o}var t=r.charAt(e);if(e+=1,"="==t)return o=0,-1;t.match(/^\s$/)||(n=n<<6|a(t.charCodeAt(0)),o+=6)}var i=n>>>o-8&255;return o-=8,i}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw"c:"+t};return i},z=function(t,r,e){for(var n=function(t,r){var e=t,n=r,o=new Array(t*r),i={setPixel:function(t,r,n){o[r*e+t]=n},write:function(t){t.writeString("GIF87a"),t.writeShort(e),t.writeShort(n),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(","),t.writeShort(0),t.writeShort(0),t.writeShort(e),t.writeShort(n),t.writeByte(0);var r=a(2);t.writeByte(2);for(var o=0;r.length-o>255;)t.writeByte(255),t.writeBytes(r,o,255),o+=255;t.writeByte(r.length-o),t.writeBytes(r,o,r.length-o),t.writeByte(0),t.writeString(";")}},a=function(t){for(var r=1<<t,e=1+(1<<t),n=t+1,i=u(),a=0;a<r;a+=1)i.add(String.fromCharCode(a));i.add(String.fromCharCode(r)),i.add(String.fromCharCode(e));var f,c,l,s=D(),g=(f=s,c=0,l=0,{write:function(t,r){if(t>>>r!=0)throw"length over";for(;c+r>=8;)f.writeByte(255&(t<<c|l)),r-=8-c,t>>>=8-c,l=0,c=0;l|=t<<c,c+=r},flush:function(){c>0&&f.writeByte(l)}});g.write(r,n);var h=0,v=String.fromCharCode(o[h]);for(h+=1;h<o.length;){var d=String.fromCharCode(o[h]);h+=1,i.contains(v+d)?v+=d:(g.write(i.indexOf(v),n),i.size()<4095&&(i.size()==1<<n&&(n+=1),i.add(v+d)),v=d)}return g.write(i.indexOf(v),n),g.write(e,n),g.flush(),s.toByteArray()},u=function(){var t={},r=0,e={add:function(n){if(e.contains(n))throw"dup key:"+n;t[n]=r,r+=1},size:function(){return r},indexOf:function(r){return t[r]},contains:function(r){return void 0!==t[r]}};return e};return i}(t,r),o=0;o<r;o+=1)for(var i=0;i<t;i+=1)n.setPixel(i,o,e(i,o));var a=D();n.write(a);for(var u=function(){var t=0,r=0,e=0,n="",o={},i=function(t){n+=String.fromCharCode(a(63&t))},a=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw"n:"+t};return o.writeByte=function(n){for(t=t<<8|255&n,r+=8,e+=1;r>=6;)i(t>>>r-6),r-=6},o.flush=function(){if(r>0&&(i(t<<6-r),t=0,r=0),e%3!=0)for(var o=3-e%3,a=0;a<o;a+=1)n+="="},o.toString=function(){return n},o}(),f=a.toByteArray(),c=0;c<f.length;c+=1)u.writeByte(f[c]);return u.flush(),"data:image/gif;base64,"+u};return t}();e.stringToBytesFuncs["UTF-8"]=function(t){return function(t){for(var r=[],e=0;e<t.length;e++){var n=t.charCodeAt(e);n<128?r.push(n):n<2048?r.push(192|n>>6,128|63&n):n<55296||n>=57344?r.push(224|n>>12,128|n>>6&63,128|63&n):(e++,n=65536+((1023&n)<<10|1023&t.charCodeAt(e)),r.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return r}(t)},t.exports=e}(n={path:e,exports:{},require:function(t,r){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}(null==r&&n.path)}},n.exports),n.exports),i="#000",a="#fff",u={createCanvas:function(t,r){var e=document.createElement("canvas");return e.width=t,e.height=r,e},isCanvas:f,isDrawable:function(t){return f(t)||t instanceof HTMLImageElement},getCanvas:c,updateCanvas:function(t,r,e){if(t)return t.width=r,t.height=null==e?r:e,t;return c(r,e)},drawCanvas:function(t,r,e){void 0===e&&(e={});var n=e,o=n.cellSize,i=n.context,a=n.clear,f=void 0===a||a,c=t.width,l=t.height,s=[r],g=i||t.getContext("2d");f&&g.clearRect(0,0,c,l);g.globalCompositeOperation="source-over";for(;s.length;){var h=s.shift();if(Array.isArray(h))s=h.concat(s);else if(h){var v=void 0,d=(null==(v=u.isDrawable(h)?{image:h}:"string"==typeof h?{style:h}:h).col?v.x:v.col*o)||0,w=(null==v.row?v.y:v.row*o)||0;d<0&&(d+=c),w<0&&(w+=c);var p=("cols"in v?v.cols*o:v.w)||c,y=("rows"in v?v.rows*o:v.h)||c;v.image?g.drawImage(v.image,d,w,p,y):(g.fillStyle=v.style||"black",g.fillRect(d,w,p,y))}}return t},drawText:function(t,r){var e,n=r||{},o=n.fontSize,u=void 0===o?64:o,f=n.fontStyle,l=void 0===f?"":f,s=n.fontFamily,g=void 0===s?"Cursive":s,h=n.color,v=void 0===h?null:h,d=n.pad,w=void 0===d?8:d,p=n.padColor,y=void 0===p?a:p,C=n.mode,m=void 0===C?1:C,x=c(1),k=x.getContext("2d");if(y){k.fillStyle=y,k.fillRect(0,0,1,1);var b=k.getImageData(0,0,1,1);(e=b.data)[3]||(e=null)}var B=u+2*w,S=[l,u+"px",g].filter(Boolean).join(" "),A=function(){k.textAlign="center",k.textBaseline="middle",k.font=S};A();var M=Math.ceil(k.measureText(t).width)+2*w;x.width=M,x.height=B,A();var D=function(){k.fillStyle=v||i,k.fillText(t,M/2,B/2)};1===m?(k.fillStyle=y,k.fillRect(0,0,M,B),D()):(D(),e&&function(){for(var t=k.getImageData(0,0,M,B),r=t.data,n=M*B,o=[],i=0,a=function(t){var a=[],u={};o[i]=a;var f=o[i=1-i];if(!f){f=[];for(var c=0;c<n;c+=1)f.push(c)}f.forEach((function(t){r[4*t+3]&&[t%M?t-1:-1,(t+1)%M?t+1:-1,t-M,t+M].forEach((function(t){var e=4*t;e>=0&&e<=r.length&&!u[t]&&(u[t]=1,a.push(t))}))})),a.forEach((function(t){var n=4*t;if(!r[n+3])for(var o=0;o<4;o+=1)r[n+o]=e[o]}))},u=0;u<w;u+=1)a();k.putImageData(t,0,0)}());return x}};function f(t){return t instanceof HTMLCanvasElement}function c(t,r){return u.createCanvas(t,null==r?t:r)}var l={default:function(t){var r=t.foreground,e=t.cellSize,n=t.isDark,o=t.count,a=u.getCanvas,f=u.drawCanvas,c=e*o,l=a(c),g=l.getContext("2d");g.fillStyle=i,s({cellSize:e,count:o},(function(t){var r=t.i,o=t.j,i=t.x,a=t.y;n(r,o)&&g.fillRect(i,a,e,e)}));var h=a(c);f(h,r,{cellSize:e});var v=h.getContext("2d");return v.globalCompositeOperation="destination-in",v.drawImage(l,0,0),h},round:function(t,r){var e=t.foreground,n=t.cellSize,o=t.isDark,a=t.count,f=u.getCanvas,c=u.drawCanvas,l=n*a,h=f(l),v=r.value,d=(void 0===v?1:v)*n/2,w=h.getContext("2d");w.fillStyle=i,s({cellSize:n,count:a},(function(t){var r=t.i,e=t.j,i=t.x,a=t.y;o(r,e)&&(w.beginPath(),w.moveTo(i+.5*n,a),g(w,i+n,a,i+n,a+.5*n,d),g(w,i+n,a+n,i+.5*n,a+n,d),g(w,i,a+n,i,a+.5*n,d),g(w,i,a,i+.5*n,a,d),w.fill())}));var p=f(l);c(p,e,{cellSize:n});var y=p.getContext("2d");return y.globalCompositeOperation="destination-in",y.drawImage(h,0,0),p},fusion:function(t,r){var e=t.foreground,n=t.cellSize,o=t.isDark,a=t.count,f=u.getCanvas,c=u.drawCanvas,l=n*a,v=f(l),d=v.getContext("2d");d.fillStyle=i;var w=r.value,p=(void 0===w?1:w)*n/2;s({cellSize:n,count:a},(function(t){var r=t.i,e=t.j,i=t.x,a=t.y,u=[0,0,0,0];o(r-1,e)&&(u[0]+=1,u[1]+=1),o(r+1,e)&&(u[2]+=1,u[3]+=1),o(r,e-1)&&(u[0]+=1,u[3]+=1),o(r,e+1)&&(u[1]+=1,u[2]+=1),o(r,e)?(o(r-1,e-1)&&(u[0]+=1),o(r-1,e+1)&&(u[1]+=1),o(r+1,e+1)&&(u[2]+=1),o(r+1,e-1)&&(u[3]+=1),d.beginPath(),d.moveTo(i+.5*n,a),g(d,i+n,a,i+n,a+.5*n,u[1]?0:p),g(d,i+n,a+n,i+.5*n,a+n,u[2]?0:p),g(d,i,a+n,i,a+.5*n,u[3]?0:p),g(d,i,a,i+.5*n,a,u[0]?0:p),d.fill()):(2===u[0]&&h(d,i,a+.5*n,i,a,i+.5*n,a,p),2===u[1]&&h(d,i+.5*n,a,i+n,a,i+n,a+.5*n,p),2===u[2]&&h(d,i+n,a+.5*n,i+n,a+n,i+.5*n,a+n,p),2===u[3]&&h(d,i+.5*n,a+n,i,a+n,i,a+.5*n,p))}));var y=f(l);c(y,e,{cellSize:n});var C=y.getContext("2d");return C.globalCompositeOperation="destination-in",C.drawImage(v,0,0),y},spot:function(t,r){var e=t.foreground,n=t.cellSize,o=t.isDark,f=t.count,c=u.getCanvas,l=u.drawCanvas,g=n*f,h=c(g),v=r.value,d=r.foregroundLight,w=void 0===d?a:d,p=h.getContext("2d"),y=c(g),C=c(g),m=y.getContext("2d");return[{dark:!0,foreground:e},{dark:!1,foreground:w}].forEach((function(t){p.fillStyle=i,p.clearRect(0,0,g,g),s({cellSize:n,count:f},(function(r){var e=r.i,i=r.j,a=r.x,u=r.y;if(o(e,i)^+!t.dark){var c,l=(1-(c=e<=7&&i<=7||e<=7&&f-i-1<=7||f-e-1<=7&&i<=7||e+5<=f&&e+9>=f&&i+5<=f&&i+9>=f||7===e||7===i?1-.1*v:.25))/2;p.fillRect(a+l*n,u+l*n,c*n,c*n)}})),l(y,t.foreground,{cellSize:n,context:m}),m.globalCompositeOperation="destination-in",m.drawImage(h,0,0),l(C,y,{cellSize:n,clear:!1})})),C}};function s(t,r){for(var e=t.cellSize,n=t.count,o=0;o<n;o+=1)for(var i=0;i<n;i+=1){r({i:o,j:i,x:i*e,y:o*e})}}function g(t,r,e,n,o,i){i?t.arcTo(r,e,n,o,i):(t.lineTo(r,e),t.lineTo(n,o))}function h(t,r,e,n,o,i,a,u){t.beginPath(),t.moveTo(r,e),g(t,n,o,i,a,u),t.lineTo(n,o),t.lineTo(r,e),t.fill()}o.stringToBytes=o.stringToBytesFuncs["UTF-8"];var v={background:"white",foreground:"black",typeNumber:0,correctLevel:"L",data:"",padding:0,resize:!0},d=function(){function t(t){var e=this;this.options=r({},v),this.cache={},this.isDark=function(t,r){var n=e.cache,o=n.qr,i=n.count;return!(t<0||t>=i||r<0||r>=i)&&o.isDark(t,r)},this.setOptions(t)}var e=t.prototype;return e.render=function(t,e){void 0===e&&(e={});var n,o,i,a=this.options,f=a.background,c=a.foreground,s=a.padding,g=a.effect,h=a.logo,v=a.resize,d=l[g.type]||l.default,w=this.cache.count,p=u.drawCanvas,y=e.size,C=e.cellSize;t||C||y||(C=6),C&&(y=w*C+s+s),y?n=v||!t?u.updateCanvas(t,y):t:(y=t.width,n=t);var m=y-s-s,x=Math.ceil(m/w),k=x*w;if(p(o=u.getCanvas(x*w),f,{cellSize:x}),i=d(r({foreground:c,cellSize:x,isDark:this.isDark},this.cache),this.options.effect),h){var b=r({},h);if(!(h.w||h.h||h.cols||h.rows)){var B=h.image,S=B.width,A=B.height,M=S/A,D=Math.min((w-18)/w,.38),L=Math.min(A,k*D,k*D/M),z=L*M,T=(k-z)/2,I=(k-L)/2;b.w=z,b.h=L,b.x=T,b.y=I}p(i,b,{clear:!1})}return p(n,[{image:o},{image:i,x:s,y:s,w:m,h:m}]),n},e.setOptions=function(t){this.options=r({},this.options,t),this.normalizeEffect(),this.normalizeLogo();var e=this.options,n=e.typeNumber,i=e.data,a=e.logo,u=this.options.correctLevel;a&&["Q","H"].indexOf(u)<0&&(u="H");var f=o(n,u);f.addData(i||""),f.make();var c=f.getModuleCount();this.cache={qr:f,count:c}},e.normalizeEffect=function(){var t=this.options.effect;"string"==typeof t&&(t={type:t}),this.options.effect=t||{}},e.normalizeLogo=function(){var t=u.isDrawable,r=u.drawText,e=this.options.logo;e&&(t(e)?e={image:e}:t(e.image)||("string"==typeof e&&(e={text:e}),e="string"==typeof e.text?{image:r(e.text,e.options)}:null)),this.options.logo=e},t}();t.effects=l,t.helpers=u,t.qrcanvas=function(t){var r=t.canvas,e=t.size,n=t.cellSize,o=function(t,r){if(null==t)return{};var e,n,o={},i=Object.keys(t);for(n=0;n<i.length;n++)e=i[n],r.indexOf(e)>=0||(o[e]=t[e]);return o}(t,["canvas","size","cellSize"]);return new d(o).render(r,{size:e,cellSize:n})},t.setCanvasModule=function(t){var r=t.Canvas,e=t.Image,n=t.createCanvas,o=function(t){return t instanceof r};u.createCanvas=n,u.isCanvas=o,u.isDrawable=function(t){return o(t)||t instanceof e}}}(window.qrcanvas=window.qrcanvas||{});
}
function render() {
$("#nice-rich-text-box h3").each((i, el) => {
if (el.modified) return;
el.modified = true;
const $blockquote = $(el).next("blockquote");
const href = $(el).find("a").attr("href");
const $section = $(`<section></section>`);
$section.css({ marginBottom: "25.6px" });
$section.insertAfter($blockquote);
const qrcodeSRC = qrcanvas
.qrcanvas({
cellSize: 6,
padding: 10,
correctLevel: "H",
data: href,
})
.toDataURL();
const is_wx = href.startsWith("https://mp.weixin.qq.com/");
$section[0].style.cssText = `
display: flex;
align-items: center;
max-width: 100%;
padding: 16px 20px;
box-sizing: border-box;
background-color: rgb(246, 246, 246);
box-shadow: rgb(199, 201, 204) 0 0 0 inset;
border-radius: 6px;
border-color: rgb(62, 62, 62);
font-size: 12px;
overflow: hidden;
margin-top: 12px;"
`;
const $desc = $blockquote.find("p");
$desc.css({ fontSize: "14px", padding: "0" });
$desc.insertBefore($blockquote);
$blockquote.remove();
$section.html(`
<section style="flex: 1;padding-right: 12px; display: flex; flex-direction: column; justify-content: space-between;">
<strong style="font-weight: bold;color: rgb(114, 114, 114);">长按识别二维码查看原文</strong>&nbsp; &nbsp;
<p style="padding: 0; margin: 0; line-height: 1.8;word-break: break-all;font-size: 12px;color: rgb(114, 114, 114);">
${href}
</p>
</section>
<section style="max-width: 90px; flex-shrink: 0;font-size: 0;">
<img style="display: block; margin: 0px auto; max-width: 100%; border-radius: 4px; width: 90px !important; height: auto !important; visibility: visible !important;" src="${qrcodeSRC}">
</section>
`);
if (!is_wx) {
const $a = $(el).find("a");
$a.parent().text($a.text());
}
});
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment