Markdown-Pod

 view release on metacpan or  search on metacpan

t/2011-12-07.mkd.t  view on Meta::CPAN

=head2 용량 줄이기

일단 프로그램 작성은 끝났습니다.
다만 실행해보면 갈무리되는 파일의 크기가 무척 크다는 것을 알 수 있습니다.
비트맵 형식은 압축을 하지 않기 때문에 일반적인 HD 해상도의 파일은 약 3MB,
그리고 그 이상의 해상도의 화면을 사용한다면 5MB는 가볍게 훌쩍 넘깁니다.
본격적으로 대량 캡쳐를 하려고 생각했는데, 이러면 좀 곤란하겠죠.
BMP 대신 PNG 파일 포맷을 사용해서 용량 문제를 해결하도록 하겠습니다.

BMP를 PNG로 변환하는 방법은 다양합니다.
CPAN의 L<GD 모듈|https://metacpan.org/module/GD>, L<Image::Magick|https://metacpan.org/module/Image::Magick>,
L<Imager|https://metacpan.org/module/Imager>는 물론이고 C<Win32::GUI> 모듈에 딸려 나오는
[Win32::GUI::DIBitmap][cpan-win32-gui-dbbitmap] 모듈을 사용하는 등
여러가지 방법이 있습니다.
다만 각각의 모듈은 모두 윈도우즈에 소소한 문제들이 있습니다.
C<GD> 모듈의 경우 BMP 포맷을 지원하지 않으며,
C<Image::Magick>는 따로 바이너리 라이브러리를 설치한 후 CPAN 모듈을
설치해야 하므로 초보자의 경우 접근이 어렵습니다.
또한 C<Imager>는 BMP를 지원하지면 결정적으로 윈도우즈에서
캡쳐할때 생성되는 BMP 형식(만)을 지원하지 않습니다.
마지막으로 C<Win32::GUI::DIBitmap> 모듈의 경우 ActivePerl의 경우 문제없이
사용이 가능하나 딸기펄 사용자의 경우 컴파일러 호환 문제로 설치되지 않아
사용할 수가 없습니다.

이 문제를 해결하는 가장 간단한 방법은 BMP를 PNG로 변환해주는 가벼운 유틸리티를
구해서 BMP 파일을 생성한 다음 바로 실행시켜 변환시키는 것입니다.
L<PNG 라이브러리 공식 홈페이지|http://www.libpng.org/pub/png/pngcode.html>에는 변환툴로서 가벼운

t/mkd/2011-12-07.mkd  view on Meta::CPAN

------------

일단 프로그램 작성은 끝났습니다.
다만 실행해보면 갈무리되는 파일의 크기가 무척 크다는 것을 알 수 있습니다.
비트맵 형식은 압축을 하지 않기 때문에 일반적인 HD 해상도의 파일은 약 3MB,
그리고 그 이상의 해상도의 화면을 사용한다면 5MB는 가볍게 훌쩍 넘깁니다.
본격적으로 대량 캡쳐를 하려고 생각했는데, 이러면 좀 곤란하겠죠.
BMP 대신 PNG 파일 포맷을 사용해서 용량 문제를 해결하도록 하겠습니다.

BMP를 PNG로 변환하는 방법은 다양합니다.
CPAN의 [GD 모듈][cpan-gd], [Image::Magick][cpan-image-magick],
[Imager][cpan-imager]는 물론이고 `Win32::GUI` 모듈에 딸려 나오는
[Win32::GUI::DIBitmap][cpan-win32-gui-dbbitmap] 모듈을 사용하는 등
여러가지 방법이 있습니다.
다만 각각의 모듈은 모두 윈도우즈에 소소한 문제들이 있습니다.
`GD` 모듈의 경우 BMP 포맷을 지원하지 않으며,
`Image::Magick`는 따로 바이너리 라이브러리를 설치한 후 CPAN 모듈을
설치해야 하므로 초보자의 경우 접근이 어렵습니다.
또한 `Imager`는 BMP를 지원하지면 결정적으로 윈도우즈에서
캡쳐할때 생성되는 BMP 형식(만)을 지원하지 않습니다.
마지막으로 `Win32::GUI::DIBitmap` 모듈의 경우 ActivePerl의 경우 문제없이
사용이 가능하나 딸기펄 사용자의 경우 컴파일러 호환 문제로 설치되지 않아
사용할 수가 없습니다.

이 문제를 해결하는 가장 간단한 방법은 BMP를 PNG로 변환해주는 가벼운 유틸리티를
구해서 BMP 파일을 생성한 다음 바로 실행시켜 변환시키는 것입니다.
[PNG 라이브러리 공식 홈페이지][home-png]에는 변환툴로서 가벼운

t/mkd/2011-12-07.mkd  view on Meta::CPAN

[img-03]:                   2011-12-07-3.png width=700

[img-01-original]:          2011-12-07-1.png
[img-02-original]:          2011-12-07-2.png
[img-03-original]:          2011-12-07-3.png

[activeperl]:               http://www.activestate.com/activeperl
[blog-owl0908]:             http://www.dormouse.pe.kr
[capture-source]:           http://www.nightowl.pe.kr/software/prtscrsave
[cpan-gd]:                  https://metacpan.org/module/GD
[cpan-image-magick]:        https://metacpan.org/module/Image::Magick
[cpan-imager]:              https://metacpan.org/module/Imager
[cpan-par-packer]:          https://metacpan.org/module/Par::Packer
[cpan-win32-api]:           https://metacpan.org/module/Win32::API
[cpan-win32-clipboard]:     https://metacpan.org/module/Win32::Clipboard
[cpan-win32-console]:       https://metacpan.org/module/Win32::Console
[cpan-datetime]:            https://metacpan.org/module/DateTime
[cpan-file-slurp]:          https://metacpan.org/module/File::Slurp
[cpan-win32-gui-dibitmap]:  https://metacpan.org/module/Win32::GUI::DIBitmap
[cpan-win32-gui]:           https://metacpan.org/module/Win32::GUI
[cpan-win32-guitest]:       https://metacpan.org/module/Win32::GuiTest



( run in 0.335 second using v1.01-cache-2.11-cpan-beeb90c9504 )