Мне нужно открыть файл изображения с помощью Paint.Net, а затем выполнить команду «Сохранить как».Наряду с выбором типа файла для сохранения в качестве, было бы здорово установить DPI изображения и конвертировать любые изображения CMYK в RGB.Вместо того, чтобы делать это вручную для тысяч изображений, я пытаюсь автоматизировать процесс с помощью PowerShell, используя его способность контролировать программы .NET.Я хотел бы добиться этого с новым ядром PowerShell, но я согласен с необходимостью использовать PS 5 в случае необходимости.Моя версия Paint.Net - 4.1.6
Мои исследования заставляют меня поверить, что мне сначала нужно загрузить сборки в PowerShell.Я пытался сделать это с помощью вариантов [Reflection.Assembly].Код выполняется успешно, но я не уверен, что делаю это правильно, потому что я не могу создать новый объект, используя мою недавно загруженную сборку.
Вот две примерные строки кода, которые яЯ использовал для загрузки сборки:
[Reflection.Assembly]::LoadFile("C:\Program Files\paint.net\PaintDotNet.Base.dll")
[System.Reflection.Assembly]::LoadFrom("C:\Program Files\paint.net\PaintDotNet.Base.dll")
После этого я считаю, что мне нужно создать новый объект, используя мою новую сборку:
$tempImage = New-Object PaintDotNet.Base.Bitmap 'C:\Users\jf060898\Pictures\img1.jpg'
Когда я пытаюсь создать объект,Я получаю следующую ошибку: «Новый объект: не удается найти тип [PaintDotNet.Base.Bitmap]: убедитесь, что сборка, содержащая этот тип, загружена».Однако, когда я перечисляю сборки, я вижу мой Paint.Net:
Name Version Culture PublicKeyToken
PaintDotNet.Base 4.106.7016.38074 neutral null