@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

ExcelやWordファイルをTIFFの4G圧縮ファイルに保存したい

1
投稿者投稿内容
Liquid_Force
大ベテラン
会議室デビュー日: 2003/08/28
投稿数: 102
投稿日時: 2008-04-27 14:25
こんにちは、今度VB.NETで開発する案件に表題のような用件があります。
.net開発は3ヶ月程度で基本的なことしか経験がないのでどなたかご教示下さい。

OS:Windows2003Server
IIS:6.0
VB.NETのWebフォームです。

現在、Wordファイルをサードパーティのソフトを使ってTIFF変換しているものがあり、
これをVB.NETで同等の開発を行うことになったのですが、どう作りこんだら良いか
困っています。

最初は画面をキャプチャーして画像保存も調べたのですが、どうもWindowsFormでないと
キャプチャーは出来ないみたいと判断しました。
サードパーティのソフトを使わずにExcelやWordファイルを画像保存
出来るのでしょうか。また、webフォームで画面をキャプチャーするようなことは
出来るのでしょうか。

宜しくお願い致します。
七味唐辛子
ぬし
会議室デビュー日: 2001/12/25
投稿数: 660
投稿日時: 2008-04-27 15:40
WordファイルをTIFF化できるんですか?


Liquid_Force
大ベテラン
会議室デビュー日: 2003/08/28
投稿数: 102
投稿日時: 2008-04-27 15:48
七味唐辛子さん

現行システムではInformatik Image Driverというソフトを使って
WordファイルをTiff変換しているようです。
やはりサードパーティのソフトを使わないとWordファイルなどを画像ファイルとして
生成はできないですよね。。。
Azulean
大ベテラン
会議室デビュー日: 2008/01/04
投稿数: 123
お住まい・勤務地: 大阪府
投稿日時: 2008-04-27 16:18
引用:

やはりサードパーティのソフトを使わないとWordファイルなどを画像ファイルとして
生成はできないですよね。。。


極論ですが、そのサードパーティーのソフトが存在する以上、自分で作ることもできるとは言えます。

もちろん、.NET Frameworkの標準のクラスライブラリだけでは実現できないので色々と手を尽くすことが必要になるでしょう。
例えば、仮想的なプリンタドライバを仕立て上げてそれを画像ファイルに出力するとか、Wordのファイルフォーマットを読んで自力でパース&復元するものを書くとか。

単純な手でいくと、Wordを画面上に表示して、デバイスコンテキストベースでキャプチャ(PrintScreenと同じことをする)も考えられます。
この手法はWindows Forms以外でも使えますが、API等を頼ることになるのではないかと思います。
問題点としてはキャプチャ処理中はウィンドウが被ってはならない、ページ送りの操作ができないといけない、連結する処理を実現しなければならないといったものがあります。

しかし、たいていの場合は、サードパーティー製のソフトを買うより安く実現することは難しいかと思われます。
企業活動であれば、妥当な投資で工数が削減できるなら、そのソフトの導入に躊躇すべきではないと思います。


ところで、32bitOSの場合、Bitmapクラスに4GBのTIFF分のサイズを取らせると、まず成功しません。
その辺はうまく方法を考えておられますか?
Liquid_Force
大ベテラン
会議室デビュー日: 2003/08/28
投稿数: 102
投稿日時: 2008-04-27 19:30
Azuleanさんコメントありがとうございます。

やはりソフトがあるならこれを利用するほうがいいみたいですね。
確かに作りこめば不可能ではないのでしょうけど、開発期間も限られているので
工数を考えるとソフトの利用が懸命と判断します。

  引用:--------------------------------------------------------------
     ところで、32bitOSの場合、Bitmapクラスに4GBのTIFF分のサイズを取らせると、
     まず成功しません。

  --------------------------------------------------------------------

そうなんですか!?単純にTIFF形式ならファイル生成が可能なことを
確認しているのですが、よくよく調べたら現行システムはTIFFの4G圧縮形式ファイル
だったので、やはりサードパーティのソフト利用が妥当のようですね。

もう一度いろいろと検討してみます。
ありがとうございました。
Azulean
大ベテラン
会議室デビュー日: 2008/01/04
投稿数: 123
お住まい・勤務地: 大阪府
投稿日時: 2008-04-27 22:09
引用:

  引用:--------------------------------------------------------------
     ところで、32bitOSの場合、Bitmapクラスに4GBのTIFF分のサイズを取らせると、
     まず成功しません。

  --------------------------------------------------------------------

そうなんですか!?


32bit OSではユーザが確保できるメモリが最大で2GBとなり、大抵はもっと少なくなります。
Bitmapクラスはメモリ上で連続した領域を必要とするため、4GBは無理というのは納得できます。
一度、大きいサイズ(2万*2万等)でBitmapを作成してみてはいかがでしょうか。

[ メッセージ編集済み 編集者: Azulean 編集日時 2008-04-27 22:27 ]
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2008-04-27 22:37
引用:

Liquid_Forceさんの書き込み (2008-04-27 19:30) より:
そうなんですか!?単純にTIFF形式ならファイル生成が可能なことを
確認しているのですが、よくよく調べたら現行システムはTIFFの4G圧縮形式ファイル
だったので、やはりサードパーティのソフト利用が妥当のようですね。


どなたも書かれないので遅まきながら書きますが、良くは知りませんが、「4G」ではなく「G4」ではないでしょうか?(G4 FAX の G4)

引用:

Liquid_Forceさんの書き込み (2008-04-27 14:25) より:
現在、Wordファイルをサードパーティのソフトを使ってTIFF変換しているものがあり、
これをVB.NETで同等の開発を行うことになったのですが、どう作りこんだら良いか
困っています。


要求仕様が良く分からないのですが、現在動いているシステムのリプレースなのでしょうか?リプレースだとしたら、仕様を忠実に引き継ぐ必要があるのかから含めて、再検討されたほうが良いのではないかとも思います。
Azulean
大ベテラン
会議室デビュー日: 2008/01/04
投稿数: 123
お住まい・勤務地: 大阪府
投稿日時: 2008-04-27 22:43
引用:

どなたも書かれないので遅まきながら書きますが、良くは知りませんが、「4G」ではなく「G4」ではないでしょうか?(G4 FAX の G4)


なるほど、4GBのTIFFファイルと言われてなんだろうなぁと感じてはいましたが、G4というのがあるのですね。
1

スキルアップ/キャリアアップ(JOB@IT)