2010年5月16日日曜日

英字ドキュメント読み支援ツール その1

久々のプログラムねた。(いやぁ、最近.netのMCP試験受けたから。。。)

MCPを受けるのに、英語のpdfを読んでたんだけど、これがあったら便利かなって言うツールを作ってみます。

徐々に作りこんでいきますので数回に分けて書きます。

まずは、環境作り。
Self Pacedのpdf,版によっては、コピペ禁止になっているものがあるため、acrobat readerでは全く読み込めないので、別ツールを使います。
私が使ったのは、brava! readerこいつを、ieでも使えるように再設定します。

で、プログラム開始。
visual studioで、メニューより[File]→[新しいプロジェクト]で、以下のダイアログを開いて、

C#のWindows フォーム アプリケーションを選択。

以下の画面から、


ツールボックスのコンテナから、Split Containerをダブルクリックしてform1に適用。
form1の中央よりに縦に境界線ができて、左側にPanel1,右側にPanel2が表示される。
次に、ツールボックスのコモンコントロールから、WebBrowserをドラッグしてPanel1とPanel2のそれぞれにドロップ。こんな感じになる。



F4キーでプロパティウィンドウにフォーカスを移動し、以下のプロパティを変更。
Form1.WindowState → Maximized
splitContainer1.SplitterDistance → 120
(解像度が1400x900ならこれでよさそう。そうでなければ試行錯誤で設定)
webBrower1.Url → pdfファイルパスを指定。(C:にあるのなら、C:\...\...pdfを指定)
webBrower2.Url → http://www.excite.co.jp/world/

で、実行結果はこんな感じ。



あとは、左側で英文を読みながら、難しそうな文章は、範囲選択 → [Ctrl]+C → 右画面のテキストボックスをクリック → [Ctrl]+a → [Del] → [Ctrl]+v → [Ctrl]+[Enter]で翻訳。


機械翻訳について、エキサイトと、googleとマイクロソフトのものを使ってみたんだけど私の感覚では、翻訳性能は、こんな感じ。
エキサイト >> マイクロソフト >>>>> google
翻訳性能ではgoogleは引き離されているような感じです。(※1)


簡単ですが、今回はここまで。次回は、コピペの際にクォート文字の文字化けの修正をすること(ClipBoardWatcherクラスを作るのは大変なので、0.5秒毎にクリップボードの文字を置換する方法を取ります)と、キーボードコピー操作をしたときに、フォーカスを右画面に移すこと(をすることにより、上の操作の)「 右画面のテキストボックスをクリック 」を端折ることを目的とします。



※1:ま、エキサイトでも、下のように奇訳をしてくれますが。。。
The PrintPage event is the main event involved in printing documents. を、「PrintPage出来事は印刷ドキュメントにかかわるメーンエベントです。」とか、
An event is raised.を、「出来事は高くしています。」とか、
Validating XML with XmlReaderを、「XmlReaderとXMLを有効にします。」とか、
9-11を、「9-11テロ」とか、
following,obect,handler,constructorを、たまに「↓この」とか、「物」とか、「操作者」とか、「建設者」とか、
print jobを、「印刷仕事」とか、
A printed documentを、「印刷された記録」とか、
applications run in the intranetを、「アプリケーションはイントラネットに立候補します。」とか、
The MDI parent form を、「MDI原型」とか、

0 件のコメント: