93のブロマガ

保存画像の読込EXT個別スクリプト

2014/11/20 23:03 投稿

  • タグ:
  • AviUtl

ゆうきさんの一時保存EXTで保存した画像を
個別オブジェクトとして呼び出すスクリプトです
サイズ揃え機能を追加しました。

@一時保存読み込みEXTの中にコピペ
または
「@保存画像の読込EXT個別」 の部分を除きテキストにコピペ、
保存画像の読込EXT個別.anm として保存して下さい。
(この場合同じディレクトリに extbuffer.lua と extbuffer_core.dllが必要です)

一時保存EXT本体はこちら(必須)
t.co/I3jINA6
http://www.nicovideo.jp/watch/sm16334110




@保存画像の読込EXT個別
--track0:読込先,1,300,1,1
--check0:ID表示,0
--dialog:読込先,local ID={};サイズを揃える/chk,local resize=0;拡大率で揃える/chk,local rezoom=0;サイズ上限(pixel),local RS=200;横幅で揃える/chk,local W=0;サイズ個別指定,local SIZE={100,100,100,100}

--[[
あらかじめ画像ループ(個別)させた図形等に対して使うスクリプトです

ダイアログの読込先に {1,2,3,6,7} と呼び出したい画像が保存されているidを入れます。

左から呼び出した順に重なるので入れ替えることができます。

空欄だと1から順に貼り付けます(画像が保存されている場合)

「サイズを揃える」はサイズ上限より縦幅が大きい画像を読み込んだ場合にリサイズして揃えます。
「拡大率で揃え」にチェックを入れるとリサイズせず拡大率で揃えます。(画像が大きいと重たい)

個別サイズ指定は呼び出した順に拡大率を変更します。
]]

require("extbuffer")

local x,y,z = obj.ox,obj.oy,obj.oz
local rx,ry,rz = obj.rx,obj.ry,obj.rz
local id = math.max(math.floor(obj.track0))
if ID==nil or #ID==0 then
ID={}
ID[obj.index+1]=obj.index+1
end

if obj.num>1 then
id = math.max(1,math.floor(obj.track0-1+ID[obj.index+1]))
end

extbuffer.read(id)

local w,h=obj.getpixel()
local ZOOM=obj.zoom
local S=h
local WW,HH=w/S*RS,RS

if W==1 then
S=w
WW,HH=RS,h/S*RS
end

if resize==1 then
if S>RS then
if rezoom==1 then
ZOOM=(1/S*RS)*obj.getvalue("zoom")/100
else
obj.effect("リサイズ","X",WW,"Y",HH,"ドット数でサイズ指定",1)
end
end
end


if SIZE~=nil then
if #SIZE<obj.num then
for i=1,obj.num-#SIZE do
table.insert(SIZE,100)
end
end
ZOOM=ZOOM*(SIZE[obj.index+1]/100)*obj.getvalue("zoom")/100
end

obj.ox,obj.oy,obj.oz = x,y,z
obj.rx,obj.ry,obj.rz = rx,ry,rz
obj.zoom=ZOOM

if obj.check0 then
obj.load("text",tostring(ID[obj.index+1]))
obj.ox,obj.oy,obj.oz = x,y,z
end


コメント

コメントはまだありません
コメントを書き込むにはログインしてください。

いまブロマガで人気の記事