ランダムにフォントをXXX

何時だったか、「デザインの現場 2006年10月号」(デザインの現場 2006/10月号 — 「書体の選び方」特集 - フォントブログとか参照)が図書館にあったのを借りてきて読んだ時に載ってたのを思い出して作ったスクリプト。多少なりともなんとなくだが動くようになったので晒してみる。
バラバラのフォント、フォントサイズで文を表示させるスクリプト。正確にはそんなふうに表示させるためのHTMLっぽいものを吐き出すスクリプト
見てもらったほうが早いかもしれない。こんな感じのを表示するHTMLをつくるためのスクリプト。文章は吾輩は猫であるの冒頭より

で、以下がスクリプトの内容。言語はRuby

fonts = [ "VL Gothic", "TakaoGothic", "TakaoMincho"] #使用フォント
size_max = 30 #フォントサイズの最大(px)

file = open(ARGV[0])

script = file.read
script_str = script.split(//u)

for i in 0..(script_str.size - 1 ) do
  if script_str[i] == " " then
    puts("<span style=\"font-size : " +  (size_max/2).to_s + "px\">&nbsp;</span>")
  elsif script_str[i] == "\n" then
    puts("<br>")
  else
    puts("<span style=\"font-size: " + (rand(size_max)+1).to_s + "px\"><font face=\""  + fonts[rand(fonts.size)] + "\">" +  script_str[i] + "</font></span>")
  end
end

file.close

使用時はこんな感じで。スクリプト名をrandom.rb、元文章をwaganeko.txtとして結果はwaga.htmlとして

$ ruby random.rb waganeko.txt > waga.html

HTMLに関する知識もRubyに関する知識も殆ど無いので使うときは適当に編集してやってください。
ということでそれでは

追記2010-09-27:
フォントサイズの下限も指定できるようにしたほうがいいかもしれないな

追追記2010-09-28:
元文章(waganeko.txtとか)はUTF-8で。
あとスクリプトをちょっと修正した。font faceあたりでミスってブラウザ規定フォントでしか表示できてなかったようだ。ついでに画像もそれに合わせて変えた。

当ブログに於いて、私tasutenによって創作されたことが自明である著作物に対しては、別途明示のある場合を除き全てCC0が適用されます。