Translate

2013년 6월 24일 월요일

[CSS] Relative value document.width when browser magnification (브라우저 화면을 확대/축소 했을 시 상대값으로 넓이 구하기)



문제(Problem):

브라우저의 화면을 확대 및 축소 시 document.width 의 축소된 상대값을 가져올 수 없다.
(document.width is not relative value document.width when Browser magnification)






방법(way):

document.documentElement.offsetWidth





예(Example):

브라우져의 화면을 확대하거나 축소한 후 가로 길이를 동적으로 움직여 보세요.
(browser magnification and adjust browser width)

document.width  => absolute value
0px



document.documentElement.offsetWidth  => relative value
0px
















[CSS] Browser Zoom In / Out (브라우저 줌/아웃)



<script>
var scale = 1;

function scaleIn() {
scale *= 1.25;
zoom(scale);
}

function scaleOut() {
scale /= 1.25;
zoom(scale);
}

function zoom(scale) {
var body = document.body;
body.style.zoom = scale;  // IE
body.style.webkitTransform = 'scale('+scale+')';  // Webkit(chrome)
body.style.webkitTransformOrigin = '0 0';
body.style.mozTransform = 'scale('+scale+')';  // Mozilla(firefox)
body.style.mozTransformOrigin = '0 0';
body.style.oTransform = 'scale('+scale+')';  // Opera
body.style.oTransformOrigin = '0 0';
}
</script>


<div onclick="scaleIn();">
Zoom In(*1.25)</div>
/
<div onclick="scaleOut();">
Zoom Out(/1.25)</div>





Example (click!!)

Zoom In(*1.25)
/
Zoom Out(/1.25)



참고: http://angeleyes.tistory.com/259

2013년 6월 14일 금요일

[OSX] 맥(mac) 전용 신도리코(sindoh) 프린터드라이버(printer driver)



신도리코의 프린터들은 OSX에서 정상적으로 작동하지 않는 문제가 있어서
(한 페이지를 출력했는데 알수 없는 글자들로 무한정 출력되어 나온다;;)

한참 찾아보니 사용할수 있는 방법이 있었다.
물론 현재 정상적으로 프린터 사용이 가능한 상태.


내 상태
OS: OSX 10.8.3 (Mountain Lion)
Printer: Ricoh Aficio 2002

3달전 Lion 에 설치했을 때도 정상적으로 사용이 가능했었다.




원문글
http://evolver.tistory.com/187



Linux Foundation 사이트로 가서
pxlmono, Foomatic, Ghostscript

이렇게 설치후 프린터 설정을 다시 잡으면 된당.
아래는 혹시나 나중에 링크 끊길 까봐 다운 받아서 다른곳에 올려 놓은것..
(OSX 10.3.X 버전용 - Lion, Mountain Lion 사용가능)

Printer driver download

gutenprint-5.2.9.dmg
pxlmono-1.9.dmg
foomatic-rip-4.0.6.230.dmg
gplgs-8.71.dmg




=======================================
- 2013.12.10 추가

회사에서 기존의 "Ricoh Aficio 2002" 가 고장나서 "Ricoh Aficio MP C3000" 으로 교체를 했다.
Ricoh 홈페이지에 가서 드라이버 다운받고 해도 정상적으로 되지 않아서 찾아보니

Linux Foundation 드라이버가 아직은 Mavericks 를 지원하지 않아서 발생한 문제로 확인..
링크


아.. Mavericks 용 드라이버가 나올때까지 기다려야 하는가..


=======================================
- 2014. 01. 17 추가
해당 프린터에 흑백만 지원되도록 설정이 되어있는지 흑백으로 설정을 해야 프린트가 가능하다.

신도리코 프린터 흑백(Grayscale) 설정하기 -> 링크






2013년 6월 13일 목요일

[CSS] Div vertical center 정렬 방법





꼼수이긴 하지만..

center 정렬하려는 div를 left 또는 top 을 50% 로 미뤄준 후에
margin 을 이용하여 해당 div의 절반값만큼 다시 땡겨오면 센터정렬 완성!!!










Div 엘리먼트의 크기가 동적이라면 다음을 참고하세요.
Centering Percentage Width/Height Div Elements (크기가 동적인 Div 센터정렬)



만일 모바일 웹을 한다면 다음과 같이 근사한 방법이 있다.
[CSS] Element(Div, Img etc..) 세로 가운데 정렬 시키기






2013년 6월 11일 화요일

[iPhone] iOS 7 beta download, upgrade



방법:
1. 일단 자기에게 맞는 버전의 ipsw를 구한다.
(외국 사이트를 이용하던가 아니면 업로드한 토렌트 에서 받으시면 됩니다.
 전 애플사이트에서 받았는데 개발자등록된 이메일이 있어야 합니다.
 인터넷에 잘 찾아보면 다운로드 할수 있다고 하는군요)
download site: http://goo.gl/rV9pA
torrent file: iOS7beta.torrent











2. OSX 에서 iTunes 의 '업데이트 확인' 버튼을 alt(option) 키와 같이 누른다.
   Windows 사용자는 ctrl이나 alt 나 아무버튼 누른채 '업데이트 확인' 버튼을 눌러보자.
  그럼 파일을 선택하는 창이 나온다.
  ipsw 를 선택 후 열기(확인)을 누르면 바로 업데이트 시작!!




PS.
아직 버그가 많습니다.
그리고 iPhone 4 에서 iOS 7 으로 올렸더니 엄청 느려졌습니다.
하지만 순정상태에서 wifi, bluetooth 등등 원터치로 할 수 있다는게 너무 좋네요.
화면은 당근 이쁘구요~ ㅎ



iOS 7 공식 사이트: http://www.apple.com/ios/ios7
해당 공식 사이트에서 어떻게 바뀌었는지 직접 확인해 볼 수 있습니다.
아이폰 이미지를 클릭하면 동적으로 움직입니다. 확인해 보세요.   :)








2013년 6월 4일 화요일

[Android Browser] 손가락으로 이동 후 떼었을 때 touchend event가 실행되지 않는경우

증상(Issue):
1. 클릭을 했을 경우에는 touchend Event가 정상적으로 실행이 되지만 손가락으로 누른 후 이동 후 손가락을 떼면 touchend 이벤트가 작동이 되지 않는문제
2. PC, 아이폰의 browser 에서는 정상적으로 되지만 안드로이드에서만 작동을 하지 않는다.
(Touchend event not fired if finger is dragged on the screen after touchstart)

원인(Cause):
1. Android Bug ;(
http://code.google.com/p/android/issues/detail?id=19827
http://code.google.com/p/chromium/issues/detail?id=152913



방법(Way):
touchmove event 에 다음을 추가한다.
e.preventDefault();




아래의 예제를 보고 직접 실험을 해볼 수 있다.
모바일버전에서는 blogger 자체기능으로 move 이벤트가 들어가 있어서 둘다 정상적으로 작동이 된다.
Android 단말기에서 PC버전에서 테스트를 하면 첫번째 예제는 작동하지 않는다.
(View this post to PC mode from Android browser)



실행되지 않음(X)

<div id="37934287826615485921" style="border: 1px solid red; height: 200px; width: 100%;">
</div>


<script>
function touchStart_37934287826615485921(e) {
this.innerHTML = 'start';

}
function touchEnd_37934287826615485921(e) {
this.innerHTML = 'end';
}
var testDiv = document.getElementById('37934287826615485921');
testDiv.addEventListener('touchstart', touchStart_37934287826615485921);
testDiv.addEventListener('touchend', touchEnd_37934287826615485921);
</script>















정상적으로 실행됨(O)

<div id="3793428782661548592" style="border: 1px solid blue; height: 200px; width: 100%;">
</div>


<script>
function touchStart_3793428782661548592(e) {
this.innerHTML = 'start';

}
function touchMove_3793428782661548592(e) {
e.preventDefault();
this.innerHTML = 'move';
}
function touchEnd_3793428782661548592(e) {
this.innerHTML = 'end';
}
var testDiv = document.getElementById('3793428782661548592');
testDiv.addEventListener('touchstart', touchStart_3793428782661548592);
testDiv.addEventListener('touchmove', touchMove_3793428782661548592);
testDiv.addEventListener('touchend', touchEnd_3793428782661548592);
</script>