Tag Archives: tip

Windows7과 타임캡슐의 연결이 잘 안될 때

최근에 Windows7을 설치하고 난 후에 Windows Vista에서도 아무런 문제없이 잘 사용하던 타임캡슐에 문제가 생겼습니다. 연결이 자꾸 끊기는 것은 물론이고, Windows7 -> 타임캡슐로 복사도 안되더군요.

검색해보니 해외에서도 펌웨어를 최신으로 업데이트 하고 난 후에 비슷한 증상을 겪었다는 사람들이 많았습니다. 최신 버전인 7.4.2의 문제로, 많은 사람들이 7.3.2로 펌웨어를 롤백하라고 권장하고 있었습니다.

7.4.2에서 7.3.2로 롤백하는 방법은 다음과 같습니다.
Continue reading

CSS Polygons – CSS로 다각형 만들기

일단 예제

다음의 도형들은 모두 CSS”만” 사용해서 그렸습니다. 이미지나 <canvas> 또는 VML과 같은 기술도 사용하지 않았습니다.

 

기본

다들 아시다시피 CSS에는 경계선을 그릴 수 있는 border 속성이 있고, 상하좌우 4개의 방향에 대해 굵기, 색상, 타입을 각각 지정할 수 있습니다. 예를 들어, theBox라는 아이디를 가진 엘리먼트의 왼쪽에만 빨간색 1px 굵기의 실선을 보여주고 싶다면 다음과 같이 작성합니다.

#theBox { border-left:1px solid red; }

기본적으로 CSS에서 다루는 영역은 사각형입니다. 그래서, 4개 변의 경계선은 다음과 같이 설정할 수 있습니다.

#theBox { border:1px solid red; }

그런데, 각각의 경계선이 만나는 지점은 어떤 모양으로 그려질까요? 확인하기 위해서 각각의 경계선 색깔을 달리하고 좀 더 크게 작성해보면 다음과 같은 모양을 얻을 수 있습니다.
경계선이 만나는 지점을 확인하세요

경계선이 만나는 지점을 확인하세요

보다시피, 각각의 경계선이 만나는 지점은 사선 형태를 이루고 있습니다. 슬슬 무슨 일이 일어날 것 같죠? ^^ 그 다음에는 내부 컨텐트를 없애보겠습니다.


이 상태에서 상단의 선을 없앱니다.


자… 이 상태에서 삼각형을 만들기는 쉽습니다. 좌우 경계선의 색상을 투명으로 만들어버리면 됩니다. 상단의 경계선처럼 없애지 않는 이유는 지금처럼 너비를 0으로 설정한 상태에서 좌우 경계선마저 없애면 전체 엘리먼트의 크기가 0이 되어 아예 화면에서 보이지 않기 때문입니다. 말보다는 눈으로 확인하는게 쉬울 듯 하여, 좌우 경계선을 아예 없애보았습니다.


화면에는 안나오지만 분명 존재하고 있습니다. -_-;;;
0이던 너비를 40px 정도로 줘봤습니다.


경계선이 다시 보이는 것을 확인할 수 있습니다. 다시 삼각형을 만드는 부분으로 돌아가서 좌우 경계선의 색상을 투명으로 만들어보겠습니다.


드디어 CSS만으로 삼각형을 만들었습니다!

응용

삼각형에서 너비를 조금 주면 사다리꼴을 만들 수 있습니다. 백문이 불여일견! 일단 보시죠!

그리고 상단을 남겨두고 하단을 없애면 반대 모양의 사다리꼴을 얻을 수 있습니다.

이 두개를 합치면 육각형을 만들 수 있죠.


색깔을 같이 맞추면 다음과 같이 보일 것입니다.


참고링크

아래 링크로 가시면 더 많은 예제를 볼 수 있습니다.

Gmail 사용 팁 한 가지

스팸때문에 일부러 새 계정을 만들어보셨나요? 개인 메일과 업무용 메일을 구분해서 사용하신 적은요? Gmail 을 이용하면 새 계정을 만드는 귀찮은 작업을 하지 않아도 됩니다.

팁은 간단합니다.

  1. account@gmail.com 이라는 계정은 account@googlemail.com 으로도 사용할 수 있습니다.
  2. account@gmail.com 의 account에 점은 몇 개가 있어도 상관없습니다.

두번째 항목에 대해 설명을 해보죠. 예를 들어, taegonkim@gmail.com 이라는 계정이 있다고 해보겠습니다. 이 계정이 있으면 아래에 열거된 주소들도 모두 똑같은 계정으로 메일이 옵니다.

a.dmin@gmail.com		a.dmin@googlemail.com
ad.min@gmail.com		ad.min@googlemail.com
...
admi.n@gmail.com		admi.n@googlemail.com

이게 끝은 아닙니다. 점의 갯수는 상관이 없다고 했었죠? a.d.m.i.n@gmail.com 으로도 메일이 정상적으로 배달됩니다. 물론, a.d.m.i.n@googlemail.com도 마찬가지입니다.

이런 기능을 활용하면 자신에게 온 메일을 “받는 사람”으로 분류하는 필터 규칙을 만들 수 있습니다. 스팸용 메일 주소라면 휴지통으로, 업무용 메일이라면 자동으로 라벨을 붙이게 할 수 있습니다. 개인정보를 유출하는 사이트가 어디인지 찾아낼 수도 있죠. :)

이런 건 미리 알려줘도 좋을텐데…
어쩌면 이런 불친절함이 구글의 매력일지도 모르겠습니다(사용자가 하나씩 찾아가는 재미!).

Visual Studio 2008 Express Edition에서 WTL 사용하기

Visual Studio 2008 Express Edition은 Microsoft 사에서 무료로 배포하는 IDE 입니다. 한글화도 잘 되어 있고, 무엇보다 무료라는 점이 참 마음에 들지만, MFC도 없고 SDK 조차 없어서 직접 설치/설정해야 하는 번거로움이 꽤 많습니다.

개인적으로는 MFC가 원래 마음에 들지 않았기 때문에, MFC가 없는 것은 불편하지 않았지만 설정을 직접 하는 과정이 무척 귀찮았습니다. 그 중에서도 얼마전부터 관심을 가지고 있는 WTL은 설정하는 과정이 다소 까다로워 기록도 할 겸해서 블로그에 남겨둡니다.

1. WTL 설치

우선 WTL을 소스포지에서 다운로드 받아 원하시는 폴더에 압축을 해제합니다. C:\WTL 도 좋고 C:\Program Files\WTL 도 좋고, WTL대신 WTL80을 사용하셔도 좋습니다. Azyu님이 기존의 스크립트를 수정해 작성하신 AppWizVC9.zip 파일을 다운로드 받습니다. WTL이설치된폴더\AppWiz\ 에 다운로드 받은 파일의 압축을 해제하면 setup90.js 와 setup90x.js 파일이 나타날 것입니다. 여기서 setup90x.js 를 탐색기에서 더블 클릭해서 실행하면 됩니다. 자세한 내용은 Azyu님 블로그의 글을 참고하세요.

2.  SDK 설치

당연히 SDK도 다운로드 받아 설치해야 합니다. 자세한 내용은 위키 피디아의 글을 참고하세요.

3. Trouble Shooting

- 컴파일 도중 ‘ATL.LIB’이 없다는 메시지가 나타나면…
프로젝트 -> 속성 -> (좌측에서)구성 속성 -> 일반을 선택하고, “ATL 사용” 항목의 값을 “ATL에 정적 링크”로 바꿉니다.

- ‘atlthunk.lib’ 파일을 열 수 없다는 메시지가 나타나면…
WTL폴더\include\atlbase.h 파일을 메모장 등의 텍스트 에디터에서 열고,

#define AllocStdCallThunk() __AllocStdCallThunk()
#define FreeStdCallThunk(p) __FreeStdCallThunk(p)

#pragma comment(lib, "atlthunk.lib")

부분은 삭제하고 삭제된 위치 바로 아래에 다음과 같은 내용을 추가한다.

#define AllocStdCallThunk() HeapAlloc(GetProcessHeap(), 0, sizeof(_stdcallthunk))
#define FreeStdCallThunk(p) HeapFree(GetProcessHeap(), 0, p)

IE의 텍스트박스 버그

얼마 전에 직장 동료가 알려준 버그입니다.

IE6~IE7까지 나타난다고 했던 것으로 기억합니다(IE8은 테스트를 못해봤습니다).
바로 아래의 이미지처럼 제 블로그 우측 상단의  검색어를 입력하는 텍스트 박스에서 “#” 다음부터 끝까지 드래그해서 글자를 선택해보세요.

'#' 뒤에서 시작합니다

'#' 뒤에서 시작합니다

문자열 끝까지 '드래그'해서 선택합니다

문자열 끝까지 '드래그'해서 선택합니다

잘 되시나요? ^^;;

이 현상은 문자열 첫 문자가 알파벳이나 숫자가 아니면 발생합니다. #뿐만 아니라 $ % ! ^ 공백까지 알파벳과 숫자 이외의 어떤 문자가 첫번째 문자여도 이 문제가 발생합니다(한글 등의 유니코드 문자는 예외인 듯 합니다).

IE는 참 신기합니다. ;;

덧// 노력해보았지만, 아직까지는 해결책도 없고 원인조차 알 수가 없었습니다.