No Such Blog or Diary
TeX で書いた式を画像に落とす
TexPoint でやっていることをスクリプトにまとめてみた.tex2img.tex で画像に落としたい式とかを書いて下のスクリプトを実行するれば,tex -> dvi -> ps -> bmp(png) と画像が出来上がるという仕組み.pLaTeX, Ghostscript が必要になる.
#!/bin/bash BASE="tex2img" TEXFILE="$BASE.tex" DVIFILE="$BASE.dvi" PSFILE="$BASE.ps" BBFILE="$BASE.bb" RES="1200" #DEVICE="pngmono" #OUTFILE="$BASE.png" DEVICE="bmpmono" OUTFILE="$BASE.bmp" TEXCOM="platex $TEXFILE" PSCOM="dvipsk -D $RES -E -o $PSFILE $DVIFILE" BBCOM="gswin32c -q -dNOPAUSE -dBATCH -sDEVICE=bbox $PSFILE" echo "Running $TEXCOM" $TEXCOM echo "Running $PSCOM" $PSCOM echo "Running $BBCOM" $BBCOM > $BBFILE 2>&1 BB=`cat $BBFILE | grep '%%BoundingBox:'` echo "Found bounding box $BB" BX=`echo $BB | awk '//{print $2}'` BY=`echo $BB | awk '//{print $3}'` BX2=`echo $BB | awk '//{print $4}'` BY2=`echo $BB | awk '//{print $5}'` X=`expr $BX2 '-' $BX` X=`expr $X '*' 300` X=`expr $X '/' 18` Y=`expr $BY2 '-' $BY` Y=`expr $Y '*' 300` Y=`expr $Y '/' 18` IMGCOM="gswin32c -q -dNOPAUSE -dBATCH -sDEVICE=$DEVICE -r$RES -sOutputFile=$OUTFILE -g${X}x${Y} -c -$BX -$BY translate -q $PSFILE" echo "Running $IMGCOM" $IMGCOM
ファイルにして置いておこう.
- Comments: 0
- TrackBack (Close): -
screen をもう一度
- 2005-07-05 (Tue)
- ソフトウェア ( Linux/coLinux )
すぐ忘れるので screen の使いそうなコマンドまとめ.コマンドは ^A のあとに
? ヘルプ表示 ^C or c 新しいスクリーン作成 ^N or n 次のスクリーンへ移動 ^P or p 前のスクリーンへ移動 ^A or sp 前回作業したスクリーンへ移動 0 ~ 9 スクリーン番号 0 ~ 9 へ移動 " スクリーンを選択して移動 ^W or w スクリーン一覧 S フレーム分割 ^I or tab 次のフレームへ移動 X 今のフレーム削除 Q 今のフレーム以外を削除 [ コピー ] ペースト d デタッチ(screen -r で復帰)
いいかげん覚えたいなぁ.
- Comments: 0
- TrackBack (Close): -
発表時間考えろよな
- 2005-07-04 (Mon)
- 一般
講義が輪講形式で一回に複数人が担当して論文を読む.今日の担当者は私を含めて5人で,私は最後を担当する予定だった.しかし,担当の論文は少々数学的にとっつきにくい内容だったため,前半の人間の発表が持ち時間の倍以上(30分超え)になったり.んで,一人前がもう時間が無いにもかかわらずたらたらたらたら...... 時間がねーんだからさっさとしゃべれ! 本質的でない部分は飛ばして説明しろ! だいたいにしてPCがプロジェクタに正常につながるかどうかを先にチェックしとけ! (ここで正常につながっていたらその5分間に私の発表を終えられた) 結局時間切れとなり,彼らのおかげで私の発表は来週に持ち越されることに.来週の頭に私が発表しても誰も先週のことは覚えているわけが無い.最後の結論部分だけを来週に回してもまったく持って無意味な発表にしかならない.
これまでの他人の発表を見ていれば時間が厳しくなることは分かっていたのだから,発表時間を考えてスライド作って発表時間もある程度フレキシブルにするべきだ.もうちょっと頭使おうよ.まったく.
- Comments: 0
- TrackBack (Close): -
Webカメラ
なんとなく Web カメラを購入してパソコンにつけてみた.MSN Messenger とか文字で説明できないことが説明できるのはありがたい.とりあえず,これに玄箱とかくっつけて監視カメラにして遊んでみようかなぁ.
- Comments: 0
- TrackBack (Close): -
テンプレート版の if
テンプレートでプログラムするための部品として if に相当する Select なるものがある.これを使うと then 節と else 節の一方のみの評価ができるので安全.ためしに Collatz 予想のやつで遊んでみた.
template<bool, typename T, typename F> struct Select{ typedef T val; }; template<typename T, typename F> struct Select<false, T, F>{ typedef F val; }; template <int n> struct Collatz { const static int val = Select<(n&1)==0, Collatz<n/2>, Collatz<3*n+1> >::val::val + 1; }; template <> struct Collatz<1> { const static int val = 0; }; int main(int argc, char *argv[]) { cout << Collatz<3>::val << endl; return 0; }
- Comments: 0
- TrackBack (Close): -