アストラルプリズム

PC、スマホ、ゲームなどの備忘録と日記

GIMPのテキストボックスを全部縦書きにするプラグイン

テキストボックスをまとめて全て縦書きにするプラグイン作った。
グループになっている場合は子の部分まで縦書きにする。

インストール方法

以下をコピペしてファイル名をchenge_tategaki.pyにしてutf-8で保存後、GIMPプラグインフォルダーに入れる。
GIMPのメニューの「レイヤー」→「chenge tategaki 」をクリックすると動作する。
プラグインフォルダーはGIMPを起動し「編集」→「設定」→「フォルダー」→「プラグイン」で確認の事。

#!/usr/bin/python
# -*- coding: utf-8 -*-
from gimpfu import *

def chenge_tategaki():
	#GIMPファイルの情報取得
	image = gimp.image_list()[0]
	#レイヤーの数とレイヤーIDを取得
	num_layers, layer_ids = pdb.gimp_image_get_layers(image)
	#選択範囲を解除
	for id in layer_ids:
		item = gimp.Item.from_id(id)
		#グループかそうでないか調べる
		group = pdb.gimp_item_is_group(item)
		if group == 1:   #グループの場合
			#子レイヤーの数とレイヤーIDを取得
			num_children, child_ids = pdb.gimp_item_get_children(item)
			for c_id in child_ids:
				#テキストレイヤーかそうでないか調べる
				item = gimp.Item.from_id(c_id)
				if pdb.gimp_item_is_text_layer(item):
					#テキストレイヤーを縦書きにする。横書きにしたければ末尾の2を0にすること。
					pdb.gimp_text_layer_set_base_direction(item,2)
		else:
			#テキストレイヤーかそうでないか調べる
			if pdb.gimp_item_is_text_layer(item):
				#テキストレイヤーを縦書きにする。横書きにしたければ末尾の2を0にすること。
				pdb.gimp_text_layer_set_base_direction(item,2)
	
register(
	"chenge_tategaki",
	"chenge tategaki",
	"chenge tategaki",
	"katsumi",
	"katsumi",
 	"2022",
	"chenge tategaki",
	"",
	[],
	[],
	chenge_tategaki,
	menu = "<Image>/Layer" )

main()

参考サイト
blawat2015.no-ip.com