SATySFiでテントを描くコマンド作った

これは2018 SATySFi advent calendar 20日目の記事です。[] []

現在の文脈のフォントサイズに合わせてテントを建てるコマンドを作りました。

f:id:youz:20181221003135p:plain

このGistに入っているsatyhファイル

  • affinetransform.satyh
  • flexpath.satyh
  • camp.satyh

上記3つをコピーしてきて@import: campすると\Tentコマンドが使えるようになります。

引数はfloat * float型のタプルで、(0.0, 0.0)がニュートラル、数値を増やしたり減らしたりするとクネクネします。

使用例

@require: stdja
@import: camp

let-inline ctx \fsz sz it =
  let c = set-font-size sz ctx in
    read-inline c it

in
document (|
  title = {\Tent((0.0, 0.0));};
  author = {};
  show-title = true;
  show-toc = false;
|) '<
  +p{
    \fsz(40pt){
      \Tent((0.0, 0.0));
      \Tent((0.2, 0.1));
      \Tent((0.4, 0.2));
      \Tent((0.1, 0.1));
      \Tent((0.0, 0.0));
      \Tent((0.2, 0.1));
      \Tent((0.4, 0.2));
      \Tent((0.1, 0.1));
      \Tent((0.0, 0.0));
    }
  }
>

出力結果↓ f:id:youz:20181221002143p:plain

enjoy!

ゆるキャン△テントマーク高耐久ステッカー

ゆるキャン△テントマーク高耐久ステッカー

www.amazon.co.jp