我正在尝试执行以下操作:通过PowerShell将压缩的图像复制到剪贴板。
整个过程如下:截屏(在PS脚本之外)->用pngquant压缩(在PS脚本之外)->复制到剪贴板(当前问题)
[Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms');
[Reflection.Assembly]::LoadWithPartialName('System.Drawing');
$n,$e='%input'.split('.');
$fn=-join($n, '_compressed.', $e);
$f=get-item($fn);
$img=[System.Drawing.Image]::FromFile($f);
[System.Windows.Forms.Clipboard]::SetImage($img);
$img.Dispose()
%input
被完整的文件路径+扩展名替换。例如,Z:\image.png
。
请原谅格式,原本应该是格式,所以请尽量简短。
例如,如果压缩图像从原始3MB向下减少760KB,则在将其复制到剪贴板后,它变为2MB。坦率地说,当我在默认的Windows图像查看器中按“复制”时,也会发生同样的事情。
但是,由于我们在这里使用PS,也许有某种解决方法?