Как я могу получить кодек изображения JPEG в F #? - PullRequest
3 голосов
/ 27 сентября 2011

В C # я могу получить кодировщик JPEG следующим образом:

var jpegEncoder = 
    ImageCodecInfo.GetImageEncoders()
        .Where(e => e.FormatID == ImageFormat.Jpeg.Guid)
        .Single();

Я хотел бы сделать то же самое в F #, и я знаю, что есть красивый и лаконичный способ сделать это, но яЯ только начинаю, и я не могу понять это.Я вижу, что есть метод Where, висящий на GetImageEncoders(), но я не могу понять, что передать в него.Я прочитал сообщение в блоге Дона Сайма на F # и LINQ, но мне просто не хватает опыта в F #, чтобы по-настоящему понять его.

Есть ли способ сделать то же самое в F #?

1 Ответ

2 голосов
/ 27 сентября 2011
#r "System.Drawing"
open System.Drawing.Imaging
let jpeg = 
    System.Drawing.Imaging.ImageCodecInfo.GetImageEncoders() 
    |> Seq.find (fun e -> e.FormatID = ImageFormat.Jpeg.Guid)
...