현실감각 0% :: '컴퓨터 관련' 카테고리의 글 목록 (4 Page)

컴퓨터 관련 2013. 6. 4. 23:27

맥북을 쓰던 어느날 마주친 검은색 메세지박스(보이스 오버) 끄기...-_-;;;



아이폰 앱 개발용으로 구매한 맥북에어. iOS라는 녀석이 정말 최적화도 잘되어있고 windows와 비교하기 힘들만큼 인터페이스가 편리하긴 하지만, windows에 20년 이상 길들여진 나에겐 종종 단축키같은 세세한것에서 발목을 잡히는 경우가 발생한다. 그렇다고 windows를 깔아서 쓰자니 내 자존심이 허락하지 않는..ㅠㅠ

아무튼 이녀석으로 이런저런 뻘짓거리를 하고있던 중에 뭘 눌렀는지는 모르겠지만 무의식중에 windows 단축키를 눌렀던것 같은데 갑자기 아래 사진과 같은 검은색 툴팁(?) 정확히 뭐라고 하기 힘든 검정색 메세지박스 같은게 떠서 사라지지 않는 것이었다.




화면 한구석을 가려버리는건 둘째치고 자꾸 컨트롤이 지맘대로 움직이질 않나... 가뜩이나 익숙하지 않은 환경에서 엄청 거슬리던 녀석이었는데 더 큰 문제는 이놈이 뜨자마자 배터리가 광속으로 닳아 없어진다는 것. 이녀석의 정체는 '보이스 오버'라고 하는 시각장애인 또는 모니터를 주시하기 힘든 상황에서 음성으로 현재 선택한 컨트롤을 읽어주고 단축키로 접근할 수 있도록 도와주는 일종의 사용자 편의기능인데 이런녀석이 있는지는 당연히 몰랐고, 사운드를 꺼놔서 음성이 출력되지도 않는 상황이었기 때문에 뭐하는 놈인지 유추할 수도 없는 상황이었다.

이녀석을 끄고는 싶은데 명칭조차도 몰라 구글에 한참을 macbook turn off black messagebox 따위의 검색어로 검색하던 도중 나와 비슷한 상황에 놓인 한 맥유저의 질문글과 그 아래 댓글을 발견!! 아... 스피커만 한번 켜봤더라도... 내 1시간 30분..ㅠㅠ

고생한 것에 비하면 이녀석을 끄는 방법은 참 간단하다.


우선 시스템 환경설정 (톱니바퀴모양 아이콘)을 눌러 들어간 후..


시스템->손쉬운 사용(사람이 팔벌리고 있는 모양)을 클릭한다.



그럼 왼쪽에 VoiceOver라는 탭이 보이는데 그녀석을 클릭하면 VoiceOver 활성화에 체크가 되어 있는 것을 확인할 수 있다.



이녀석의 체크를 해제하면...끝-_-;;;



혹시라도 이런저런 단축키 누르다가 보이스오버가 떠서 나처럼 해메는 사람이 있을까봐(과연??) 쪽팔림을 무릅쓰고 포스팅...

아악!! 생각할수록 열받는다!!!



컴퓨터 관련 2013. 4. 23. 13:02

c#에서 PPT 슬라이드 파일 생성하기



C#에서 PPT 슬라이드 파일 생성하기


MS워드, 엑셀 등등 Office 파일을 C#을 이용하여 자동으로 생성하는 프로그램을 몇번 만들었는데, 이번엔 PPT를 자동으로 생성하는 프로그램을 만들게 되었다...ㅠㅠ 아 귀찮~@#$!%&$

PPT 파일 자체가 MS에서 만든놈이고 C#.NET 또한 MS에서 만든놈이니 MSDN 같은데 가면 다 있겠지만 워낙 찾기가 귀찮고 쓰잘데 없는 내용이 많아서 구글신님께 부탁했더니 괜찮은걸 발견했다. 다만 2003 이전버전(*.ppt)은 지원을 안하고 2007 이상(*.pptx)에서만 되는듯..


출처는 요기

http://www.free-power-point-templates.com/articles/create-powerpoint-ppt-programmatically-using-c/ (영문)

자세히 둘러본건 아니지만 이것 뿐만 아니라 이런저런 유용한 슬라이드 템플릿하고 관련 소스가 많이 있는 것 같으니 PowerPoint에 관심있다면 한번 훑어 보는 것도 좋을 것이다.


소스는 요기!


using Microsoft.Office.Interop.PowerPoint;
using Microsoft.Office.Core;

namespace XXXXX
{
    class hdd_CreatePPT
    {
        public void CreatePowerPointSlides()
        {
            Application pptApplication = new Application(); // 어플리케이션 생성

            Slides slides;      // 슬라이드 묶음(파일)
            _Slide slide;       // 낱장 슬라이드
            TextRange objText;  // 텍스트 오브젝트

            // 프레젠테이션 파일 생성
            Presentation pptPresentation = pptApplication.Presentations.Add(MsoTriState.msoTrue);

            CustomLayout customLayout = pptPresentation.SlideMaster.CustomLayouts[PpSlideLayout.ppLayoutText];

            // 새 슬라이드 생성
            slides = pptPresentation.Slides;
            slide = slides.AddSlide(1, customLayout);

            // 타이틀 추가
            objText = slide.Shapes[1].TextFrame.TextRange;
            objText.Text = "제목입니당";
            objText.Font.Name = "Gulim";
            objText.Font.Size = 32;

            objText = slide.Shapes[2].TextFrame.TextRange;
            objText.Text = "1번째줄\n2번째줄\n3번째줄";

            slide.NotesPage.Shapes[2].TextFrame.TextRange.Text = "여기는 슬라이드 설명쓰는곳입니당~(원문출처: http://fppt.com)";

            pptPresentation.SaveAs(@"c:\ppttest.pptx", PpSaveAsFileType.ppSaveAsDefault, MsoTriState.msoTrue);
            //pptPresentation.Close();
            //pptApplication.Quit();
        }
    }
}





