photo-collage-maker について
photo-collage-makerは、複数の画像からコラージュを作るPythonツールです。写真を組み合わせたい人向けで、グリッドや自由配置、テンプレート、画像の表示方法を選べます。
主な機能
- 01グリッドとカスタムレイアウト
- 02画像の自由配置
- 03枠線と背景の設定
- 04フィット、塗りつぶし、伸縮
- 05キャプションとテンプレート
活用シーン
- 012×2または3×3の写真グリッド作成
- 02雑誌風レイアウトへの画像配置
- 03写真へのキャプションや枠の追加
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ dkyazzentwatwa/ chatgpt-skills --skill photo-collage-makerインストール後、Claude Code で/photo-collage-makerを入力して読み込まれたか確認します。
同梱ファイルscripts/collage_maker.pyscripts/requirements.txt
詳細
フォトコラージュメーカー
複数の画像から美しいフォトコラージュを作成します。
機能
- グリッドレイアウト:2x2、3x3、カスタムグリッド
- カスタム配置:自由な位置への配置
- 枠線:余白やフレームを追加
- 背景:単色、グラデーション、画像
- 画像のフィッティング:フィット、塗りつぶし、引き伸ばしのオプション
- テキストラベル:画像にキャプションを追加
- テンプレート:あらかじめ用意されたコラージュテンプレート
クイックスタート
from collage_maker import CollageMaker
collage = CollageMaker()
# Simple 2x2 grid
collage.grid(2, 2, gap=10)
collage.add_images(["photo1.jpg", "photo2.jpg", "photo3.jpg", "photo4.jpg"])
collage.save("collage.jpg")
# Custom layout
collage.canvas(1200, 800)
collage.add_image("main.jpg", x=0, y=0, width=800, height=800)
collage.add_image("side1.jpg", x=800, y=0, width=400, height=400)
collage.add_image("side2.jpg", x=800, y=400, width=400, height=400)
collage.save("custom_collage.jpg")
CLI の使い方
# 2x2 grid collage
python collage_maker.py --grid 2x2 --images img1.jpg img2.jpg img3.jpg img4.jpg -o collage.jpg
# 3x3 grid with gap
python collage_maker.py --grid 3x3 --gap 10 --images photos/*.jpg -o grid.jpg
# With background color
python collage_maker.py --grid 2x3 --bg-color "255,255,255" --images *.jpg -o collage.jpg
# Template layout
python collage_maker.py --template magazine --images *.jpg -o magazine.jpg
API リファレンス
CollageMaker クラス
class CollageMaker:
def __init__(self)
# Canvas Setup
def canvas(self, width: int, height: int, bg_color: Tuple = (255,255,255)) -> 'CollageMaker'
def grid(self, rows: int, cols: int, gap: int = 0) -> 'CollageMaker'
def template(self, name: str) -> 'CollageMaker'
# Adding Images
def add_images(self, image_paths: List[str], fit: str = "fill") -> 'CollageMaker'
def add_image(self, path: str, x: int, y: int, width: int, height: int,
fit: str = "fill") -> 'CollageMaker'
# Styling
def set_background(self, color: Tuple = None, image: str = None) -> 'CollageMaker'
def set_border(self, width: int, color: Tuple = (255,255,255)) -> 'CollageMaker'
def set_gap(self, gap: int) -> 'CollageMaker'
def rounded_corners(self, radius: int) -> 'CollageMaker'
# Text
def add_text(self, text: str, x: int, y: int, font_size: int = 24,
color: Tuple = (0,0,0)) -> 'CollageMaker'
# Output
def save(self, filepath: str, quality: int = 95) -> str
def get_image(self) -> Image
テンプレート
- grid_2x2:シンプルな2x2グリッド
- grid_3x3:3x3のグリッドレイアウト
- magazine:大きな画像と小さなサムネイル
- pinterest:石積み風の縦型レイアウト
- polaroid:白い枠線とキャプション付きの画像
- story:モバイル向けの縦型コラージュ
依存関係
- pillow>=10.0.0
- numpy>=1.24.0
コメント
Markdown 対応