今までは2048px以下なら無料というルールだったので、写真をあげるときは全て Lightroom 側で長辺 2048px でリサイズしていた。数年まえまでは「これで十分だろう」という感じだったが、昨今高解像度ディスプレイ(高ppi)が増えたため、これでは少し物足りないサイズ制限に感じるようになっていた。

今日 Google Photo というサービスがリリースされ、Google の写真ストレージがサービスとして再度分離された (Picasa → Google+ → Google Photo)。これに伴ない無料分の写真のサイズが緩和され、ヘルプによると16MPまでは無料ということになった。

デジタル一眼レフカメラのアスペクト比は 3:2 なので (コンデジは4:3)、4898×3265px までは無料アップロードできることになる。 (あとで追試するけど) これからは 現像時の設定で長辺 4898px に設定しても良さそう。

function getMaxPixelsForAspectRatio (ratio) {
	var pixels = 16e6;
	var a = Math.sqrt(pixels * ratio);
	var b = Math.sqrt(pixels) / Math.sqrt(ratio);
	return {
		width: Math.floor(Math.max(a, b)),
		height: Math.floor(Math.min(a, b))
	};
}

console.log(getMaxPixelsForAspectRatio(3/2));
//=> { width: 4898, height: 3265 }
console.log(getMaxPixelsForAspectRatio(4/3));
//=> { width: 4618, height: 3464 }
console.log(getMaxPixelsForAspectRatio(16/9));
//=> { width: 5333, height: 3000 }
  1. トップ
  2. tech
  3. Google Photo のリリースで無料分のサイズ拡大・アスペクト比別最大サイズの求めかた