Rev 17518 | Rev 18218 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 17518 | Rev 17586 | ||
---|---|---|---|
Line 735... | Line 735... | ||
735 | var C;var c;var len = txt.length;var baseline = 'middle';var space = 0;ctx.save();var subsup=0;\ |
735 | var C;var c;var len = txt.length;var baseline = 'middle';var space = 0;ctx.save();var subsup=0;\ |
736 | var m = 0.4*(ctx.measureText(txt).width);\ |
736 | var m = 0.4*(ctx.measureText(txt).width);\ |
737 | var h = ctx.measureText('M').width;\ |
737 | var h = ctx.measureText('M').width;\ |
738 | switch(use_offset){\ |
738 | switch(use_offset){\ |
739 | case 0:break;\ |
739 | case 0:break;\ |
740 | case 1:y=y-h |
740 | case 1:y=y-h;break;\ |
741 | case 2:x=x+h;break;\ |
741 | case 2:x=x+h;break;\ |
742 | case 3:x=x+h;y=y-h |
742 | case 3:x=x+h;y=y-h;break;\ |
743 | case 4:x=x-m;break;\ |
743 | case 4:x=x-m;break;\ |
744 | default:break;\ |
744 | default:break;\ |
745 | };\ |
745 | };\ |
- | 746 | var alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';\ |
|
- | 747 | function check_alpha(C){if(alphabet.indexOf(C) != -1){return 1;}else{return 0;};};\ |
|
746 | var S = parseInt(ctx.font) || 10;var s = 0.8*(parseInt(ctx.font)) || 8;\ |
748 | var S = parseInt(ctx.font) || 10;var s = 0.8*(parseInt(ctx.font)) || 8;\ |
747 | ctx.font = S+'px Helvetica';ctx.textBaseline = baseline;\ |
749 | ctx.font = S+'px Helvetica';ctx.textBaseline = baseline;\ |
748 | for( c = 0 ; c < len ;c++){\ |
750 | for( c = 0 ; c < len ;c++){\ |
749 | C = txt.charAt(c);space = 0;\ |
751 | C = txt.charAt(c);space = 0;\ |
750 | if(C == '_'){ctx.font = s+'px Helvetica';subsup = 1;c++;space = 3;baseline='top';C = txt.charAt(c);}\ |
752 | if(C == '_'){ctx.font = s+'px Helvetica';subsup = 1;c++;space = 3;baseline='top';C = txt.charAt(c);}\ |
751 | else\ |
753 | else\ |
752 | if(C == '^'){ctx.font = s+'px Helvetica';subsup = 1;c++;space = 3;baseline='bottom';C = txt.charAt(c);}\ |
754 | if(C == '^'){ctx.font = s+'px Helvetica';subsup = 1;c++;space = 3;baseline='bottom';C = txt.charAt(c);}\ |
753 | else\ |
755 | else\ |
754 | if(C == ' '){ctx.font = S+'px Helvetica';if(subsup == 1){space = 0.6*s - (ctx.measureText('M').width);subsup = 0;};baseline = 'middle';}\ |
756 | if(C == ' ' ){ctx.font = S+'px Helvetica';if(subsup == 1){space = 0.6*s - (ctx.measureText('M').width);subsup = 0;};baseline = 'middle';}\ |
- | 757 | else\ |
|
- | 758 | if( subsup == 1 && c == '-'){c = '\\u2212';ctx.font = s+'px Helvetica';}\ |
|
- | 759 | else\ |
|
- | 760 | if( subsup == 1 && c == '+'){c = '\\u002B';ctx.font = s+'px Helvetica';}\ |
|
- | 761 | else\ |
|
- | 762 | if( check_alpha(C) == 1 ){ctx.font = S+'px Helvetica';subsup = 0;baseline = 'middle';}\ |
|
755 | else\ |
763 | else\ |
756 | if(C >= '0' && C <= '9'){ctx.font = s+'px Helvetica';}\ |
764 | if(C >= '0' && C <= '9'){ctx.font = s+'px Helvetica';}\ |
757 | else{ctx.font = S+'px Helvetica';};\ |
765 | else{ ctx.font = S+'px Helvetica';};\ |
758 | ctx.textBaseline = baseline;ctx.fillText(C,x,y);x = space + x + ctx.measureText(C).width;\ |
766 | ctx.textBaseline = baseline;ctx.fillText(C,x,y);x = space + x + ctx.measureText(C).width;\ |
759 | };\ |
767 | };\ |
760 | ctx.stroke();\ |
768 | ctx.stroke();\ |
761 | ctx.restore();\ |
769 | ctx.restore();\ |
762 | return;\ |
770 | return;\ |