Stretching imagini
Proprietatea Stretch controlează întinderea imaginii pentru a umple recipientul. Proprietatea Stretch ia următoarele valori, definite de enum Stretch.
Nici una. Imaginea nu este întinsă pentru a umple zona de ieșire. Dacă imaginea este mai mare decât zona de ieșire, aceasta este afișată în zona de ieșire și orice nu se potrivește este tăiată.
Umple. Imaginea este scalată în funcție de dimensiunea zonei de ieșire. Deoarece înălțimea și lățimea imaginii sunt scalate independent unul de celălalt, este posibil ca raportul de aspect original să nu fie păstrat. Aceasta înseamnă că imaginea poate fi deformată pentru a umple complet recipientul de ieșire.
Uniforma. Imaginea este dimensionată astfel încât să se potrivească complet în zona de ieșire. În acest caz, raportul de aspect este păstrat.
UniformToFill. Imaginea este scalată astfel încât să umple complet zona de ieșire. În același timp, rapoartele aspectului original sunt păstrate.
În exemplul următor, fiecare din enumerările Stretch disponibile este aplicată imaginii.
Figura următoare prezintă rezultatul exemplului și efectul diferiților parametri Stretch. aplicată imaginii.
Diferiți parametri de întindere
Desen cu imagini
Imaginile din aplicație pot fi desenate și cu ajutorul pensulei. Periile vă permit să desenați de la obiecte simple cu un singur color UI la obiecte cu seturi complexe de șabloane și imagini. Pentru a desena folosind imagini, utilizați ImageBrush. ImageBrush este un tip de TileBrush. definind conținutul său ca un bitmap. ImageBrush afișează o imagine, care este setată de proprietatea ImageSource. Puteți controla întinderea, alinierea și tigla imaginii, care evită denaturarea și creează șabloane și alte efecte. Figura următoare prezintă unele dintre efectele care pot fi obținute prin intermediul ImageBrush.
Periile de imagini pot picta peste forme, comenzi, text etc.
Următorul exemplu arată modul de utilizare a imaginii ca fundal al butonului cu ImageBrush.
Unele fișiere de imagini conțin metadate care descriu conținutul sau caracteristicile unui fișier. De exemplu, majoritatea camerelor digitale produc imagini care conțin metadate despre producător și modelul camerei folosite pentru capturarea imaginii. Fiecare format de imagine gestionează metadatele în felul său propriu, dar procesarea imaginilor WPF oferă o modalitate versatilă de a stoca și de a prelua metadatele pentru fiecare format de imagine acceptat.
Accesul metadate metadate sunt furnizate prin proprietatea unui BitmapSource obiect. Metadate returnează BitmapMetadata obiect. care include toate metadatele conținute în imagine. Aceste date pot fi conținute într-una sau mai multe scheme de metadate. WPF Image Processing acceptă următoarea schemă imagine metadate: EXIF formatul de fișier (fișier imagine schimbabil), text (date text PNG), IFD (director de fișiere imagine - directorul fișier imagine), IPTC (Consiliul Telecomunicații Press International - Consiliul Internațional de Telecomunicații) și Platforma extensibila metadate (XMP).
Pentru a simplifica procesul de citire a metadatelor, BitmapMetadata oferă mai multe proprietăți pe care le puteți accesa cu ușurință, de exemplu, Autor. Titlul și modelul camerei. Multe dintre aceste proprietăți numite pot fi, de asemenea, folosite pentru a scrie metadate. Suportul suplimentar pentru citirea metadatelor este furnizat de cititorul de interogări de metadate. Metoda GetQuery este utilizată pentru a prelua un cititor de interogări de metadate folosind un șir de interogări, de exemplu "/ app1 / exif /". În următorul exemplu, GetQuery este folosit pentru a obține textul stocat în locația "/ Text / Descriere".
Pentru a înregistra metadatele, se utilizează scriitorul de interogări pentru metadate. SetQuery primește un scriitor de interogare și stabilește valoarea necesară. În următorul exemplu, SetQuery este folosit pentru a scrie textul stocat în locația "/ Text / Descriere".