0
が追加されます(Deflateで0
で始まるデータが生成されることはありません)。~h
が追加されます。
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response
@enduml
このようにエンコードされます:
Syp9J4vLqBLJSCfFib9mB2t9ICqhoKnEBCdCprC8IYqiJIqkuGBAAUW2rO0LOr5LN92VLvpA1G00
この結果を得るには次の処理を行います: Base64ではない理由 大きな理由は歴史的なものです。このフォーマットは最初、公開を目的としていませんでした。これを変更するのは今となっては遅すぎます。しかし、その差異は、使用する文字の順番のみです。 Base64は0~63の値を、次の配列に対応させます:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
PlantUMLでは、0~63の値を、次の配列に対応させます:
0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_
圧縮の比較 次の図をエンコードすると、
🎉 Copied!
|
|
Deflateを使うと428文字。
-encodeurl
や -decodeurl
を コマンドライン フラグをつけることで、使用できます。
以下のコードでは、このエンコードを実際に使っています。
@startuml
Alice->Bob : I am using hex
@enduml
次のようになります:
407374617274756d6c0a416c6963652d3e426f62203a204920616d207573696e67206865780a40656e64756d6c
16進数(HEX)形式であることを示すために、PlantUMLサーバに送信するデータの先頭には
~h
を付ける必要があります。
http://www.plantuml.com/plantuml/uml/~h4073...
圧縮されていないので、図のサイズが大きくなるとURLが非常に長くなります。