印刷に必要なDPIを計算:画素数と仕上がり寸法
この印刷DPI計算ツールは、希望する物理的な仕上がり寸法と、それを支えるデジタル画像を結び付けます。幅、高さ、目標DPIを入力すると、必要な最小の整数画素寸法を確認できます。画像の画素寸法と印刷寸法を入力して、各軸で得られる解像度を求めることも可能です。インチ、センチメートル、ミリメートルに対応し、明確な式で計算します。ゼロ、負数、未入力、有限でない数値は、誤解を招く結果を防ぐため受け付けません。
無料で実行
印刷に必要な画素数を求めます
仕上がりの幅と高さを入力し、インチ、センチメートル、ミリメートルのいずれかを選び、印刷会社または制作仕様で指定されたDPIを指定してください。DPIは1インチ当たりのドット数を意味するため、物理寸法をインチへ変換してから各軸に目標解像度を掛けます。必要寸法は整数画素へ切り上げます。小数の計算結果を切り下げると、一方の軸が指定解像度をわずかに下回るためです。返される値は、両方向で指定DPIを満たす最小キャンバスとなります。この計算は、既存ファイルに細部を生成したり、画像を拡大したりするものではありません。撮影、スキャン、レンダリング、書き出し、切り抜きの際に目標とすべき寸法を示します。新しい写真やイラストを制作する場合は、結果を下限として扱い、後のトリミング、塗り足し、位置調整に使う余裕も確保してください。
既存画像のDPIを確認します
手元のファイルを評価する場合は、目標DPIを入力せず、画像の幅と高さを画素単位で指定し、物理的な印刷寸法も入力してください。横方向の画素数をインチ換算した幅で割り、縦方向にも同じ計算を行います。横DPI、縦DPI、および両者の小さい方である制限DPIが返されます。制限DPIは、希望寸法で画素密度が低い方向を示します。2つの値が異なる場合は、画像と印刷領域の縦横比が一致していない可能性があります。その際は、トリミング、変形、余白の追加などが必要です。本ツールは数値だけを提示し、デザイン上の判断を自動では行いません。画素を削除すると実効解像度が変わるため、切り抜きを検討するときは各軸の値をご確認ください。また、DPIだけで見た目の品質は決まりません。ピント、圧縮、ノイズ、鑑賞距離、用紙、印刷方式も仕上がりに影響します。
単位と結果を一貫して扱います
物理寸法はインチ、センチメートル、ミリメートルで入力できます。選択した単位は幅と高さの両方に適用されますが、DPIは定義どおり1インチ当たりのドット数です。乗算または除算の前に単位を変換します。幅と高さには同じ単位を使い、余白や塗り足しがある場合は用紙全体ではなく、断裁後の仕上がり寸法を入力してください。塗り足しを含むデザインでは、書き出し領域全体に必要な画素数も別途確認することをおすすめします。使用するすべての数値は有限で、ゼロより大きい必要があります。ゼロや負数を許すと、無限大、負の解像度、利用できない結果につながります。APIリクエスト1回の料金は$0.002で、処理は決定的な算術演算だけです。画像の送信、検査、サイズ変更、保存は行いません。同じ入力から常に同じ出力が得られるため、見積もり、入稿前確認、書き出しチェックリスト、自動制作ルールに組み込めます。
活用例
写真の書き出しを準備します
ラボが指定するDPIと仕上がり寸法に合わせ、写真に必要な最小の幅と高さを画素単位で確認できます。
受領した入稿データを確認します
既存画像を指定の印刷寸法で使う場合の横DPIと縦DPIを比較し、密度不足を調べられます。
描画キャンバスを設定します
ポスターやイラストの仕様寸法を、制作開始前に具体的な整数画素寸法へ変換できます。
よくある質問
必要な画素寸法はどのように丸めますか?
指定DPIを下回らないように、各軸を次の整数画素へ切り上げます。
横DPIと縦DPIが異なるのはなぜですか?
画像の画素縦横比と物理的な印刷縦横比が一致しないためです。切り抜き、余白、変形が必要な場合があります。
制限DPIとは何ですか?
2軸のうち小さいDPIで、選択した寸法において画素密度が低い方向を示します。
画像のサイズ変更や内容確認を行いますか?
いいえ。入力された数値寸法だけで計算し、画像の送信や保存は行いません。
APIによる計算の料金はいくらですか?
APIリクエスト1回の料金は$0.002です。
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/misc2/print-resolution-dpi-calc \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"print_width":10,"print_height":8,"dpi":300}'const res = await fetch("https://api.kit.forhosting.com/misc2/print-resolution-dpi-calc", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"print_width": 10,
"print_height": 8,
"dpi": 300
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/misc2/print-resolution-dpi-calc",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"print_width": 10,
"print_height": 8,
"dpi": 300
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/misc2/print-resolution-dpi-calc", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"print_width":10,"print_height":8,"dpi":300}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"print_width":10,"print_height":8,"dpi":300}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/misc2/print-resolution-dpi-calc", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"print_width": 10,
"print_height": 8,
"dpi": 300
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "misc2.print_resolution_dpi_calc",
"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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |