コマンドラインからファイル名を指定すれば、画像をクリップボードにコピーします。
gnuplot等、別のプログラムで作った画像ファイルの中身をWord等に貼り付けるとき、これをかます事で「ペイントで開く→全指定→コピー」の手間を減らします。
img2clip.fs
open System.IO
open System.Drawing
open System.Windows.Forms
open System
let copy_image (fname: string) =
try
use fs = new FileStream(fname,FileMode.Open, FileAccess.Read)
use bmp = new Bitmap( System.Drawing.Image.FromStream(fs) ) ;
Clipboard.SetData("Bitmap", bmp)
with
:? System.ArgumentException ->
printfn "can't open %s" fname
exit 1
let main =
let args = Environment.GetCommandLineArgs()
if args.Length <> 2 then
printfn "usage:img2clip imgfile" |> ignore
Environment.Exit 1
let infile = args.[1]
copy_image infile
[<STAThread>]
do main