dポイントプレゼントキャンペーン実施中!

お世話になります。Windows8.5+OFFICE2013で、アドオンや外部ライブラリ、ソフトのインストールやオンラインアプリケーションの利用はできない環境下での相談です。

画像ファイルを読み込んでVBAでGetpixcelにより塗りと位置の情報を取得しようとしています。小さなBitmapではLoadPictureで画像を取得できましたが、実際はA4サイズのTIFFのみ出力できるスキャナを使用する予定です。枚数が3000枚以上あるのでPrintscreenでBMP化という荒業は極力避けたいと考えていますが、どのようにすれば画像のピクセル情報を読むことができるのでしょうか。どうぞよろしくお願いいたします。

※ご参考までに、こういう処理をしようとしています。
 赤の他人様のコードですが、自分の実コードを持ち出せないので類例でご容赦ください。
http://www.bird-soft.net/mt/2008/07/getpixelexce …

A 回答 (3件)

目的が画像pixel情報取得だけなら、GDIPlus API可能です。


GdipCreateBitmapFromFile
上記関数にでGdi+用Bitmapハンドルを取得し、
GdipCreateHBITMAPFromBitmap関数でGDI用Bitmapハンドル取得

https://msdn.microsoft.com/en-us/library/windows …

以後の処理は質問者さんが参考にしている処理と変わらないはずです。
(但しpixel情報取得の文字列経由処理には違和感を感じますが)

※もしUserformに画像表示するのが目的なら話は違いますが。
    • good
    • 0
この回答へのお礼

本命っぽい回答がきて小躍りしております!涙
GDIを使ったことないのですが標準で入っているものなのでしょうか。
今から詳しく勉強しますが、光が見えてきて興奮していますのでまずはお礼を!

過去の紙資料をスキャンしたTIFF画像に印字されたコード部分を取り込んで
テンプレートマッチング的に読み取りたいので、表示の必要はありません。

「シロクマ君、パソコンでパラパラっとできないの?残業は困るけど工夫してよ」
「通常業務もありますからね…パソコンでパラパラやるためにはプログラミングも必要ですし…」
「スキルの勉強は自分でやらなくちゃだめだろ?学校じゃないんだから。はい差し入れ。」
「あざっす…いつかコロしますね… (# ゚д゚)」

お礼日時:2017/11/11 22:36

素直にソフトウェアを持ち込むか画像を持ち出すかした方が良いです。


IrfanViewがおすすめです。
規則も大事ですか、絶対ではなく利益と比較衡量すべきです
    • good
    • 0
この回答へのお礼

使いたいですねー…(溜息)
セキュリティがガチガチで、ブラウザのコピペすらブロックされています。
ユーザーとしては全部一文字ずつ手打ちで自作するよりなしです。(;´д`)トホホ

お礼日時:2017/11/08 23:09

VBAじゃ無理なんじゃないですか

    • good
    • 0
この回答へのお礼

レスありがとうございます。OFFICEの標準機能ではまったく無理ですよね。
APIでキーストローク送ってスクリーンショットを撮る→クリップボードのTIFFを開いて(開く、という言い方でいいのか?これがポインタってやつなのかな??)→バイナリで開いてピクセル情報が書かれているメモリのオフセットを探して(どうやって?)ビットを読んでいく、というやり方が脈がありそうです。見つけたサンプルがCなので全然理解が進まない…

こんな方向でどなたかご教示くださいませんでしょうか。

お礼日時:2017/11/07 22:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A