0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

アスキーアート総合Advent Calendar 2018

Day 9

AAをCanvasで表示するWebComponentsを作成してみる。Stencilで。

Posted at

この記事はStencil.jsを使ってAAをCanvasで表示するWebComponentsを作成する記事です。以前、AAをSVGで表示する記事がありますので、こちらも読んでもらえると良いと思います。
AAをSVGで表示するWebComponentsを作成する、Stencilで。

完成品

download.png
https://codepen.io/scrpgil/pen/VqpKPX
こちら、AAをCanvasで表示したあとに「右クリックで画像を保存」したものになります。ちゃんとクライアント側だけで、文字列→画像化が行えていますね!

設計

さてさて、Canvasに描画する方法ですが、fillTextstrokeTextを使って行う方法もありますが、大抵の場合、描画したAAがぼやけます。なので今回は一度SVGにAAを描画してそれをCanvasに描画する方法で行きたいと思います。具体的には以下のような手順。

  1. AA(文字列)を受け取る
  2. AAをSVGで表示する
  3. SVGをImageに描画する
  4. ImageをCanvasに描画する

実装

import {Component, Element, Prop} from '@stencil/core';

@Component({
  tag: 'aa-img',
  styleUrl: 'aa-img.css',
})
export class AAImgComponent {
  @Prop() aa: string;
  @Element() el: HTMLElement;
  FONT_SIZE: number = 16;

  get_tex_width(txt, font) {
    let element = document.createElement('canvas');
    let context = element.getContext('2d');
    context.font = font;
    return context.measureText(txt).width;
  }
  createSvgElenet(data) {
    let maxWidth = 0;
    let maxHeight = this.FONT_SIZE * 2 * data.length;
    for (let i = 0; i < data.length; i++) {
      let width = this.get_tex_width(
        data[i],
        this.FONT_SIZE * 2 + "px 'aahub'",
      );
      if (maxWidth < width) {
        maxWidth = width;
      }
    }

    let svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
    let style = document.createElementNS('http://www.w3.org/2000/svg', 'style');
    let group = document.createElementNS('http://www.w3.org/2000/svg', 'g');
    let fontFace = document.createTextNode(
      `@font-face { font-family:'aahub'; src: url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2"); }`,
    );
    style.appendChild(fontFace);
    svg.setAttribute('viewbox', '0 0 ' + maxWidth + ' ' + maxHeight);
    group.setAttribute('font-family', 'aahub');
    group.setAttribute('font-size', String(this.FONT_SIZE * 2) + 'px');
    for (let i = 0; i < data.length; i++) {
      let text = document.createElementNS('http://www.w3.org/2000/svg', 'text');
      text.setAttributeNS(null, 'x', '0');
      text.setAttributeNS(null, 'y', String(this.FONT_SIZE * 2 * (i + 1)));
      let textNode = document.createTextNode(data[i]);
      text.appendChild(textNode);
      group.appendChild(text);
    }
    svg.appendChild(style);
    svg.appendChild(group);
    return [svg, maxWidth, maxHeight];
  }
  componentDidLoad() {
    let canvas = this.el.querySelector('canvas') as HTMLCanvasElement;
    let ctx = canvas.getContext('2d');
    ctx.font = String(this.FONT_SIZE) + "px 'aahub'";

    const data = this.aa.split(/\\n|\r\n|\r|\n/);
    let svg: any = this.createSvgElenet(data);
    let svgData: any = new XMLSerializer().serializeToString(svg[0]);
    let scale = 1;
    canvas.width = svg[1] * scale;
    canvas.height = svg[2] * scale;
    ctx.fillStyle = 'transparent';
    ctx.fillRect(0, 0, canvas.width, canvas.height);

    let image = new Image();
    image.onload = () => {
      let dstWidth: any = svg[1] * scale;
      let dstHeight: any = svg[2] * scale;
      ctx.drawImage(image, 0, 0, svg[1], svg[2], 0, 0, dstWidth, dstHeight);
    };
    image.src =
      'data:image/svg+xml;charset=utf-8;base64,' +
      btoa(unescape(encodeURIComponent(svgData)));
  }
  render() 
    return <canvas>&nstp;</canvas>;
  }
}

ソースコード

GitHub
上記、WebComponents含めSVG、textarea等があります。他にも色々模索中ですので、よかった見てみてください(そして、スターをください)

まとめ

AAをCanvasで表示することで色々なことができそうですね。
この他にも色々AAを扱いやすくする方法を模索していきたいですね。

それでは。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?