퍼온 소스이지만 그냥 카피 앤 페이스트 하기 미안해서 출력문만이라도 살짝 바꿔보았다.

사용하는법을 간단하게 설명하자면.. 우선 Microsoft.Office.Interop.PowerPoint.dll하고 Microsoft.Office.Interop.Word.dll 파일을 참조한다. Microsoft.Office.Interop.PowerPoint.dll은 이해가 되는데 왜 Microsoft.Office.Interop.Word파일까지?? 라고 물을 수 있는데, 그 이유는 MsoTriState 이녀석을 사용하기 위해서는 Microsoft.Office.Core를 참조해야 하고 해당 네임스페이스가 Microsoft.Office.Interop.Word.dll에 포함되어 있기 때문이다.

그리고 밑에 나오는 소스들... 소스 자체는 상당히 간단하다. Slides는 슬라이드 파일을 의미하고 Slide는 각 페이지를 의미하는것 같다. 그리고 TextRange는 글상자(?) 뭐였지.. 아무튼 글을 쓰기 위해 설정하는 그 점선의 사각형을 의미하는듯 하다. Shapes[1], [2]를 보건데 글상자가 만들어진 순서 등에 따라 배열 형식으로 구성되어 있음을 유추할 수 있다. 다만 글상자의 각 번호를 알기 위해서는 직접 뿌려보는 작업을 한번 해봐야 할듯 싶다.

가져다 쓰는것들이 다 그렇듯이 일단 오브젝트를 선언하고 TextRange에 글 입력하고 폰트 설정하는 것이 끝..;;;

사진 넣는법이나 TextRange의 위치를 변경하는 소스도 있었으면 더 좋았을텐데 아쉽다. 뭐 아래 Related posts에 관련 링크가 달려있으니 시간날때 한번 둘러봐야겠다.






컴퓨터 관련 2012. 12. 27. 19:42

[안드로이드] 가슴 컵 사이즈 측정 앱



[안드로이드] 가슴 컵 사이즈 측정 앱...-_-;;


8월이었나 9월이었나... 딩굴딩굴거리다가 갑작스레 떠오른 아이디어! 바로 여성 가슴의 컵 사이즈를 측정하는 어플을 만들어 보면 어떨까 하는 생각에 c#으로 끄적끄적 거려 대충 프로그램을 만들어 본 적이 있었다. 나 변태 아님...-_-;; 아무튼 이녀석을 다 만들고 자랑/질문할겸 지금은 오고가는사람이 거의 없는 DC 프갤에 올렸었는데 평균 조회수 200명이 안넘는 이곳에서 2000명씩이나 들어오는 나름 괜찮은 반응!?ㅋ

그러던 와중에 바쁜일들이 겹쳐서 이녀석을 앱으로 만들겠다는 계획은 어느새 짬되어버리고... 연말이 와서 딩굴딩굴하다가 다시 생각나서 부랴부랴 만들어봤다.

일단 최초 계획은  영상처리와 비전기술을 이용해 촬영한 사진을 자동 분석해서 결과물을 출력하는 것이었는데, 맨살(-_-;;;)이나 단색의 옷을 입은 경우에는 어느정도 좋은 결과가 나왔지만, 약간이라도 패턴이 들어가 있는 옷을 입은 사진을 이용하면 전혀 엉뚱한 결과가 나오기 일수.. 그래서 일단 수동으로 가슴 위아래를 직선으로 긋고 그 직선의 길이를 이용해서 가슴 컵의 사이즈를 산출하는 방법만 적용하였다. 컴퓨터로 영상처리를 하면 어떻게든 할 수 있을텐데 안드로이드로는 아직 openCV조차 깔지를 못하고 있다..;


뭐 아직 완성단계의 앱은 아니고 한창 테스트중이다.(한 70% 정도 완성된듯.) 그래서 디자인도 엉망..ㅋ 옵티머스 시리즈에서는 그럭저럭 잘 돌아가는것 같은데 갤럭시 시리즈에서는 이상하게 사진만 찍으면 자꾸 반시계방향으로 도는데 도대체 이유를 알 수가 없다.ㅠㅠ 안드로이드로 기껏해야 회사 디비 접속해서 데이터나 확인하는 앱따위나 만들다가 사진도 찍고, 약간의 그래픽작업도 들어가는 앱을 만들려니 머리가 뽀개질것 같음..ㅠ 이 문제 해결하는 방법 아시는 분 있음 헬프..ㅠ


뭐 자잘한 버그는 차츰 수정하도록 하고 일단 공개-_-;



구글 플레이스토어 

https://play.google.com/store/apps/details?id=com.chabert.cupsize



아래 더보기를 클릭하면 개발중에 작성한 사용 설명이 나옴!