Как программно преобразовать файл изображения в BMP, используя встроенные возможности Windows XP? - PullRequest
4 голосов
/ 02 сентября 2010

Можно ли преобразовать файл изображения в формат BMP, используя собственные библиотеки WindowsXP и возможности сценариев?

Я говорю о WSH, JScript, VBS и т. Д ...
C ++ также хорош для того, что мне нужно, если его можно скомпилировать с помощью Dev-C ++

Ответы [ 2 ]

2 голосов
/ 02 сентября 2010

Да, вы можете.Посмотрите на класс Image , который является частью GDI +.

1 голос
/ 02 сентября 2010

Для преобразования изображений из сценариев вы можете использовать WIA Automation Library .Это не строго «нативная» библиотека, но она распространяется бесплатно (см. EULA).

Blow - это пример JScript, который показывает, как преобразовать изображение в BMP.Исходное изображение может быть в формате PNG, GIF, JPEG или TIFF.Перед запуском сценария зарегистрируйте в системе библиотеку wiaaut.dll .

var wiaIDUnknown = "{00000000-0000-0000-0000-000000000000}";
var wiaFormatBMP = "{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}";

// Load the original image
var img = new ActiveXObject("WIA.ImageFile");
img.LoadFile("D:\\MyFolder\\MyImage.gif");

switch (img.FormatID)
{
  case wiaIDUnknown:
    // Unknown image format or an invalid image file
    break;

  case wiaFormatBMP:
    // The image is already BMP
    break;

  default:
    // Specify the new format
    var ip  = new ActiveXObject("WIA.ImageProcess");
    ip.Filters.Add(ip.FilterInfos("Convert").FilterID);
    ip.Filters(1).Properties("FormatID").Value = wiaFormatBMP

    // Convert and save the image
    img = ip.Apply(img);
    img.SaveFile("D:\\MyFolder\\MyImage.bmp");
}

См. Также Документация WIA в MSDN.

...