shield バッジ生成
Web処理はすべてブラウザ内で完結します。データは送信されません
このプレビューはローカルで描いた近似です。実際の画像は shields.io が本物のフォント指標で描画するため、幅が数ピクセル異なることがあります。
README に置くあの小さなバッジを作ります。左右の文字を入れて色とスタイルを選ぶと、そのまま貼れるスニペット(URL・Markdown・HTML・reStructuredText)と、オフラインで使える SVG が得られます。 ⚠️ プレビューはローカルで描画しており、このページは通信しません。 よくある手抜きは `<img src="https://img.shields.io/…">` でのプレビューですが、それだと 1 文字入力するたびに第三者から画像を取得することになり、入力した文字も送信されます。ここではローカルで組み立てた SVG を表示するので、1 バイトも出ていきません。 ⚠️ ただし生成される URL は shields.io を指します。 README に貼ったあと、それを読む人のブラウザーが shields.io から画像を取得します —— その通信はあなたが起こしたものでも、このツールが起こしたものでもありませんが、存在は知っておくべきです。第三者に一切アクセスさせたくない場合は「SVG ソース」のスニペットを使ってください。自己完結していて、どこに置いても表示されます。 ⚠️ ローカルのプレビューは近似です。 実際の画像は shields.io が本物のフォント指標で描画し、こちらは幅テーブルで推定するしかありません(Node に canvas は無く、ブラウザーにどのフォントがあるかも保証できません)。そのため幅が数ピクセル違うことがあります —— 正確ぶるより、そう書いておくほうが誠実です。 4 つのスタイル:`flat` は既定の角丸、`flat-square` は直角、`plastic` は縦方向の光沢が入り、`for-the-badge` は高さが増して文字が大きく、すべて大文字になります。
機能
- プレビューはローカル描画。ページは一切通信しません
- 4 スタイル:flat・flat-square・plastic・for-the-badge
- 色は名前付き(`brightgreen` など)か任意の 16 進数。ラベルの色は別に指定できます
- simple-icons のアイコンを任意で追加(slug を入力、例:`github`)
- 5 種類のスニペット:URL・Markdown・HTML・reStructuredText・オフライン SVG ソース
- SVG はダウンロード可能。このスニペットは何にも依存しません
- 各スニペットを個別にコピーできます
使い方
- 左右のテキストを入力します
- 色とスタイルを選びます(必要ならアイコンの slug も)
- プレビューを見て調整します
- 必要なスニペットをコピーするか、SVG をダウンロードします
よくある質問
- 入力内容は shields.io に送られますか?
- 送られません。 プレビューはローカルで組み立てた SVG で、ページはリクエストを出しません —— 開発者ツールのネットワークパネルを開いて何文字か入力してみてください。外部へのリクエストは現れません。 ただし共有する URL は shields.io を指します:誰かがあなたの README を開くと、その人のブラウザーが画像を取得します。その通信はあなたのサイトで読者が起こすもので、このツールとは無関係です —— とはいえ URL が第三者を指す以上、知っておく価値はあります。 読者に第三者へアクセスさせたくない場合は「SVG ソース」のスニペットを使ってください。SVG をリポジトリやページに直接置けば、何にも依存しません。
- プレビューが GitHub の表示と少し違うのはなぜですか?
- 幅が推定値だからです。shields.io はサーバー側で本物のフォント指標からラベル幅を計算しますが、こちらはブラウザー内で SVG を組み立てます —— Verdana が入っている前提は置けませんし、文字列を測るためだけにフォントを読み込むのは本末転倒です。そこで同梱の幅テーブルを使っています(`i` や `l` は `m` や `w` より狭く、CJK は全角として数えます)。 結果として、色・スタイル・文字は完全に一致し、幅だけが数ピクセル違い得ます。実際の画像は shields.io の描画が正です。 副次的な利点として、`for-the-badge` の大文字化はこちらでは正確です —— フォントに依存しません。
- ラベルに日本語は使えますか?
- 使えます。URL 内ではパーセントエンコードされ(`構築` は `%E6%A7%8B%E7%AF%89`)、shields.io は正しく表示します。ローカルのプレビューも全角として幅を数えるので、潰れることはありません。 ただし幅の計算方法の違いは残ります(前の質問を参照)。全角文字ではその差がやや目立ちます。
関連ツール
UA 解析
WebUser-Agent を解析し、ブラウザ・バージョン・OS・デバイス種別・エンジンを判定します。判定はパターン照合による概算です。すべてブラウザ内で処理します。
HTTP ステータスコード
WebHTTP ステータスコードの検索。番号から意味を、キーワードから番号を引けます。1xx〜5xx の分類・利用場面・確認のポイント付き。すべてブラウザ内で処理します。
MIME タイプ
Web拡張子から MIME タイプを、MIME タイプから既定の拡張子を検索。js なら text/javascript、image/svg+xml なら .svg が返ります。すべてブラウザ内で処理します。
URL 解析
WebURL を解析し、スキーム・ホスト・ポート・パス・クエリパラメータ・アンカーに分解します。パラメータは元の値とデコード値を並記。すべてブラウザ内で処理します。
.gitignore 生成
Web.gitignore 生成:言語・フレームワーク・エディタ・OS の 17 テンプレートを選び、重複を除去してテンプレートごとに注記で区切ります。ブラウザ内で処理します。
画像 Base64 変換
Web画像を Base64 / Data URL に変換。ドラッグ・選択・貼り付けに対応し、長辺での縮小と PNG/JPEG/WebP への変換ができます。ブラウザ内で処理し、送信しません。