小型大文字変換
「Hello World」は「Hᴇʟʟᴏ Wᴏʀʟᴅ」になり、8つの小文字が小型大文字に変わり、HとWは大きいまま残ります。見た目が文字そのものに含まれるため、プロフィール欄や書式なしのタイトルでも崩れません。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Hello World
- 結果
- Hᴇʟʟᴏ Wᴏʀʟᴅ
- 長さ
- 11
- 元の長さ
- 11
- 対応付け結果
- 8
Unicodeの小型大文字を使えば、プレーンテキストしか受け付けない場所でも、本物のスモールキャップスのコントラストを保てます。フルサイズの大文字はそのまま大きく、小文字はPhonetic Extensions、IPA Extensions、Latin Extendedの、キャピタル形をしたコンパクトなグリフになります。作り手はその組み合わせをプロフィール、章タイトル、商品ラベル、返信に貼り付けます。スタイルはスタイルシートや、ソーシャル欄が取り除いてしまうOpenType機能ではなく、コードポイントそのものに乗って運ばれるからです。この変換器は文字列の各文字をたどり、aからzを慣用のLATIN LETTER SMALL CAPITALに置き換え、数字・句読点・空白・絵文字・他の文字体系・すでに大文字の文字は届いたまま残します。Unicodeには専用の小型大文字Xがないため、xはラテン小文字のxのまま残し、対応件数に計上します。
小文字がUnicodeの小型大文字になる仕組み
本物の組版用スモールキャップスは、すべてを大文字で叫ぶこととは違います。きちんと組まれた見出しでは固有名の先頭はフルサイズのキャピタルのまま、残りの文字はほぼxハイトのキャピタル形を取ります。
フォントは通常OpenTypeのスモールキャップス機能でそれを行いますが、その機能はプレーンテキストの自己紹介、マーケットプレイスのタイトル、表計算のセルでは生き残りません。
Unicodeは代わりに、正式名称がLATIN LETTER SMALL CAPITALである文字形の集まりを、主にPhonetic Extensions、IPA Extensions、Latin Extended-Dへ散在させて用意しています。
小文字aはU+1D00、bはU+0299、cはU+1D04、zはU+1D22、fとsはU+A730とU+A731、qは新しい小型大文字U+A7AFです。この変換器はその表をラテン小文字にだけ適用するので、HelloはフルサイズのHのあとに小型のelloが続く形になり、すべてが小型大文字へ潰れた文字列にはなりません。
大文字、数字、句読点、絵文字、他の文字体系はそのまま通過します。これらのグリフの一部はUTF-16でサロゲートペアが必要な面にあるため、実装はコード単位ではなくUnicodeスカラー値で走査し、絵文字が分割されないようにしています。
UnicodeはLATIN LETTER SMALL CAPITAL Xを定義したことがなく、文字xはラテン小文字のxのまま残すのが生成器の慣例であり、成功した応答のmapped件数に現れます。
スモールキャップス変換が実務で使われる場面
編集デザイナーは、追い見出し、章のキッカー、ブランドの締めが組んであるように見せたいのに、下流のアプリが無視するWebフォントは配りたくないときに、今でも小型大文字に手を伸ばします。ソーシャル担当は同じグリフをプロフィールやストーリーズのステッカーへ貼ります。それらの欄はCSS font-variantを剥がし、実際に送った文字だけを残すからです。
ブランドやファッションのチームは、プレーンテキストしか受け付けないのに顧客フィードでは小型大文字の見た目を描画する市場向けに、商品タイトルのバリエーションを作ります。
Unicodeのコードポイント演習を出す教員には、Helloからキャピタルとスモールキャップスが混ざる文字列への決定的な対応表が必要であり、一晩で表が変わる生成サイトからの一度きりの貼り付けでは足りません。サポート窓口は顧客から装飾Unicodeを受け取り、各グリフを元のラテン文字へ戻せる文書化されたアルファベットを求めます。
CSS font-variant small-caps、OpenType smcp、Mathematical Bold、Frakturのブラックレター、上付き、通常の大文字変換が必要な場合は、別の検索意図と別のランディングとして扱い、ラテン小文字から作るコピー可能なUnicode小型大文字専用のこのページに詰め込まないでください。
活用例
キャピタルの対比を残す見出し
Hello WorldをフルサイズのHと小型のelloにし、プレーンテキスト欄でも見出しやキッカーが組んであるように見せます。
ソーシャルの自己紹介とステッカー
CSS small-capsやWebフォントを剥がすプロフィールやストーリーズのステッカーへ、Unicodeの小型大文字を貼り付けます。
よくある質問
どの文字が小型大文字になりますか?
ラテン小文字のa–zです。大文字はフルサイズのままです。数字、空白、句読点、絵文字、他の文字体系は通過し、unmappedに列挙されます。
CSS font-variant: small-capsと同じですか?
違います。 これはテキストの中を移動するUnicodeの小型大文字コードポイントを出します。CSSやOpenTypeのスモールキャップスは、多くの欄が剥がしてしまうフォントとスタイルシートに依存します。
なぜxは普通のxに見えますか?
UnicodeはLATIN LETTER SMALL CAPITAL Xを定義していません。この変換器はラテン小文字のxを残し、それでも対応した小文字として数えます。
大文字はどうなりますか?
普通のキャピタルのままなので、本物のスモールキャップスの対比が残ります(すべて小型大文字の列ではなくHello)。
日本語の文字も変換されますか?
いいえ、変換されるのは英字の小文字aからzだけです。ひらがな、カタカナ、漢字、数字、記号はそのまま残るので、日本語の文に混ぜても英字の部分だけが小型大文字になります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/str/small-caps \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World"}'const res = await fetch("https://api.kit.forhosting.com/str/small-caps", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/small-caps",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/small-caps", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/small-caps", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Hello World"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.small_caps",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_chars | 65536 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
送るものと返ってくるもの
検証の失敗は前払い残高を消費しません。典型的な確認は、Hello Worldを大きなHと小型のelloの混在へ変換すること、すでに大文字のCASEが変換後の小文字の横で大きく残ること、数値や空のtextが黙って強制変換されずに拒否されることです。スモールキャップスにしたい見出し、キャプション、ラベル、文を、必須の文字列フィールドtextに入れて送ってください。同じフィールドにはinput、string、value、content、message、data、sという別名も使えるので、スクリプトや表計算は列名を変えずに既存のペイロード形を再利用できます。成功時の応答は元のtextをエコーし、変換後の文字列をresult、そのUnicodeスカラー長をlength、入力のスカラー長をoriginal_length、表に当たったラテン小文字の件数をmapped、通過したユニークな文字をunmapped_countとunmapped、ログ用の固定タグをmethodのto_small_capsとして返します。textの欠落、null、空文字、数値、オブジェクト、配列、真偽値、文書化された上限を超える文字列はinvalid_inputで失敗し、問題を名指しする英語のメッセージが付きます。成功したAPI呼び出しの料金は公開された基本額$0.002/件で、同じ純粋関数がブラウザのプレビューとWorkerの両方を動かすため、環境間でフィクスチャがずれません。
スモールキャップス変換が実務で使われる場面
この機能は純粋なparseエンジンなので、API料金は成功1件あたり公開された基本額$0.002であり、検証の失敗は残高を消費しません。
連携の活用例
コンテンツパイプライン向けの決定的フィクスチャ
予約投稿ツールとCI検査が常に同じアルファベットを使うよう、goldenなスモールキャップス文字列を生成します。
技術的な質問
料金はいくらですか?
ブラウザのツールは無料で、お使いの端末で動きます。APIリクエストは成功1件あたり$0.002のKIT前払い残高を使い、無効な入力は課金されません。