tech day 2015 - fokus på fokus

Download Tech Day 2015 - Fokus på fokus

Post on 26-Jul-2015

402 views

Category:

Technology

5 download

Embed Size (px)

TRANSCRIPT

1. Fokus p fokus Robin Helly, .NET-utvecklare 2. Fokus p fokus Varfr blev det s krngligt att bestlla en fotobok? Robin Helly, .NET-utvecklare 3. Ordbok Egenskap Format 4. Varfr behvs ett bildredigeringsverktyg? Responsiva webbar Hgupplst vs normal upplsning Samma bild i olika sammanhang 5. Vad vore ett bra stt att hantera bilder p? Det ska finnas en bra verblick ver tillgngliga bilder Bilden ska bara behva laddas upp en gng och inte 1 gng/format Inget strre kunskapskrav fr att kunna hantera systemet All bildredigering ska bara behvas gras en gng och glla verallt Det ska finnas std fr responsivitet Det ska g snabbt och vara enkelt 6. Verktyget Listning ppning av bild Redigering av bild 7. Demo 8. Listning _client.Query() .OrderByDescending(t => t.DateAdded) .ToList(); 9. Listning _client.Query() .OrderByDescending(t => t.DateAdded) .ToList(); 10. Listning _client.Query() .OrderByDescending(t => t.DateAdded) .ToList(); 11. Listning _client.Query() .OrderByDescending(t => t.DateAdded) .ToList(); 12. Hmta formaten var imageFormats = _client.Query() .Where(p => p.SystemFormat == false) .ToList() .Select(format => _imageFormatService .GetOrCreateSystemFormatFor(format as ImageFormat, id)) .ToList(); 13. Hmta formaten var imageFormats = _client.Query() .Where(p => p.SystemFormat == false) .ToList() .Select(format => _imageFormatService .GetOrCreateSystemFormatFor(format as ImageFormat, id)) .ToList(); 14. Hmta formaten var imageFormats = _client.Query() .Where(p => p.SystemFormat == false) .ToList() .Select(format => _imageFormatService .GetOrCreateSystemFormatFor(format as ImageFormat, id)) .ToList(); 15. Hmta formaten var imageFormats = _client.Query() .Where(p => p.SystemFormat == false) .ToList() .Select(format => _imageFormatService .GetOrCreateSystemFormatFor(format as ImageFormat, id)) .ToList(); 16. Hmta eller skapa ett format if (matchingSystemIds.IsNullOrEmpty()) { systemId = CreateDefaultSystemFormatFrom(editorFormat); PersistFormatMapping(imageId, editorFormat.Id, systemId); } else { systemId = matchingSystemIds.FirstOrDefault(); } return _client.Query().FirstOrDefault(s => s.Id == systemId); 17. Hmta eller skapa ett format if (matchingSystemIds.IsNullOrEmpty()) { systemId = CreateDefaultSystemFormatFrom(editorFormat); PersistFormatMapping(imageId, editorFormat.Id, systemId); } else { systemId = matchingSystemIds.FirstOrDefault(); } return _client.Query().FirstOrDefault(s => s.Id == systemId); 18. Hmta eller skapa ett format if (matchingSystemIds.IsNullOrEmpty()) { systemId = CreateDefaultSystemFormatFrom(editorFormat); PersistFormatMapping(imageId, editorFormat.Id, systemId); } else { systemId = matchingSystemIds.FirstOrDefault(); } return _client.Query().FirstOrDefault(s => s.Id == systemId); 19. Hmta eller skapa ett format if (matchingSystemIds.IsNullOrEmpty()) { systemId = CreateDefaultSystemFormatFrom(editorFormat); PersistFormatMapping(imageId, editorFormat.Id, systemId); } else { systemId = matchingSystemIds.FirstOrDefault(); } return _client.Query().FirstOrDefault(s => s.Id == systemId); 20. Hmta eller skapa ett format if (matchingSystemIds.IsNullOrEmpty()) { systemId = CreateDefaultSystemFormatFrom(editorFormat); PersistFormatMapping(imageId, editorFormat.Id, systemId); } else { systemId = matchingSystemIds.FirstOrDefault(); } return _client.Query().FirstOrDefault(s => s.Id == systemId); 21. Hmta bilden med formaten var populateQuery = new MediaItemPopulationQuery { MediaFormats = systemFormats.ToList(), PublishIdentifier = _client.PublishIdentifier }; 22. Hmta bilden med formaten var populateQuery = new MediaItemPopulationQuery { MediaFormats = systemFormats.ToList(), PublishIdentifier = _client.PublishIdentifier }; 23. Hmta bilden med formaten var mediaService = _client.CreateChannel(); populateQuery = mediaService.PreparePopulateQuery(populateQuery); var query = new MediaItemQuery { Filter = { Id = { id } }, Populate = populateQuery }; return mediaService.Find(query); 24. Hmta bilden med formaten var mediaService = _client.CreateChannel(); populateQuery = mediaService.PreparePopulateQuery(populateQuery); var query = new MediaItemQuery { Filter = { Id = { id } }, Populate = populateQuery }; return mediaService.Find(query); 25. Hmta bilden med formaten var mediaService = _client.CreateChannel(); populateQuery = mediaService.PreparePopulateQuery(populateQuery); var query = new MediaItemQuery { Filter = { Id = { id } }, Populate = populateQuery }; return mediaService.Find(query); 26. Hmta rtt bildformat var editorFormats = _client.Query() .Where(f => AspectRatioFor(((ImageFormat)f)).Equals(ratioOriginal)) .ToList() .Select(f => (ImageFormat)f) .ToList(); 27. Hmta rtt bildformat var editorFormats = _client.Query() .Where(f => AspectRatioFor(((ImageFormat)f)).Equals(ratioOriginal)) .ToList() .Select(f => (ImageFormat)f) .ToList(); 28. Hmta rtt bildformat var editorFormats = _client.Query() .Where(f => AspectRatioFor(((ImageFormat)f)).Equals(ratioOriginal)) .ToList() .Select(f => (ImageFormat)f) .ToList(); 29. Uppdatera formaten var cropEffect = new CropEffect { Height = height, Width = width, X = x, Y = y }; foreach (var format in editorFormats) { var resizeEffect = new ResizeEffect { Height = format.Height, Width = format.Width, ResizeMode = ResizeMode.ScaleToFill }; var systemFormat = new ImageFormat(); systemFormat.Effects.Add(cropEffect); systemFormat.Effects.Add(resizeEffect); _imageFormatService.UpdateSystemFormatFor(systemFormat, editorFormat, id); } 30. Uppdatera formaten var cropEffect = new CropEffect { Height = height, Width = width, X = x, Y = y }; 31. Uppdatera formaten foreach (var format in editorFormats) { var resizeEffect = new ResizeEffect { Height = format.Height, Width = format.Width, ResizeMode = ResizeMode.ScaleToFill }; ... } 32. Uppdatera formaten foreach (var format in editorFormats) { ... var systemFormat = new ImageFormat(); systemFormat.Effects.Add(cropEffect); systemFormat.Effects.Add(resizeEffect); ... } 33. Uppdatera formaten foreach (var format in editorFormats) { ... _imageFormatService.UpdateSystemFormatFor( systemFormat, editorFormat, id); } 34. Varfr underlttar verktyget? Det ska finnas en bra verblick ver tillgngliga bilder Bilden ska bara behva laddas upp en gng och inte 1 gng/format Inget strre kunskapskrav fr att kunna hantera systemet All bildredigering ska bara behvas gras en gng och glla verallt Det ska finnas std fr responsivitet Det ska g snabbt och vara enkelt 35. Varfr underlttar verktyget? Det ska finnas en bra verblick ver tillgngliga bilder Bilden ska bara behva laddas upp en gng och inte 1 gng/format Inget strre kunskapskrav fr att kunna hantera systemet All bildredigering ska bara behvas gras en gng och glla verallt Det ska finnas std fr responsivitet Det ska g snabbt och vara enkelt 36. Tack! Robin Helly robin.helly@valtech.se