Самый простой способ - поместить свой UIImage
в UIImageView
и установить альфа там.
let image = UIImage(named: "imageWithoutAlpha")
let imageView = UIImageView(image: image)
imageView.alpha = 0.5
myButton.setBackgroundImage(image, forState: UIControlState.Normal)
Вот скрипт jQuery + PHP для загрузки изображения и его предварительного просмотра.
Первым шагом является определение пути изображения. JavaScript разрешено запрашивать элемент управления загрузкой для имени файла / пути, но (из соображений безопасности) различные браузеры показывают JS-движку разные вещи, чем они отображают пользователю - они, как правило, оставляют имя файла нетронутым, чтобы вы могли хотя бы проверить его расширение, но вы можете получить c: \ fake_path \
или что-то подобное, добавленное к имени файла. Попробовав это в различных браузерах, вы получите представление о том, что возвращается как реальный путь, а что подделывается и где.
Второй шаг - отображение изображения. Можно отображать локальные изображения, если вы знаете их пути, с помощью тегов img
с исходными URL-адресами file: //
, если браузер пользователя позволяет использовать file: //
] схема. (По умолчанию Firefox этого не делает.) Поэтому, если вы можете заставить пользователя сказать вам полный путь к изображению, вы можете хотя бы попытаться загрузить его.
Второй шаг - отображение изображения. Можно отображать локальные изображения, если вы знаете их пути, с помощью тегов img
с исходными URL-адресами file: //
, если браузер пользователя позволяет использовать file: //
] схема. (По умолчанию Firefox этого не делает.) Поэтому, если вы можете заставить пользователя сказать вам полный путь к изображению, вы можете хотя бы попытаться загрузить его.
Второй шаг - отображение изображения. Можно отображать локальные изображения, если вы знаете их пути, с помощью тегов img
с исходными URL-адресами file: //
, если браузер пользователя позволяет использовать file: //
] схема. (По умолчанию Firefox этого не делает.) Поэтому, если вы можете заставить пользователя сказать вам полный путь к изображению, вы можете хотя бы попытаться загрузить его.
JavaScript не имеет доступа к локальной файловой системе в целях безопасности, точка.
Я когда-либо видел только Java-апплеты, которые делают это, например, апплет загрузки изображений на Facebook. Обратной стороной подхода Java является то, что пользователю будет предложено доверять апплету перед его запуском, что является своего рода раздражением, но это позволяет апплету представить файловый браузер с превью изображений или делать более интересные вещи, например, позволяет пользователю для загрузки всего каталога.