messykitchenなブログ

ただひたすらに散らかった台所や人生やその他を晒す。

脱W〇rd, 脱E×cel, 脱@st@h : #7

スプライトを表示する

スプライトってどんなもの?

ドキュメントより引用:

Spriteは、図で使用できる小さなグラフィック要素です。

たとえば、こんな画像を配置したいとします。

※ PlantUML の HP より画像を拝借 & リサイズ

表示するにはどうするの?

白黒ですが、記述は次のようになります。

@startuml ./output/

component   "<$demo>" as demo #white

right header
%date[yyyy.MM.dd 'at' HH:mm]%
endheader

sprite $demo [40x36/16z] {
dT27aciX20PWgdX0Szx_RI_YzXRd_hj9BD_029oa8Hp5-8XHFsEkm2VCsFe9Q_wy77hJO3XmU50keyPkHyCJEvkB61yDkPqmy-xNSzZ2p7euFd59klNkzBIj
Xn-ympn3W7ZWBZnp_X-kzVqYLCMzk0o_kHPpZWv0sbIifUgF-vwvw1yS-HmZOZgtnXbjIztvSR1uTNJD4VcdEaOn1EhpVimxC-ErtkgOKRcOnhWK8Vz8_A4w
FUvxlCnbx4GJQUlN28c5kOqkEbRxKVNSuvNkJmXBXjchytfFzItuJZtPggTAdYZZ35NFFyXG04ebAWXjkP2Q9euekLcD5aMKrqBs2BUJ7gybEq5brLh1QRKe
1o0H1QrgfQtP2-u52swNqMekkI9zgScl2z5t1tmbrBMg_VT5kLro2FoHSfNUaNuDupy
}

@enduml

$demo を下記のように設定すると、色が付きます。

私が知らないだけだったかもなのですが、カラーなスプライトも表示できるようになってました。

sprite $demo [40x36/color] {
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztrzRzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztJuvzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyvt&zizz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>s~u:zzue
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>sWtauetJtJ
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>sWtatrs~uvzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzRsWtau:o~yvzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzRsWzRtrs~ufzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzu:tJyvs~tJzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzztJuNtat&zzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyetJuezzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzrRRraNuvzzzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyW:JJRrJJNrn>zzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzWO~JW:W:W:RrJJJJvi
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#e~bRrW:RrRrNarR
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#f#v*MJKW:ivvivi
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#e#v#w*drRzzvivi
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#f#v#v;uvRzzvivi
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#f#v#v*urRzzvivi
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzK<#f#v#v*urRzzvivi
zzzzzzzzzzzzvie;ZbrRzzzzzzzzzzviicibrRzzzzzzzzzzrRRbW:vizzvjzzK<#f#v#v*urRzzvivi
zzzzzzzzviaNQoU$U%QHZrzzzzrSeci%uWuXe$eMzzzzrRRs:H!%!$:XaNzzzzK<#f#v#v*urRzzvivi
zzzzzzr>V*Q$YHYHYIYIU$UpmviJqGynynynz*qYiJRr&H!$&%&%:&&%&%JKviOP#e#v#v*urRzzvivi
zzn>ZaQHY%YIYHYYYHmOm<Y%UGq%z&ynypypzgzxz-dn>H&&:&>Z&%&%&%!$>Y;L#w#v#v*urRzzvivi
N&QGU$YHYHYHYHm;qfd+qwv>YHUHd%uXzfzyzPzizgzMuXRH:IefeP:YJ-J-!%&%#-#v#w*uvRzzvivi
*-MZYHYHYHYHYHYHlsqfqOlsYHYHY%YHhXz:zfzMypynynz%mHInVtiweO_p&%&%&%&I#M*urRzzvivi
#v#v;-QHYHYHYHYHY%YHYIY%YHYHYHYIU%YmqYynynynynynz&ynRG>I&%&%&%&%&&&%!$:pvizzvivi
#e#v#w#e_pYHYHYHYHYHYHYHYHYIYHU%Ypmfr;ynyoynyoynuXmZvQNL!%:&&%&&&%&%JLn>zzzzvivi
#v#v#v#v#v;MMIYHYHYHYHYHYHY%YYiNvizzvPyXyoynyXqZmuvizza;&%:&&%&%_pivzzzzzzzzvivi
#-#e#v#v#v#w#e>qUHYHYHY%UHdsvizzzzzzvhyoynqYqtvizzzzzziv&%&%>YaOzyzzzzzzzzzzvivi
ivK;#N#f#w#v#v#v*MIIUHdLr?zzzzzzzzzzzzqZqrrRzzzzzzzzzzrR>YVsvizzzzzzzzzzzzzzvivi
zzzzef;L#N#w#v#v#w#eW;zzzzzzrRivrRzzzzvRzzzzzzrRivrRzzzzrRzzzzzzn>ivvizzzzzzvivi
zzzzzzviae#-#e#w#v#favzzzzzzrReerRzzzzzzzzzzzzn>eerRzzzzzzzzzzzziveevizzzzzzvivi
zzzzzzzzzzn>Js#M#v#vafzzzzzzzzvivizzzzzzzzzzzzzzvizzzzzzzzzzzzzzvivizzzzzzzzvivi
zzzzzzzzzzzzzzaN;+#:evzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzvivi
zzzzzzzzzzzzvzzzzyRrRrrRn>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>n>rRivvi

しかしながら、上記のようなデータを手動で作成するのは無理

どうやってスプライトのデータを作るの?

詳細は説明書に書いてありますので、そちらを参照してください。

作成方法1: コマンドライン

java -jar plantuml.jar -encodesprite 16z foo.png

しかし、次の方法のほうが楽にできるかも。

作成方法2: GUI

以降、Windows上での動作です。(java だから、どのOS上でも同じかな?)

  1. GUI を起動(plantuml.jar をダブルクリックなど)する。

  2. メニューバーの File / Open Sprite Window をクリックする。

  3. 画像をクリップボードへコピーする。

  4. エンコードされたスプライトデータが吐き出されるので、必要なものをコピーして使用できます。

スプライトデータは別ファイルにしておいて、!include するのがいいかもしれません。