その他

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

    FiddlerからTrello APIを実行する。

    タスク管理に便利なクラウドサービス「Trello」、開発者向けに用意さ…

  2. その他

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

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

  3. その他

    【仮面ライダー】DXオーズタジャドルコンボライドウォッチのために並んできました。

    12月22日から平成仮面ライダー20作記念「仮面ライダー平成ジェネレー…

  4. その他

    Microsoftのサポートページに載っているファイルがリンク切れを起こしているときは?

    Microsoftのサポートページは非常に有用な情報が多くありますが、…

  5. その他

    ブログリニューアルしました。

    といっても、WordPressのテンプレートを変えただけですが・・・。…

  6. その他

    bitlyのAPIキーを取得する

    今回はURL短縮サービスとして有名なbitlyのAPIキーを取得する方…

コメント

  • コメント (0)

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

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

Time limit is exhausted. Please reload CAPTCHA.

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

Translate

最近の記事

アーカイブ

PAGE TOP