アスペクト比計算機 - 画像・動画サイズ計算 オンライン
画像や動画のアスペクト比を計算。16:9、4:3、1:1などのプリセットで比率維持リサイズとレスポンシブサイズ計算。
よくある質問
アスペクト比とは何ですか?
アスペクト比とは、画像、動画、画面の幅と高さの比例関係のことです。コロンで区切られた2つの数値で表されます(例:16:9)。最初の数値が幅、2番目の数値が高さを表します。一般的なアスペクト比には、16:9(ワイドスクリーンHD)、4:3(従来のTV)、1:1(正方形)などがあります。アスペクト比を理解することは、画像を歪みなくリサイズし、さまざまな画面やプラットフォームでコンテンツを正しく表示するために非常に重要です。
このアスペクト比計算機はどのように使いますか?
入力フィールドに画像や動画の幅と高さを入力してください。ツールが即座に簡約化されたアスペクト比(例:16:9)、小数比率、向きを計算して表示します。素早くサイズを設定するには、比率プリセットボタン(16:9、4:3、1:1など)をクリックするか、YouTube、Instagram、TikTokなどのプラットフォームプリセットを使用してください。リサイズタブに切り替えると、既存のサイズを目標サイズに比率を維持したままスケーリングできます。
データは安全ですか?サーバーに何か送信されますか?
すべての計算はJavaScriptを使用してブラウザ内で100%クライアントサイドで実行されます。サイズデータ、画像、その他いかなる情報もサーバーに送信されることはありません。このツールは一度読み込まれると完全にオフラインで動作するため、機密性の高いプロジェクト仕様や独自のメディアサイズを扱う場合でも安全に使用できます。
16:9と1.78:1の違いは何ですか?
どちらも同じアスペクト比を異なる形式で表したものです。「16:9」は簡約化された整数比で、「1.78:1」(正確には1.7778:1)は16を9で割って得られる小数表現です。整数形式(16:9)は一般消費者向けメディアやディスプレイの仕様でよく使われ、小数形式は映画やプロの映像制作で多く使用されます(例:アナモルフィックワイドスクリーンの2.35:1)。
幅とアスペクト比がわかっている場合、高さはどう計算しますか?
次の計算式を使います:高さ = 幅 ×(比率の高さ / 比率の幅)。例えば、16:9の比率で幅が1920の場合:高さ = 1920 ×(9/16)= 1080となります。この計算機はこのプロセスを自動化します。16:9プリセットを選択した後、幅に1920を入力するだけで、高さ1080が自動的に計算されます。
YouTube動画にはどのアスペクト比を使うべきですか?
YouTubeは標準的な動画に16:9(ワイドスクリーン)を推奨しており、一般的な解像度は1920×1080(1080p)、2560×1440(1440p)、3840×2160(4K)です。YouTube Shortsは9:16(縦型)で1080×1920を使用します。動画が16:9に合わない場合、プラットフォームが自動的にレターボックスを追加するため、正しい比率を使用すれば黒い帯を避けることができます。
GCD(最大公約数)による簡約化はどのように機能しますか?
このツールは、幅と高さの最大公約数(GCD)を求め、両方をそれで割ることで比率を簡約化します。例えば、1920×1080の場合:GCD(1920, 1080) = 120なので、1920/120 = 16、1080/120 = 9となり、比率は16:9になります。一部のサイズでは珍しい簡約化比率が生成されることがあります(例:1366×768は683:384に簡約化)。このような場合、ツールは最も近い標準比率も一緒に表示します。
コード例
// Aspect Ratio Calculator in JavaScript
// Calculate GCD using Euclidean algorithm
function gcd(a, b) {
a = Math.abs(Math.round(a));
b = Math.abs(Math.round(b));
while (b) {
[a, b] = [b, a % b];
}
return a;
}
// Calculate aspect ratio from width and height
function calculateAspectRatio(width, height) {
if (width <= 0 || height <= 0) {
throw new Error('Width and height must be positive numbers');
}
const divisor = gcd(width, height);
return {
ratioWidth: width / divisor,
ratioHeight: height / divisor,
decimal: +(width / height).toFixed(4),
label: `${width / divisor}:${height / divisor}`,
};
}
// Calculate missing dimension
function calculateMissingDimension(ratioW, ratioH, knownDimension, type) {
if (type === 'width') {
return Math.round((knownDimension * ratioW) / ratioH);
} else {
return Math.round((knownDimension * ratioH) / ratioW);
}
}
// Scale dimensions proportionally
function scaleDimensions(originalW, originalH, targetW, targetH) {
if (targetW) {
const factor = targetW / originalW;
return { width: targetW, height: Math.round(originalH * factor), factor };
}
if (targetH) {
const factor = targetH / originalH;
return { width: Math.round(originalW * factor), height: targetH, factor };
}
}
// Example usage
const ratio = calculateAspectRatio(1920, 1080);
console.log(ratio);
// { ratioWidth: 16, ratioHeight: 9, decimal: 1.7778, label: "16:9" }
const height = calculateMissingDimension(16, 9, 2560, 'height');
console.log(`2560 x ${height}`);
// "2560 x 1440"
const scaled = scaleDimensions(1920, 1080, 1280, null);
console.log(`${scaled.width} x ${scaled.height} (${(scaled.factor * 100).toFixed(1)}%)`);
// "1280 x 720 (66.7%)"