とりあえず、1枚印刷版は出来た[Perl]
(2014-05-17 16:01:54) by shinoda
とりあえず、1枚印刷するだけの機能は出来たので、あとはこれを元に複数ページ作成に対応させるだけ。
しかし、位置指定が全部ピクセル指定なのは思ったより大変だな。
つーか、人間としてはミリ指定しかできんからな。(そりゃ 72dpi だから、25.4mm の中に72個ドットが存在するという前提で「5.7ピクセル(約 2mm)左に寄せるか」みたいな思考ができる変質者も中にはいるだろうけど(笑))
なので、
sub mm2px {
#==========================
# ミリをピクセルに変換(72dpi前提)
#==========================
my $mm = $_[0];
my $px = $mm / 25.4 * 72;
return $px;
}
sub px2mm {
#==========================
# ピクセルをミリに変換(72dpi前提)
#==========================
my $px = $_[0];
my $mm = $px / 72 * 25.4;
return $mm;
}
みたいな関数作って、相互に変換しまくりながらロジック組んだよ(笑)
例えば、「14ピクセルずらしたら、名前表示開始位置の 50mm を超えないか」とか。
if (($pos_mm + &px2mm(14)) > 50) みたいな感じで。
いや、住所が長くて2行になれば、当然後ろの項目の表示位置もずらしていくことになるから、そんな計算ばかりしてるプログラムになった(^^;
ま、なんとか上手くレイアウト出来たので、次のステップへ(笑)
コメント投稿
次の記事へ >
< 前の記事へ
TOPへ戻る
Powered by
MT4i 3.0.8