CLOSE SEARCH

HTML5 audio tag

HTML5를 지원하는 브라우저는 플러그인의 도움없이 오디오 파일을 재생할 수 있습니다. HTML5 자체적으로 mp3, ogg, wav 등과 같이 다양한 포멧를 지원하지만, 실제로 지원되는 포멧은 브라우저에 따라 달라집니다.

가장 기본적인 사용법은 src 속성을 통해 재생할 파일의 URL을 지정해 주는 것입니다.

웹 디자인에 활용할 수 있는 Placeholder 이미지 서비스

웹 프로젝트를 진행하면서 레이아웃을 구성할 때, 디자인이 완성되지 않았다면 임시 이미지로 그 자리를 채우게 됩니다. 이러한 이미지는 포토샵이나 다른 이미지 편집툴을 이용해서 하나하나 만들어서 사용할 필요가 없습니다. 이번 글에서 소개하는 두개의 사이트는 임시 이미지를 손쉽게 생성해주는 서비스를 제공합니다.

http://placehold.it

http://www.dummyimage.com

UIKit Dynamics #4 – UIAttachmentBehavior. for Bouncy UI

iOS 7의 메시지 앱을 보면, 이전 버전과는 달리 스크롤 속도에 따라서 버블의 위치가 유기적으로 변하는 것을 볼 수 있습니다. 마치 버블들이 스프링으로 연결된 것처럼 보이기도 합니다. UIKit Dynamics의 UIAttachmentBehavior는 Ease In, Ease Out과 같은 단조로운 애니메이션을 넘어서, 현실세계의 스프링 효과를 애니메이션으로 구현할 수 있도록 도와줍니다. 가장 기본적인 역할은 Dynamic Item과 특정 위치의 앵커를 연결하거나 Dynamic Item끼리 연결하여 상호작용하도록 하는 것입니다. 여기에 damping, frequency, length 속성을 통해 두 객체사이에 탄성을 추가할 수 있습니다.

UIKit Dynamics #3 – UICollisionBehavior

UICollisionBehavior를 사용하면 Dynamic Item 사이의 충돌 효과를 쉽게 구현할 수 있습니다. 복잡한 물리수식을 계산할 필요없이, 충돌 영역과 충돌을 처리할 Dynamic Item만 지정해 주면됩니다.

Collision Items

UICollisionBehavior가 충돌 효과를 적용하는 Dynamic Item들은 반드시 UIDynamicItem 프로토콜을 구현해야 합니다. 이 아이템들은 초기화 시점에 initWithItems: 메소드를 통해 추가되거나, 그 이후에 addItem: 메소드를 통해 추가될 수도 있습니다. removeItem: 메소드를 통해 원하는 아이템을 제거할 수도 있으며, 이 경우 제거된 아이템은 충돌 대상에서 즉시 제외됩니다.

UIKit Dynamics #2 – UIGravityBehavior. Galileo Galilei is coming to iOS

iOS 6의 뷰는 무중력 상태에서 지정된 위치를 둥둥 떠다니기만 했다면, iOS 7의 뷰는 갈리레오 갈리레이가 피사의 사탑에서 떨어뜨린 물체처럼 중력이 작용하는 방향으로 떨어집니다. 물론 실제로 떨어지는 것이 아니라 UIKit Dynamics가 제공하는 UIGravityBehavior 클래스를 통해 뷰에 중력백터를 설정하여 뷰가 질량을 가진 물체처럼 동작(에니메이션)하도록 하는 것입니다.

UIKit Dynamics #1 – More Realistic Animations in iOS 7

iOS의 애니메이션 기능은 정말 뛰어납니다. 특별히 어려운 소스코드를 작성하지 않고도 부드러운 애니메이션을 만들 수 있고, 사용자들은 이러한 에니메이션을 통해 멋진 시각적 피드백을 제공받습니다. 안드로이드나 윈도우 모바일 역시 에니메이션 기능을 제공하지만, 품질이나 개발 편의성 면에서 iOS의 기능을 따라오기는 힘들어 보입니다. 더욱이 이번 WWDC 2013에서 발표된 UIKit Dynamics와 Custom View Controller Transitions 기능으로 인해 에니메이션에 있어서만큼은  iOS가 이전보다 몇발 더 앞서가게 되었습니다. 이번 글에서는 UIKit Dynamics에 대해서 알아봅니다.

Javascript Encoding & Decoding

웹에서는 유니코드 문자를 그대로 사용할 경우 문제가 발생할 수 있으므로 적절히 인코딩해 주어야 합니다. 이러한 인코딩 방식을 퍼센트 인코딩(percent-encoding)이라고 합니다. 자바스크립트에서는 인코딩과 디코딩을 위한 내장함수를 제공합니다.

Text Kit : focus on Legibility and easy API #3

Characters vs Glyphs

Character와 Glyph는 모두 문자를 나타내는 용어이지만, 이 둘 사이에는 뚜렷한 특징이 있습니다. Character의 경우 저장된 문자 그 자체를 나타내며, 텍스트 킷에서는 NSTextStorage에 저장되어 있는 문자데이터를 나타냅니다. 이에 비해 Glyph는 저장된 문자에 폰트가 적용되어 실제로 화면에 출력되는 문자입니다. 그래서 Glyph는 적용된 폰트에 따라서 모양이 완전히 달라지게 됩니다.