@REM 文字を線上、線下に移動(マウス指示)
@echo off
REM #jww
REM #cd
REM #c移動後の文字と線の距離(図寸)無指定:1:/_/a
REM #k文字の位置 無指定= 1)|1)線上(L)|2)線下(R)| /_/b
REM #h0
REM #1ln 線マウス指示
REM #2ch 文字マウス指示
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字移動-線上下.rb temp.txt %1 %2 > jwc_temp.txt
◎スクリプトファイル(ファイル名 文字移動-線上下.rb)
BEGIN{
print "hd\n"
$hanare=1
$iti="1"
while ARGV.size>1
case argument=ARGV.pop
when /^\/a/
$hanare=argument[2..-1].to_f
when /^\/b/
$iti=argument[2..-1]
end
end
}
def main
by=[]
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^hs/
xy[1..-1].each{|item|by << item.to_i}
elsif xy[0] =~ /^lg/
lg=xy[0][2,1];zusun=by[lg.hex]
print $_
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[0]>xy[2]
xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[0]==xy[2]
if xy[1]>xy[3]
xy[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
xyl=Math.sqrt(x**2+y**2)
dx=x/xyl
dy=y/xyl
if $iti=="1"
mojix=xy[0]+x/2-$hanare*dy*zusun
mojiy=xy[1]+y/2+$hanare*dx*zusun
moji_kiten="cc1"
else
mojix=xy[0]+x/2+$hanare*dy*zusun
mojiy=xy[1]+y/2-$hanare*dx*zusun
moji_kiten="cc7"
end
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
puts moji_kiten
printf("ch %f %f %f %f \"%s\n",mojix,mojiy,dx,dy,word)
else
print $_
end
end
end
main
@REM 文字を線の上下に配置(マウス指示)
@echo off
REM #jww
REM #cd
REM #c移動後の文字と線の距離(図寸)無指定:1:/_/a
REM #h0
REM #1ln 線マウス指示
REM #2ch 線上にする文字をマウス指示
REM #3ch 線下にする文字をマウス指示
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字移動-線上下.rb temp.txt %1 > jwc_temp.txt>
◎スクリプトファイル(ファイル名 文字移動-線上下.rb)
BEGIN{
print "hd\n"
$hanare=1
while ARGV.size>1
case argument=ARGV.pop
when /^\/a/
$hanare=argument[2..-1].to_f
end
end
}
def main
by=[]
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^hs/
xy[1..-1].each{|item|by << item.to_i}
elsif xy[0] =~ /^lg/
lg=xy[0][2,1];zusun=by[lg.hex]
print $_
elsif xy[0] =~ /^hhp/
hhp=xy[0]
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[0]>xy[2]
xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[0]==xy[2]
if xy[1]>xy[3]
xy[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
xyl=Math.sqrt(x**2+y**2)
dx=x/xyl
dy=y/xyl
mojix=xy[0]+x/2
mojiy=xy[1]+y/2
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
if hhp=="hhp2ch"
mojix=mojix-$hanare*dy*zusun
mojiy=mojiy+$hanare*dx*zusun
moji_kiten="cc1"
elsif hhp=="hhp3ch"
mojix=mojix+$hanare*dy*zusun
mojiy=mojiy-$hanare*dx*zusun
moji_kiten="cc7"
end
puts moji_kiten
printf("ch %f %f %f %f \"%s\n",mojix,mojiy,dx,dy,word)
else
print $_
end
end
end
main
@REM スクリプトファイルを開く
@echo off
REM #jww
REM #cd
REM #h0
REM #h/文字移動-線上下2.bat
REM #e
notepad 文字移動-線上下2.rb
echo h#設定終了>> jwc_temp.txt
◎バッチファイル(ファイル名 文字移動-線上下2.bat)
@REM 文字を線の上下に配置(マウス指示)
@echo off
REM #jww
REM #cd
REM #h0
REM #1ln 線マウス指示
REM #2ch 線上にする文字をマウス指示
REM #3ch 線下にする文字をマウス指示
REM #hr
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字移動-線上下2.rb temp.txt > jwc_temp.txt
◎スクリプトファイル(ファイル名 文字移動-線上下2.bat)
BEGIN{
print "hd\n"
$hanare=1 #線と文字の離れ(図寸)
}
def main
by=[]
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^hs/
xy[1..-1].each{|item|by << item.to_i}
elsif xy[0] =~ /^lg/
lg=xy[0][2,1];zusun=by[lg.hex]
print $_
elsif xy[0] =~ /^hhp/
hhp=xy[0]
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[0]>xy[2]
xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[0]==xy[2]
if xy[1]>xy[3]
xy[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
xyl=Math.sqrt(x**2+y**2)
dx=x/xyl
dy=y/xyl
mojix=xy[0]+x/2
mojiy=xy[1]+y/2
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
if hhp=="hhp2ch"
mojix1=mojix-$hanare*dy*zusun
mojiy1=mojiy+$hanare*dx*zusun
moji_kiten="cc1"
elsif hhp=="hhp3ch"
mojix1=mojix+$hanare*dy*zusun
mojiy1=mojiy-$hanare*dx*zusun
moji_kiten="cc7"
end
puts moji_kiten
printf("ch %f %f %f %f \"%s\n",mojix1,mojiy1,dx,dy,word)
else
print $_
end
end
end
main
@REM 2文字を入替える(マウス指示)
@echo off
REM #jww
REM #cd
REM #h0
REM #1ch 文字をマウス指示
REM #2ch 文字をマウス指示
REM #hr
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字入替.rb temp.txt > jwc_temp.txt
@REM 文字を線の反対側に回転(マウス指示)
@echo off
REM #jww
REM #cd
REM #h0
REM #1ln線マウス指示
REM #2ch 文字マウス指示
REM #3ch 文字マウス指示
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字_線回転.rb temp.txt > jwc_temp.txt
◎バッチファイル(文字_線回転.bat)
print "hd\n"
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[2] xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[2]==xy[0]
if xy[3] y[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
xyl=Math.sqrt(x**2+y**2)
sen_kakudo=Math.atan2(y,x)
sen_x=xy[0]
sen_y=xy[1]
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
mojix=xy[1].to_f
mojiy=xy[2].to_f
mojixl=xy[3].to_f
mojiyl=xy[4].to_f
mojixyl=Math.sqrt(((mojix+mojixl)-sen_x)**2+(
(mojiy+mojiyl)-sen_y)**2)
moji_kakudo=Math.atan2((mojiy+mojiyl)-sen_y,
(mojix+mojixl)-sen_x)
henkaku=moji_kakudo-sen_kakudo
henkaku2=sen_kakudo-henkaku
mojix2=sen_x+mojixyl*Math.cos(henkaku2)
mojiy2=sen_y+mojixyl*Math.sin(henkaku2)
mojixl2=mojixl*(-1)
mojiyl2=mojiyl*(-1)
printf("%s %f %f %f %f \"%s\n",
xy[0],mojix2,mojiy2,mojixl2,mojiyl2,word)
else
print $_
end
end
@REM 線と文字を180°回転(マウス指示)
@echo off
REM #jww
REM #cd
REM #hr
REM #h0
REM #1ln線マウス指示
REM #2ch 文字マウス指示
REM #3ch 文字マウス指示
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字_線回転.rb temp.txt > jwc_temp.txt
◎スクリプトファル(ファイル名 文字-線回転.rb)
print "hd\n"
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[2] xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[2]==xy[0]
if xy[3] y[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
sen_x=xy[0]
sen_y=xy[1]
sen_x2=xy[2]
sen_y2=xy[3]
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
mojix=xy[1].to_f
mojiy=xy[2].to_f
mojixl=xy[3].to_f
mojiyl=xy[4].to_f
mojix2=sen_x2-(mojix-sen_x)
mojiy2=sen_y2-(mojiy-sen_y)
mojixl2=mojixl*(-1)
mojiyl2=mojiyl*(-1)
printf("%s %f %f %f %f \"%s\n",
xy[0],mojix2,mojiy2,mojixl2,mojiyl2,word)
else
print $_
end
end
◎バッチファル(ファイル名 文字-線反転.bat)
@REM 文字を線の反対側に反転(マウス指示)
@echo off
REM #jww
REM #cd
REM #hr
REM #h0
REM #1ln線マウス指示
REM #2ch 文字マウス指示
REM #3ch 文字マウス指示
REM #e
copy jwc_temp.txt temp.txt > nul
ruby -Ks 文字_線反転.rb temp.txt > jwc_temp.txt
◎スクリプトファル(ファイル名 文字-線反転.rb)
print "hd\n"
while ARGF.gets
xy =split
if xy[0] =~ /^hq/
elsif xy[0] =~ /^[0-9]/ or xy[0] =~ /^-/
xy.collect!{|item|item.to_f}
if xy[2] xy[0],xy[2],xy[1],xy[3]=xy[2],xy[0],xy[3],xy[1]
elsif xy[2]==xy[0]
if xy[3] y[1],xy[3]=xy[3],xy[1]
end
end
x=xy[2]-xy[0]
y=xy[3]-xy[1]
xyl=Math.sqrt(x**2+y**2)
sen_kakudo=Math.atan2(y,x)
sen_x=xy[0]
sen_y=xy[1]
print $_
elsif xy[0] =~ /^ch/ or xy[0] =~ /^cs/
moji=$_.split("\"")
word=moji[1].chop
mojix=xy[1].to_f
mojiy=xy[2].to_f
mojixl=xy[3].to_f
mojiyl=xy[4].to_f
mojixyl=Math.sqrt((mojix-sen_x)**2+(mojiy-sen_y)**2)
moji_kakudo=Math.atan2(mojiy-sen_y,mojix-sen_x)
henkaku=moji_kakudo-sen_kakudo
henkaku2=sen_kakudo-henkaku
mojix2=sen_x+mojixyl*Math.cos(henkaku2)
mojiy2=sen_y+mojixyl*Math.sin(henkaku2)
puts"cc6"
printf("%s %f %f %f %f \"%s\n",
xy[0],mojix2,mojiy2,mojixl,mojiyl,word)
else
print $_
end
end