Show / Hide Table of Contents

image/vnd.star.pngの拡張パラメータ

ベンダー独自の”image/vnd.star.png”メディアタイプは拡張パラメータを有しています。

サーバー開発者によって予期しない image/PNG に対する制限を課すクライアントは、”image/vnd.star.png”メディアタイプを実装しています。 これは、標準の PNG ファイル形式と完全互換となりますが、クライアントにて許容できるビット深度やサイズなどの制限をサーバーに通知するために使用されます。

一般的に、圧縮されていない比較的大きな 24bit ビットマップに対する、クライアントデバイスでの RAM 容量制限の中で許容されるサイズをサーバーに通知します。

クライアントから印刷ジョブを要求する際の GET クエリ文字列にて、サポートされるメディアタイプをサーバーに通知する時、併せてメディアタイプのパラメータが提供されます。 このメディアタイプを認識するサーバーは、送られてくる印刷ジョブが扱えるかどうかクライアントが判断できるようにするため、印刷ジョブの利用可能な状態な時のサーバーからの POST レスポンスにて印刷ジョブのサイズを通知することができます。 例えば、300mm までの image/vnd.star.png 印刷ジョブが印刷可能なプリンタの場合に、300mm 以上の印刷ジョブをサーバーからジョブのサイズも併せてクライアントに通知すると、そのメディアタイプの印刷ジョブはサポート出来ないため別の代替のメディアタイプのジョブを要求するようになります。(サーバーからサイズ付き”image/vnd.star.png”と”text/plain”のメディアタイプのジョブを通知している場合は、クライアントは”text/plain”のジョブを要求します)

クライアントからサーバーへの GET リクエスト

クライアントが”image/vnd.star.png”メディアタイプを使って印刷ジョブの GET 要求を行う際に次のパラメータが提供されます。

Parameter Description
mono_len=<length> クライアントがサポート出来るモノクロ PNG 画像の最大ピクセル縦長(※)をサーバーに通知します。
※この高さはメモリ制限に基づいているもので、画像の幅についてはプリンタの印字領域のドット幅に一致すると想定しています。
24bpp_len=<length> クライアントがサポート出来る 24bit カラーPNG 画像の最大ピクセル縦長(※)をサーバーに通知します。
※この高さはメモリ制限に基づいているもので、画像の幅についてはプリンタの印字領域のドット幅に一致すると想定しています。

GET 送信リクエストサンプル (mC-Print2/3)

    [http/https]://[cloudprntURL]?uid=<printer ID>&type=image/vnd.star.png;mono_len=<length>;24bpp_len=<length>&mac=<mac address>

サーバーからクライアントへの POST レスポンス

サーバが”jobReady=true”フィールドを POST レスポンスにて返答する時、提供可能なメディアタイプのリストも”mediaTypes”フィールドを使って提供しなければなりません。
この時、”image/vnd.star.png”には提供可能な実際のジョブサイズと形式を記載するために、次のパラメータを含めます。

Parameter Description
mono_len=<length> クライアントに印刷ジョブは<length>ピクセル長であるモノクロ PNG 画像が提供されることを通知します。
24bpp_len=<length> クライアントに印刷ジョブは<length>ピクセル長である 24bit カラーPNG 画像が提供されることを通知します。

サーバーは一方か両方のパラメータを提供することができ、モノクロのみもしくはモノクロか 24bit カラーの両方の形式で提供できることをクライアントに示すことが出来ます。
サーバーからの POST レスポンス例(800 ピクセル(ドット)長のモノクロ PNG 画像形式及びテキスト形式):

{
    "jobReady": true,
    "mediaTypes": [ "image/vnd.star.png;mono_len=800", "image/png", "text/plain" ]
}

上記の場合、mC-Print3 ではモノクロ PNG 画像形式の条件は制限内に収まっているため利用可能な印刷ジョブとして認識されます。そのため下記クエリパラメータにて GET 要求がクライアントから発行されます:
    ?type=image/vnd.star.png;mono_len=2400;24bpp_len=400&mac=00:00:00:00:00:00

サーバーがこの上記 GET 要求に対して応答する時、MIME/Content type を”image/vnd.star.png”または“image/png”と指定することができます。(この印刷ジョブは、PNG 画像形式に準拠しており PNG 画像サイズもクライアントの制限内に収まっていると想定します)
概要に戻る
Back to top