プロが教える店舗&オフィスのセキュリティ対策術

VBAを使って、bmp画像をtiff圧縮するプログラムを教えてください。

検索すると

http://oshiete.goo.ne.jp/qa/8508126.html

画像圧縮、変換用のライブラリ を使えば良いという回答ページは見つかったのですが
具体的な方法が分かりません。

「画像 dll vba tif bmp」などで検索してみても分かりませんでしたので
教えてください。

A 回答 (2件)

こちらはいかがでしょうか。


http://tanlab.blog.fc2.com/blog-entry-31.html

試してみたところ、ファイル名は、変数に変えてもOKでした。
Dim file1 As String, file2 As String

file1 = "C:\Users\Public\Pictures\Sample Pictures\Hydrangeas.jpg"
file2 = getDeskTopPath & "\test.tif"
(注)getDeskTopPathはデスクトップのパスを取得する自作(というかWebから切り貼りした)関数

GdipCreateBitmapFromFileは、BMP,JPEG,PNG,TIFF等に対応しています。

With encParam.Parameter(0)
    .Value = VarPtr(4) ' 画像圧縮:LZW=2, CCITT3=3, CCITT4=4, Rle=5, None=6
End With
圧縮方法については詳しくは無いですがVarPtr(2)のLZW等にするとカラーになりました。
なお、JPEGからLZW圧縮TIFFに変換したら巨大ファイルになりました。当たり前かも。
    • good
    • 0
この回答へのお礼

ありがとうございます。

うまくいきました。
 

お礼日時:2014/11/07 16:30

「tiff圧縮」というのはわかりませんが


tiffに変換保存するだけなら
officeのpublisher VBAでできます。

ThisDocument.ActiveView.ActivePage.Shapes.AddPicture("c:\Users\●●\Pictures\無題.bmp", msoFalse, msoTrue, 100, 50).Select

Selection.ShapeRange.SaveAsPicture "c:\test\publisher.tif", pbPictureResolutionDesktopPrint_150dpi
    • good
    • 0

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