Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function getTextOffset(fontSize, font, textBaseline) {
- var text = 'test',
- canvas = document.createElement('canvas'),
- width = 300,
- height = parseFloat(fontSize) * 2;
- canvas.width = width;
- canvas.height = height;
- var cctx = canvas.getContext('2d');
- cctx.textBaseline = textBaseline || 'middle';
- cctx.font = font;
- cctx.fillStyle = 'red';
- cctx.fillText(text, 0, 0);
- var imgdata = cctx.getImageData(0, 0, width, height);
- var d = imgdata.data;
- var offsetX = 10000000,
- offsetY = offsetX;
- for (var y = 0; y < height; y++) {
- for (var x = 0; x < width; x++) {
- var n = (y * width + x) * 4;
- if (d[n + 3] > 0) {
- if (y < offsetY) {
- offsetY = y;
- }
- if (x < offsetX) {
- offsetX = x;
- }
- }
- }
- }
- return { x: offsetX, y: offsetY };
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement