#javascript #node.js #powershell #cmd #electron
#javascript #node.js #powershell #cmd #electron
Вопрос:
Я создал приложение для просмотра изображений с использованием electron js для Windows 10. Я могу добавлять просмотренные изображения в буфер обмена с помощью clipboard.writeImage. Однако, используя это, я могу вставлять только в word и другие приложения для редактирования. Я хотел бы также иметь возможность вставлять свое изображение в виде файла, чтобы его можно было копировать в папки. Есть ли способ сделать это в nodejs? Я также не возражаю, если команда задана в powershell или cmd, поскольку я могу вызвать любой из них из nodejs. Большое спасибо
Ответ №1:
Если вы сохраняете изображения во (временные) файлы, вы можете копировать ссылки на эти файлы в буфер обмена с помощью Set-Clipboard -LiteralPath
.
Ответ №2:
В Powershell это может выглядеть примерно так:
$Image = Get-Clipboard -Format Image
$ImageFile = 'C:scriptstestimage.jpg'
$Image.Save($ImageFile,'Jpeg')
Более подробную информацию о том, что вы можете сделать с $Image после того, как вы его захватили, можно найти здесь: Класс Image и поддерживаемые форматы можно найти здесь: Класс ImageFormat
Комментарии:
1. Привет, я получаю сообщение об ошибке при попытке это сделать: Вы не можете вызвать метод для выражения с нулевым значением. В строке: 3 символа: 1 $Image. Сохранить ($ImageFile,’Jpeg’); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CategoryInfo : недопустимая операция: (:) [], исключение RuntimeException FullyQualifiedErrorId : InvokeMethodOnNull
2. Вы уверены, что у вас было изображение в вашем буфере обмена? Эта ошибка возникает, когда $Image пуст. Добавьте строку между вторым и третьим с помощью just
$Image
, и вы должны увидеть информацию об изображении, если нет вывода, первая строка не удалась. Что случилось со мной только тогда, когда в буфере обмена не было изображения.3. Я думаю , что приложение @daibatzu намерено копировать изображения в виде ссылок на файлы в буфер обмена, чтобы пользователи могли позже вставлять эти файлы в папки. Дайбатзу, не могли бы вы уточнить (пожалуйста, обновите свой вопрос напрямую)?
4. да, mklement0, это то, что я хочу. Это настольное приложение для просмотра изображений. Пользователи должны иметь возможность нажимать кнопку копировать на изображении и вставлять его, когда захотят, в окно проводника. Спасибо
5. @daibatzu Ах, тогда у вас должен быть установлен ответ mklement0, и если вам нужно перейти от «image-in-clipboard» к «file-in-clipboard», вы можете просто объединить наши ответы (могут потребоваться некоторые незначительные изменения).