粘贴文件输入时如何复制图像,获取路径?

Ale*_*ing 8 html clipboard path paste images

我有时会从客户那里收到临时错误报告,我需要将这些报告传输到我们的在线错误跟踪器。适用于文本,但图片很乏味。

我正在寻找一种解决方案来从文档(如 Excel 工作表)复制粘贴图像,如果将图像粘贴到 html 页面上的文件输入(或文本输入),该文件将自动写入磁盘(tmp dir),以及写入文件输入字段的路径。

这个问题与Directly paste clipboard image into gmail message 相关,但我想问一下是否有仅使用本地程序的解决方案。我对所有操作系统的解决方案感兴趣。

Pav*_*sky 3

好吧,伙计们,这就是我所做的。

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Drawing;

namespace ClipSave
{
    class Program
    {
        [STAThread] public static void Main()
        {
            if (Clipboard.GetDataObject() != null)
            {
                IDataObject data = Clipboard.GetDataObject();

                if (data.GetDataPresent(DataFormats.Bitmap))
                {
                    Image image = (Image)data.GetData(DataFormats.Bitmap, true);
                    string file = System.Windows.Forms.Application.CommonAppDataPath + "\\ClipSaveImage.png";
                    image.Save(file, System.Drawing.Imaging.ImageFormat.Png);
                    Clipboard.SetText(file);

                }
                else
                    MessageBox.Show("Copy valid image first");
            }
            else
                MessageBox.Show("Copy image first");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

将其编译为 EXE,并使用热键 Ctrl+Shift+C 添加启动菜单快捷方式。然后,它将剪贴板中的当前图像复制到文件中,并将文件的路径放入剪贴板中。