その他

クリップボードにある画像をファイルとして保存するC#コード

とある目的で、クリップボードにコピーされた画像をファイルとして保存する処理を書いてみました。

下記のようなツールも見つけましたが、任意のタイミングで任意の場所にファイル保存したかったので、自分で書くことにしました。

下記の通り簡単なコードで、PNG、JPEG、BMP、GIF、TIF形式での保存に対応しています。

CB2IMG.cs

using System;
using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

namespace CB2IMG
{
  class Program
  {
    [STAThread]
    public static void Main(string[] args)
    {
      Image img = Clipboard.GetImage();
      if (img != null) {
        ImageFormat fmt = ImageFormat.Png;
        switch (Path.GetExtension(@args[0]).ToLower()) {
          case ".jpg":
          case ".jpeg":
            fmt = ImageFormat.Jpeg;
            break;
          case ".bmp":
            fmt = ImageFormat.Bmp;
            break;
          case ".gif":
            fmt = ImageFormat.Gif;
            break;
          case ".tif":
            fmt = ImageFormat.Tiff;
            break;
          default:
            break;
        }
        try {
          img.Save(@args[0], fmt);
        } catch  (Exception e) {
          Console.WriteLine("Exception: {0}", e);
        }
      }
    }
  }
}

csc.exeによるコンパイル

統合開発環境であるVisual Studioがなくても、OS標準搭載の「csc.exe」を使えば、下記サイトのように簡単にコンパイルできます。

使い方

使い方も単純で、クリップボードに画像がコピーされている状態で、保存ファイルのパスを指定して実行するだけです。

cb2img 画像.jpg

画質や透過色の指定は行っていませんが、比較的簡単なコード修正で対応できるかと思います。

近況報告 2020年4月18日前のページ

Slackのカスタム絵文字を一括作成するVBAマクロ次のページ

関連記事

  1. その他

    Evernoteのサイレント・インストール

    EvernoteのダウンロードページからダウンロードできるWindow…

  2. その他

    Photoshop CSのライセンス認証問題

    今更ながらに、10年ほど前に発売された「Photoshop CS」をイ…

  3. クライアント管理

    7-Zipのサイレントインストール方法

    窓の杜の記事「フリーの解凍・圧縮ソフト「7-Zip」がメジャーバージョ…

  4. その他

    Microsoft Speech Platform Version 11が公開されました。

    今月1日、Microsoft Speech Platform Vers…

  5. その他

    Webサービスのサジェスト機能についてまとめてみました。

    「Bingで期間指定検索するオプション 他」でも紹介していますが、Bi…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

PAGE TOP