fc2ブログ

Latest Entries

マークシート採点のシステムを作ってみました

OMRの延長でマークシート方式の回答用紙に自由記述欄も設けたExcelで作った回答用紙をもとに生徒の回答をスキャナでPDFにして読み取り、採点結果をPDFとExcelBookに出力するアプリを作ってみた。一応傾き補正も組み込んでみた。
詳細は私のHPに掲載。イメージはこんな感じた。
Mark2.png
自由記述は全員(最大42名)の記述を一度に表示させて正解をクリックする感じた。これで少しでも早く採点ができれば…

PDF関連アプリをアップしました

PDFを結合するアプリと分割するアプリを作ってみたのでそれをアップしました。
結合する方はPDFSharpだけだったのでEXEを圧縮した状態でアップしました(PDF_MergeV200.zip)。boxのサイトからダウンロードできます。(https://app.box.com/s/vje0u6z5b1fc07ws6401g9k5nv6zhmks)
Marge.png
こんな感じです。結合したいPDFファイルをフォームにドラッグアンドドロップ(または追加ボタンで指定)し、出力するPDFファイル名を ... ボタンで指定して結合ボタンを押すだけです。
今回はPDFのパスワード保護と、結合したPDFにページ番号を連番で付与するという機能を追加しました。PDFにパスワードを付けたい場合はPWの右のテキストボックスにパスワードを入力するだけです。何も入力しなければパスワードは付きません。PWをクリックしている間だけ*ではなく文字が表示されます。
もう一つのページ番号を付けるためにはチェックボックスにチェックを入れます。今回、ページ番号を付ける位置はページの上の中央か下の中央だけになっています。また右のP-とあるテキストボックスにはページ番号の前に付ける文字列を入力します。右にある先頭の数字にはページ番号初期値を入力します。また、ページ番号が0以下の場合はページ番号は付与されません。表紙などがPDFファイルに含まれている場合などに使います。

PDF分割アプリはこんな感じです。これはプレビューを実現させるためPDFiumViewerというのを使っている関係で、EXEと3つのdllが必要になります(zipに同胞されています)。そのためダウンロードサイズが大きいです。Viewerの関係で64bit版のみをアップしました(PDF_SplitterV110_x64.zip)。32bit版については今のところ試していませんがニーズがあれば対応したいと考えています。
Splitter.png
このアプリもファイルのドラッグアンドドロップでPDFファイルを指定できます。同時に分割先フォルダにファイルがあったフォルダが指定されます。これは右の ... ボタンで変更できます。1ページずつ分割したい場合は全分割のボタンを押すだけです。出力フォルダに元のファイル名+3桁の連番でPDFファイルが作成されます。もとのPDFをドラッグアンドドロップすると中央左のリストボックスにすべてのページのリストが表示され、それぞれをクリックすると右にそのページがプレビューされます。また、クリックしたページの上までを区切り目として一つのPDFをブロックで分割保存することができます。CTRLを押しながらリストをクリックすることでブロックの分割位置を複数指定できるようになっています。

以上、2本のPDFアプリを作ってみました。これらのアプリはPDFSharpとPDFiumViewerの二つのパッケージを活用させていただきました。

PDF関連のアプリを作ってみた

1か月くらい前からOMR(マークシートによるテスト回答用紙作成と採点に関するもの)アプリを手掛けている。ほぼほぼ出来てはいるのだが、その中で使ったPDF関連のライブラリを使ってPDF結合とPDFをページごとに分割するアプリを作った。
結合アプリはファイルのドラッグアンドドロップで結合するPDFを指定でき、順番もボタンで入れ替えられるようにした。また、リストから削除できるようにして最終的にリストアップされた順番にPDFを1本にまとめられるようにした。
分割アプリは複数ページのPDFをページ番号で連番を付けて一つ一つのPDFファイルにするもの。
両方合わせると一応PDFのページ編集ができる。
こういったアプリはネット上に山ほどあるので、完全にこれは頭の体操プログラミングだった。
どちらも1時間はかかっていないので体操とまではいかないのかな・・・。

USB-IOをC#でコントロール

昔、それもWindowsXPの時代かな・・12年位前・・?学校放送の放送タイマーが故障して、その代わりにパソコンを使ってチャイムを鳴らす学校放送をしたことがある。今回そのC#版を作った。今回はリレーコントロールユニットを購入し、3Dプリンタで簡単なケースを作ってみた。
IMG_0335.jpg
IMG_0334.jpg
USB-IOをコントロールするためのプログラムは、C#を使うことで以前に比べると(C++の時と比べると)結構簡単にルできるようになった。
今回はExcelBookでチャイムの鳴動時刻を指定できるようにした。また、mp3などの音楽ファイルも指定できるようになっている。

Graybordを更新・・・

グレーボードを使っていて直線が引けたらよいなと思い、その機能を追加した。
この前から追加した機能が
・直線(連続直線)の描画
・クリップボードの画像の貼り付けのためのボタンの追加。
・背景も含めてすべてクリアするボタンの追加。

自分が使うだけかな・・・。
http://rebelrider.web.fc2.com/graybord/index.html ここからダウンロードできます。

Appendix

プロフィール

rebelrider

Author:rebelrider
BorlandC++Builder5を使ったプログラマー?。元の仕事は「教育関係」、67歳のバイク好き&ラッパ吹きのおじさんです。最近C#にはまってます。
FC2のWebページにソフトウエアはアップしています。
日記代わりのブログもご覧ください。

最新トラックバック

ブログカウンター

検索フォーム

ブロとも申請フォーム

この人とブロともになる

QRコード

QR