2010/04/10

Syntax Highlighter でコードを見やすく!

ソースコードをページに貼ってるのですが、いまいち見づらい。
なにかいいものは無いものかと、色々と巡回していると、
Syntax Highlighter というものがあるようです。
これはBlogger用のウィジェットで、コードが下記のように表示できるものです。

/*
*  カメラからキャプチャしたデータを半分のサイズにし、
* グレースケールに変換したものを出力する。
*/

#include "cv.h"
#include "highgui.h"

int main(int argc, char** argv)
{
 //表示用のウィンドウを作成する 
 cvNamedWindow("OriginalWindow",CV_WINDOW_AUTOSIZE);  //カメラで取得したデータの表示用
 cvNamedWindow("SmallSizeWindow",CV_WINDOW_AUTOSIZE); //半分のサイズでグレイスケールのデータの表示用

 //カメラから取り込む
 //cvCreateCameraCaptureに0を指定すると、最初に見つかるカメラデバイスが選ばれます。
 CvCapture *capture = cvCreateCameraCapture(0);
 
 //カメラが無い時用
 //CvCapture *capture = cvCrateFileCapture(動画ファイル名);


 printf("Please press ESC key to exit.");

 //カメラのサイズを取り込みます。 cvGetCapturePropertyの戻り値はdoubuleなので、intにキャスト
 CvSize size=cvSize
     (
        (int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_WIDTH ),
        (int)cvGetCaptureProperty(capture,CV_CAP_PROP_FRAME_HEIGHT )
     );
 
 //縦横を半分に
 CvSize halfsize=cvSize((int)size.width/2,(int)size.height/2);


 //カメラから取得したデータ用
 IplImage * CapturedFrame;
 
 //半分のサイズのデータを格納する
 //カラーのままなので、チャネル数は3
 IplImage * SmallFrame=cvCreateImage(halfsize,IPL_DEPTH_8U,3);
    //グレースケール用
 //グレースケールなので、チャネル数は1
 IplImage * GrayFrame=cvCreateImage(halfsize,IPL_DEPTH_8U,1);


 while(1)
 {
  //1フレームキャプチャ
  CapturedFrame=cvQueryFrame(capture);
  if(!CapturedFrame) break;

  //小さいサイズに変更
  cvResize(CapturedFrame,SmallFrame);

  //小さくしたものをグレースケールに変更
  //cvCvtColorを使用する際は、変換元と変換先のサイズが同じである必要があります。
  cvCvtColor(SmallFrame,GrayFrame,CV_RGB2GRAY);
    
     //ウィンドウに表示
     cvShowImage("OriginalWindow",CapturedFrame);
     cvShowImage("SmallSizeWindow",GrayFrame);
 
  //33ミリ秒 キーの入力を待つ(escキーが押されるとループを抜ける)
  //33ミリ秒ごとにキャプチャするので、表示は30FPS程度になります
  char c=cvWaitKey(33);
  if(c==27) break;
  
 }

 //リソースを開放
 cvReleaseCapture(&capture);
 cvReleaseImage(&GrayFrame);
 cvReleaseImage(&SmallFrame); 

 cvDestroyWindow("OriginalWindow");
 cvDestroyWindow("OriginalWindow");

}   

導入の仕方ですが、
1、http://fazibear.blogspot.com/ にアクセスします。
2、右上のSearch box に、syntax Highlighter と入力します。
3、該当するエントリが表示されるので、”To add it check out this page.”と書かれているところをクリックします。
4、そのまま追加します。

使うときは、編集画面で
<pre name="code" class="c-sharp">
... some code here ...
</pre>
と入力すればOKです。

これでかなりコードが見やすくなりました!

0 件のコメント:

コメントを投稿