Photoshopでカンバスサイズを偶数にリサイズする方法。
Photoshopでデザイン作業をしていると、カンバスサイズが奇数ピクセルになってしまうことがあります。
書き出し先で偶数の寸法を求められる場合に使う、カンバスサイズ調整用のスクリプトです。
奇数の寸法そのものがPhotoshopの不具合というわけではありません。
このスクリプトを実行すると、奇数ピクセルのカンバスサイズに+1ピクセルを追加し、偶数ピクセルに調整できます。

目次
スクリプトの導入方法
STEP.1 スクリプトの作成
以下のコードをテキストエディタに貼り付けて保存してください。
Photoshopのほかの操作は、まとめからご覧いただけます。
あわせて読みたい


Photoshopの使い方|保存・レイヤー・一括処理から探す
Photoshopでやりたい作業から記事を選べます。複数の画像に同じ編集を繰り返す場合は「アクション・一括処理」、JSXファイルを初めて使う場合は「スクリプトの導入・実…
CGM_ResizeCanvasEvenNumber.jsx
(function () {
if (app.documents.length === 0) {
alert("ドキュメントを開いてください。");
return;
}
var doc = app.activeDocument;
var width = Math.round(doc.width.as("px"));
var height = Math.round(doc.height.as("px"));
var newWidth = width + (width % 2);
var newHeight = height + (height % 2);
if (newWidth === width && newHeight === height) return;
try {
doc.resizeCanvas(UnitValue(newWidth, "px"),
UnitValue(newHeight, "px"), AnchorPosition.TOPLEFT);
} catch (e) {
alert("カンバスを変更できませんでした。\n" + e.message);
}
}());STEP.2 スクリプトを格納
CGM_ResizeCanvasEvenNumber.jsxを使用中のPhotoshopのPresets/Scriptsへ保存します。以下は旧版の例です。一度だけ実行する場合は「ファイル」→「スクリプト」→「参照」から選択できます。
C:\Program Files\Adobe\Adobe Photoshop CC\Presets\Scripts\- Photoshopを再起動します。
STEP.3 スクリプトを実行
- [ファイル] → [スクリプト] → [CGM_ResizeCanvasEvenNumber]を選択します。
- スクリプトが実行され、奇数ピクセルの場合に+1ピクセルが追加され、偶数ピクセルに調整されます。
この記事で紹介しているコードは、GitHubのMOTOKI-LLC/cg-method-codeにもまとめています。
環境設定とカンバスの記事は、ほかにもあります。
あわせて読みたい


Photoshop│カンバス外の描画を削除する方法
Photoshopで作業をしていると、カンバス外に不要な描画が残ってしまうことがあります。 カンバス外の描画を確認し、不要な部分を切り抜く手順を紹介します。 作業前にPS…
あわせて読みたい


Photoshopスクリプト(jsx)│UIパーツのサイズ情報を自動作成する方法│Ink
PhotoshopでUIデザインを作成する際、パーツのサイズ情報を自動で表示できると便利です。 この記事は2017年当時にInkで寸法情報を生成した記録です。 配布元はCC 2015向…
あわせて読みたい


Photoshopスクリプト(jsx)│パーツの余白を計測する方法
Photoshopでデザインを作成する際、パーツの余白(マージン)を素早く測定できると作業を効率化できます。 今回は、「Size-Marks.jsx」スクリプトを使って、指定した要…
あわせて読みたい


Photoshop│ペンタブの筆圧感知が無効の時の解決方法
Photoshopを使っていて、いつの間にかペンタブの筆圧感知が効かなくなった経験はありませんか。 筆圧感知が動作しないとブラシの太さや濃淡を調節できず、思い通りに描…
まとめ
- 奇数ピクセルのカンバスサイズを自動で偶数に調整できる
- 修正版は左上を固定し、幅が奇数なら右に1px、高さが奇数なら下に1px追加します。画像そのものの拡大・縮小は行いません。
- スクリプトフォルダに配置すれば、メニューから簡単に実行可能
実行前にPSDの複製を保存し、書き出し後の余白と配置を確認してください。
背景レイヤーがある場合の追加領域は背景色などの設定に影響されるため、必ず透明になるとは限りません。
掲載画像・動画は元の手順の記録です。
コードは幅と高さを一度に変更する形へ修正しました。
偶数・奇数の各組み合わせ、未選択、例外を模擬環境で確認していますが、現行Photoshop本体での実行は未検証です。
アートボードの個別サイズ変更を目的としたコードではありません。
