SVX日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|

2017-10-30(Mon) たのしい納車待ちの過ごし方

  ♪NA・NB・NC・ND〜、あなたの好きなのどのモデル〜♪

  ……などと、浮かれている場合じゃない……なにせ、人生で初の新車購入で、しかも、ずっと憧れていた、赤いオープンのスポーツカー。しかも、ロードスターのまったく隙のない造りについて知れば知るほどに惚れ込むばかりなのだ。先月に試乗してから、頭の中はそればっか。まったく、チョロい客だったらありゃしないねぇ……。

  問題は、納車が年末年始あたりになるということ。それまで約2ヶ月の間、いったい何をして過ごせばいいんだぁ〜……何も手につかんぞッ!

  ……というわけで、あまりの待ち遠しさに、たのしいんだか、ツラいんだかも、よくわからない精神状態。あーッ、もーッ、残り日数を表示できる日めくりでも作るとするかッ!

  基本的な要件は残り日数が表示されることだが、グラフ表示も欲しいな。グラフのイメージには車体の絵を使おう。それなりの厚みになるだろうから、ホッチキスでは無理で、糸で吊る必要があるな。そうなると、斜めにしたほうがまとまりがいいかも……。

  例によって、自作のTrueLegacyGraphicsCairoライブラリを持ってきて、カラーレーザーでジャーっと。思いのほか、チョロっとコードを書いただけで、目的が達成できてしまった。

# for A4 - 144dpi - 210mm x 297mm - (上下左右の余白 4.23mm)
win  = LegacyGraphics.new(winY, winX, 0, 0, 1635, 1142, 16, 8, 7, { :file => 'cal', :type => 'pdf' })   # png/pdf/ps
win.clear; win.box('|', '-')                    # cls
 
ps = { :font_family => 'pacman.bmf', :font_weight => 400, :font_size => 40, :layout_width => 120, :layout_alignment => 'center' }
6.times {|y|
    4.times {|x|
        x0 = x * 256; y0 = y * 256
        win.line(x0, y0, x0 + 255, y0 + 255, 0, 'b')
        win.rotate(-45, x0 + 128, y0 + 128) {
            win.text(x0 + 128 - 60, y0 + 224, '%d' % days, 0, ps)
            system('convert roadster.png white.png -gravity south -geometry +%s+0 -compose over -composite progress.png' % [(72 - days) * 192 / 72])
            win.put_image_png(x0 + 32, y0 + 80, 'progress.png')
        }
        days -= 1
    }
}
 
win.refresh                                     # ページ生成(pdf/ps)

  画像の説明 画像の説明

  サクサク切って束ねる……って、それなりの厚みどころか、かなりの厚みになったぞ……まだ、こんなに待たなきゃならんのかい……あーッ、もーッ!