その他

クリップボードにある画像をファイルとして保存する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. Windows関連

    PCをクリーンインストールしたので普段使っているツールをまとめてみた。

    Office 2016のリリースに合わせてメインで使っているPCをクリ…

  2. その他

    SharpDevelopのインストールと日本語化

    私のHPでも「SharpDevelopでリボンXMLを編集する」でリボ…

  3. その他

    Google Noseで表示される香りをまとめてみました。

    Googleの新サービス(笑)「Google Nose BETA」で表…

  4. その他

    2014年、今年も初心者備忘録をよろしくお願いいたします。

    もう2014年がスタートして一週間になりますが、今年も当「初心者備忘録…

  5. その他

    jQuery UIのDatepickerに祝日判定ロジックを組み込む。

    jQuery UIにはWebシステムで簡単に日付選択ができるようになる…

  6. その他

    信号機ガチャ第2弾コンプしました。

    大人気となった「信号機」ガチャの第2弾(日本信号 続 ミニチュア灯器コ…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP