この記事は
この記事は ACCESS Advent Calendar 2016 17日目の記事です。
ACCESS の @pankona です。
gomobile で font パッケージ等を使ってテキストを表示する方法について書きます。
はじめに
gomobile とは
そもそも gomobile ご存知でしょうか。gomobile 。
gomobile って何かっていうのをすごく平たく言うと、「Go 言語でモバイルアプリ作れちゃうやつ」です。
ここでいうモバイルアプリというのは、つまり Android、iOS のアプリのことです。
公式ページはこちら → https://github.com/golang/go/wiki/Mobile
興味あったら見てみてください。
とはいえ Experimental
モバイルアプリを作れると書きましたが、gomobile は Go 言語開発プロジェクトの中でもまだ Experimental な位置づけです。
使い方にもよりますが、いざこれでゲームを作ってみようなんて思いたって作り始めた日には、色々機能が足りない、もしくはやれそうな気がするがやり方が不明、なんてことに結構ぶちあたります。
その中のひとつが、 「画面にテキストを表示する」 という機能です。
ということで今回は、少しでもそういった壁にぶちあたった方々の参考になればと思いつつ、
「gomobile でテキストを表示する方法」について書いてみます。
完成したものがこちら
何はともあれ、テキストを表示するとどうなるか見てください。
むやみに回転させてみました。
ソースコード
ソースコードはこちら → https://github.com/pankona/gomobile_font_test
※ gomobile に含まれている example をベースにして書きました。
実際にテキスト表示したい!けどやり方がわかんない!というような方はだいぶ稀有でしょうが、しかしそういう方にとって上のソースコードがきっと参考になるだろうことを願ってやみません。
ちなみにフォントは gofont パッケージのものを使用
表示するフォントは truetype ならそんじょそこらで入手したフォントでも表示できると思われますが、
実は上記 GIF 動画で使用しているフォントは gofont というパッケージに含まれているモノのうち、 goregular というのを使っています。
Go fonts についてはこちら → Go fonts - The Go Blog
上の記事には色々書いてあるんですが、特に興味深い箇所は「Go fonts の特徴はそのライセンスだよ」って書かれてるところです。
Perhaps the most remarkable feature of the Go fonts is their license: They are licensed under the same open source license as the rest of the Go project's software, an unusually free arrangement for a high-quality font set.
Go プロジェクトの他のソフトウェアと同じライセンスだよ、って書いてると思うんですが、
だとするとたぶん BSD ライセンスってことですかね。割と気楽に使えるフォントがパッケージとして提供されてるっていうのはなかなか嬉しいのでは。
終わりに
さてテキストぐるぐるをお見せしました。いかがでしたでしょうか。
gomobile に限らず、Go 言語あまりわからん、という方も、これを期に Go 言語デビューしてみてはいかがでしょうか。Go 言語、楽しいよ!
明日 12/18 の ACCESS Advent Calendar は @shotasakamoto さんの出番です。お見逃しなく!