網点濃度をグレー値へ変換
この計算ツールは、単色インキの網点が印刷時のドットゲインによって指定濃度より広い面積を覆う場合に、見た目がどの程度のグレーになるかを推定します。公称網点濃度と想定される最大ドットゲインを入力してください。有効面積率、8ビットのニュートラルグレー、RGBチャンネル、16進数の色見本を返します。レイアウト、校正計画、印刷仕様、自動プリフライトに利用できる決定論的な近似であり、実測した印刷機プロファイルやカラーマネジメント済みの本機校正を置き換えるものではありません。
無料で実行
公称網点濃度と想定ドットゲインを入力します
まず、単色の印刷インキに指定した網点濃度を入力してください。一般的な製版工程では、0パーセントはインキが付かない紙面、100パーセントはベタ面を表します。そのため、50パーセントの網点は、印刷機の特性を考慮する前の段階で面積の半分を覆う設計です。次に、階調値増加とも呼ばれる想定ドットゲインを入力します。このツールでは、その値を50パーセントの中間調で最大になるパーセントポイントの増加量として扱います。たとえば、公称50パーセントに15パーセントのドットゲインを指定すると、有効面積率は約65パーセントになります。初期値は説明用の目安であり、あらゆる印刷条件に共通する仕様ではありません。可能な場合は、印刷会社が提示する値、または実際の用紙とスクリーニング方式に対応した工程管理目標をご使用ください。入力値は有限の数値で、許容範囲内でなければなりません。
決定論的な近似方法をご確認ください
ドットゲインは、すべての濃度へ均等に加算されるものではありません。紙白は白のままである必要があり、ベタ面が100パーセントを超えることもありません。そこで、この計算では階調値増加に正弦曲線を使用します。補正量は両端でゼロとなり、50パーセントで入力した最大値に達します。その補正量を公称網点濃度へ加え、有効面積率を物理的な範囲に収めます。次に、面積率を反転して8ビットのニュートラルスケールへ割り当てます。このスケールでは0が黒、255が白であり、最も近い整数へ丸めます。同じ整数から3つのRGBチャンネルと16進数の色見本を作るため、各表現は一致します。このモデルは、APIとブラウザーのどちらでも再現できるよう、意図的に単純かつ透明に設計されています。インキ濃度、用紙色、光散乱、トラッピング、スクリーニング技術、ICCプロファイルは再現しません。これらには実測値が必要です。
印刷工程に適した用途で結果をご利用ください
返されたグレー値は、計画と情報共有の補助としてご利用ください。物理的な校正刷りを依頼する前に網点ステップを比較したり、公称濃度より暗く印刷される可能性を記録したり、制作ポータルで一貫したプレビューを生成したりできます。応答には最終グレー値だけでなく、公称網点濃度、入力したゲイン、計算した階調値増加、有効面積率も含まれます。中間値が残るため、暗い結果が原稿に由来するのか、想定した印刷条件に由来するのかを確認できます。最終的な色承認には、校正されたプルーフと印刷会社が実測した階調再現曲線をご使用ください。単色の面積率だけでは、人が感じる明るさを一意に決められません。インキと用紙には差があり、モニター上のニュートラルグレーは実物の分光特性を再現できないためです。ただし端点は一定で、0は常に白、100は常に黒になります。APIによる1回の変換料金は $0.002 です。
活用例
特色網点を画面で確認
想定ドットゲインを考慮し、単色インキの指定濃度をニュートラルグレーで近似表示します。
制作条件を記録
公称面積率、想定ゲイン、有効面積率、算出グレー値を再現可能な形で記録します。
網点階調を点検
同じゲイン条件で複数の濃度を変換し、階調列がどの程度暗くなる可能性があるかを確認します。
よくある質問
1回の変換料金はいくらですか?
APIによる1回の変換は $0.002 です。計算は決定論的で、外部サービスへ接続しません。
ここでのドットゲインとは何ですか?
公称50パーセントで適用される最大の階調値増加をパーセントポイントで表し、紙白とベタではゼロになります。
50%の網点がグレー値128より暗くなるのはなぜですか?
正のドットゲインによって有効面積率が50パーセントを超え、反転したスケールではグレー値が小さくなって暗く見えるためです。
ICCプロファイルや本機校正の代わりになりますか?
いいえ。面積率の近似であり、実測したインキ、用紙、分光応答、デバイス校正はモデル化していません。
網点濃度が0%または100%の場合はどうなりますか?
正弦曲線の補正が両端でゼロになるため、0パーセントは常に白、100パーセントは常に黒になります。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/color/halftone-gray \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"tint_percent":50}'const res = await fetch("https://api.kit.forhosting.com/color/halftone-gray", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"tint_percent": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/halftone-gray",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"tint_percent": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/halftone-gray", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"tint_percent":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"tint_percent":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/halftone-gray", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"tint_percent": 50
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.halftone_gray",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |