2016-08-03 9 views
1

Ich muss eine Transparenz (oder Deckkraft) meiner hochgeladenen Bilder (JPEG, PNG, TIFF, etc.) mit NSSlider kontrollieren. Wie kann ich es tun? Hier ist ein Code geschrieben in AppDelegate.swiftWie stelle ich die Helligkeit mit NSSlider für NSImage Klasse über Swift ein?

@IBAction func importButton(sender: AnyObject) { 

    let uploadFile: NSOpenPanel = NSOpenPanel() 

    uploadFile.allowsMultipleSelection = false 
    uploadFile.canChooseFiles = true 
    uploadFile.canChooseDirectories = false 

    uploadFile.runModal() 
    let chosenPicture = uploadFile.URL  
    if(chosenPicture != nil) { 

     let pictureImport = NSImage(contentsOfURL: chosenPicture!) 
     imageWell.image = pictureImport 
    } 
} 

@IBAction func brightnessSlider(sender: AnyObject) { 

    //var alpha = sender... 
} 

Antwort

1

Versuchen Sie, diese

@IBAction func brightnessSlider(sender: NSSlider) { 

    var alpha = sender.minValue + (sender.doubleValue-sender.minValue)/(sender.maxValue-sender.minValue) 
    imageWell.alphaValue = CGFloat(alpha) 


} 

Berechnung für alpha wird einfacher, wenn Ihr minValue ist immer 0:

var alpha = sender.doubleValue/sender.maxValue