Bagaimana cara menyalin gambar, mendapatkan jalur kembali ketika menempel di input file?

8

Terkadang saya mendapatkan laporan bug ad-hoc dari pelanggan, yang harus saya transfer ke pelacak bug online kami. Berfungsi baik untuk teks, tetapi gambar membosankan.

Saya mencari solusi untuk menyalin-menempelkan gambar dari dokumen (seperti lembar excel) dengan cara jika Anda menempelkan gambar ke input file (atau input teks) pada halaman html, file akan secara otomatis ditulis ke disk (tmp dir), dan jalur yang ditulis ke bidang input file.

Pertanyaan ini terkait dengan Langsung menempelkan gambar clipboard ke dalam pesan gmail , tetapi saya ingin bertanya apakah ada solusi menggunakan program lokal saja. Saya tertarik pada solusi untuk semua sistem operasi.

Alexander Torstling
sumber
Saya pikir itu tidak mungkin tanpa software pihak ketiga.
Inggris
Perangkat lunak pihak ketiga bukan masalah - saya hanya ingin tahu apakah perangkat lunak tersebut ada.
Alexander Torstling
Jika tidak ada yang menemukan itu, saya akan membuat .. Solusi Windows sudah cukup untuk saya.
Pavel Radzivilovsky
1
Kedengarannya seperti sesuatu yang bisa dilakukan autohotkey, meskipun saya harus melihat caranya. Kedengarannya seperti ide yang bagus.
Phoshi

Jawaban:

3

Oke teman-teman, ini yang saya lakukan.

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");
        }
    }
}

Dikompilasi ke EXE, menambahkan pintasan menu start-up untuk itu dengan hotkey Ctrl + Shift + C. Itu kemudian menyalin gambar saat ini di clipboard ke file dan menempatkan path ke file ke clipboard.

Pavel Radzivilovsky
sumber
2

Utas AutoHotKey ini memiliki skrip AutoHotKey untuk mengambil tangkapan layar. Ini termasuk sumber untuk program .Net 1.1 sepele untuk menyimpan clipboard ke PNG. Anda ingin memiliki beberapa modifikasi lainnya:

  • Simpan gambar ke folder lain, dengan nama yang lebih baik daripada image.png
  • Salin jalur ke gambar baru ke papan klip Anda

The perintah Autohotkey Clipboard adalah cara lain untuk mengakses data, meskipun program untuk mendapatkan data citra akan menjadi sedikit lebih rumit.

Ed Brannin
sumber
1

Tidak yakin jika saya menjawab pertanyaan Anda. tetapi Anda dapat mencoba clipman. ini membantu Anda untuk menyalin semuanya dan menyimpannya sampai Anda memilihnya satu per satu. Clipman, sumber CNET

Jason
sumber
0
  • Klik kanan gambar dan simpan?
  • Seret gambar ke folder?
  • Gunakan Alat Snipping dan simpan dari sana?

Tiga metode ini akan memungkinkan Anda menyimpan file dengan cukup cepat. File Explorer akan selalu pergi ke folder yang sama sehingga dengan cepat menyimpan atau mengunggah file tidak akan menjadi masalah ...

Fitur clipboard langsung telah diminta sebelumnya dan gagal .

Tamara Wijsman
sumber
Gambar tidak berasal dari web. Ini lebih dari klik kanan. Plus, saya tidak perlu banyak berturut-turut. Saya butuh satu, kadang-kadang, untuk banyak orang, di banyak stasiun. Kasing penggunaan yang tepat adalah menambahkan gambar ke fogbugz wiki.
Pavel Radzivilovsky
Saya tidak mengerti ini ... Anda bisa klik kanan pada gambar di Word atau Excel dan klik "Simpan Gambar Ini". Jika clipboard tidak berfungsi, cara tercepat adalah menggunakan salah satu metode di atas atau minta seseorang menulis add-on untuk Word atau Excel yang menambahkan opsi menu yang tepat untuk langsung mengunggah ke fogbugz.
Tamara Wijsman
0

Saya tidak terbiasa dengan Windows, tetapi karena Anda meminta solusi untuk semua OS, saya punya solusi applescript untuk Mac OS X yang telah saya uji dengan menyalin gambar di situs web ini dan menjalankan skrip.

Applescript ini mengasumsikan gambar ada di clipboard dalam format TIFF (mungkin harus menguji untuk melihat apakah ini yang keluar dari Excel.) Ini membuat file dari clipboard, menyimpannya ke direktori sementara, lalu menempelkan path ke dalam bidang yang ditentukan di halaman paling depan di Safari.

Jadi, Anda akan menyalin gambar, beralih ke halaman safari Anda, dan jalankan skrip. (Dari menu skrip, buat menjadi layanan dan tetapkan pintasan, atau gunakan FastScripts untuk menetapkan pintasan ke applescript.)

Skrip harus disesuaikan untuk menemukan bidang yang tepat pada formulir Anda.

repeat with i in clipboard info

  if TIFF picture is in i then

    -- grab the picture from the clipboard, set up a filename based on date
    set tp to the clipboard as TIFF picture
    set dt to current date
    set dtstr to (time of dt as string) & ".tiff"
    set pt to ((path to temporary items from user domain as string) & dtstr)
    set tf to open for access file pt with write permission

    -- save the file
    try
        write tp to tf
        close access tf
    on error
        close access tf
    end try

    -- put the path into the proper field in the web Browser
    tell application "Safari"
        activate

        -- adjust javascript as necessary
        -- currently inserts into Answer textarea of this superuser.com page for testing
        -- ie. make sure you've clicked "add answer" first
        set myJS to "document.getElementById('wmd-input').value = '" & pt & "'"

        -- document 1 is frontmost
        do JavaScript myJS in document 1
    end tell

    exit repeat
  end if
end repeat

Sunting: Hal-hal yang perlu dipertimbangkan:

  • Saya tidak melakukan apa-apa dengan path, pembatas default adalah titik dua. Anda mungkin menginginkan jalur POSIX.
  • Apakah mungkin untuk mengubah javascript untuk menjalankan file upload javascript? (Saya tidak punya pengalaman dengan ini, tapi saya pikir itu bisa dilakukan.)
  • Excel mendukung applescript, dan memiliki copy pictureperintah. Mungkin layak untuk melakukan ini dalam satu langkah. Pilih gambar, jalankan skrip, salin skrip, simpan, buka halaman web dan isi formulir.
ghoppe
sumber