Как 'выбрать новый' в лямбда-выражении Linq?

Ответ с поправкой растягивает фоновое изображение, изменяя его соотношение. Приведенное ниже решение исправляет это путем рендеринга изображения из UIView, которое содержит два изображения в качестве подпредставлений.

ОТВЕТЬТЕ, ЧТО ВЫ ИЩЕТЕ (Swift 4):

func blendImages(_ img: UIImage,_ imgTwo: UIImage) -> Data? {
    let bottomImage = img
    let topImage = imgTwo

    let imgView = UIImageView(frame: CGRect(x: 0, y: 0, width: 306, height: 306))
    let imgView2 = UIImageView(frame: CGRect(x: 0, y: 0, width: 306, height: 306))

    // - Set Content mode to what you desire
    imgView.contentMode = .scaleAspectFill
    imgView2.contentMode = .scaleAspectFit

    // - Set Images
    imgView.image = bottomImage
    imgView2.image = topImage

    // - Create UIView
    let contentView = UIView(frame: CGRect(x: 0, y: 0, width: 306, height: 306))
    contentView.addSubview(imgView)
    contentView.addSubview(imgView2)

    // - Set Size
    let size = CGSize(width: 306, height: 306)

    // - Where the magic happens
    UIGraphicsBeginImageContextWithOptions(size, true, 0)

    contentView.drawHierarchy(in: contentView.bounds, afterScreenUpdates: true)

    guard let i = UIGraphicsGetImageFromCurrentImageContext(),
        let data = UIImageJPEGRepresentation(i, 1.0)
        else {return nil}

    UIGraphicsEndImageContext()

    return data
}

Возвращенные данные изображения удваивают размер изображения, поэтому установите размер просмотров на половину желаемый размер.

  • ПРИМЕР: я хотел, чтобы ширина и высота изображения были 612 , поэтому я установил ширину и высоту рамки просмотра на 306 ) // Наслаждайтесь:)
11
задан Cœur 24 January 2017 в 16:55
поделиться

1 ответ

var newpeople= _rep.GetPeople().Where(p=>p.personID)
    .Select(p => new KindoFPerson...id=p.id etc)

Обратите внимание на новый " p => ".

29
ответ дан 3 December 2019 в 03:04
поделиться