[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(DTPtechNote:1551) [ruby]InDesign(半角|3分|4分)字形タグ



小ネタなんですが、2桁に半角字形、3桁に3分字形、4桁に4分字形のタグをそれぞれ付けてみる。

#! /usr/bin/ruby -Ks
require "jcode"

#2桁に半角字形、3桁に3分字形、4桁に4分字形のタグをそれぞれ付ける。1桁と5桁以上はなにもしない。
def num_tag(num)
	case num.length
	when 1 then
		#一桁を全角文字にしたいなら
		#num.tr!("0-9", "0-9")
		return num
	when 2 then 
		return "<cGlyphForm:HalfWidthForm>#{num}<cGlyphForm:>"
	when 3 then
		return "<cGlyphForm:ThirdWidthForm>#{num}<cGlyphForm:>"
	when 4 then
		return "<cGlyphForm:QuarterWidthForm>#{num}<cGlyphForm:>"
	when 5 then
		return num
	end
end

while line = ARGF.gets
	line.gsub!(/(?d+)/) {num_tag($1)}
	print line
end