블로그 이미지
JEEN

서울에 사는 꽃청년의 IT찌질모험기

Rss feed Tistory
IT 2011.05.14 23:57

blockdiag++ 와 앞으로의 문서화에 대한 고민...

 어제 (2011.5.13) Yokohama.pm #7 이 있었습니다.
 뭐 사실 지리적 특성 및 업무시간때문에 Yokohama.pm 에는 제대로 한번 참석해본 적이 없습니다. 대신  Shibuya.pm 에는 여러번 가본 기억이 있지만요. 하지만 이제부터는 도쿄에서의 생활은 바이바이 상태이기 때문에, USTREAM 과 공개된 슬라이드를 바탕으로 내용을 훑어보았습니다. 

 아무튼 어제 있었던 Yokohama.pm techtalk 에서 몇가지 주목하고 싶은 것 중에 하나가 
 sphinx + blockdiag series 였습니다. 시리즈의 구성마다 특성있는 다이어그램을 그릴 수 있게하는 그런  서비스입니다. 


  뭐 사실 가장 우왕~ 했던 부분은 이 시리즈 중에 seqdiag 입니다. 
  시퀀스 다이어그램을 아주 뽀대넘치게 만들어줍니다. 이런 다이어그램들은 SVG 로 브라우저에서 해석되어지기 때문에 SVG 해석이 불가능한 IE 에서는 아쉽게도 사용할 수 없겠네요.
 어제  TechTalk 에서 이 세션을 소개한 사람은 Sphinx 로 문서관리를 한다고 하는 군요. 글 뿐만이 아니라 이런 도식까지 포함해서 html,epub,pdf,latex 등 여러가지 포맷으로 변환가능하다고 합니다. (뭐 다른 것은 안되는 건 아니지만, Sphinx 에서 기본적으로 사용하는 reST 에는 여타 SVG 등을 그대로 embed 해서 쓰기 편하다는 군요.

  IE 에서 안된다는 것 때문에 그냥 무리해서 svg를 png 로 바꿔봤습니다만...

** Chrome 등의 SVG 지원 브라우저에서의 표시


** 무리해서 ImageMagicK 로 SVG 를 PNG 로 바꿨을 때...


 ... 일단은 ImageMagicK 를 이용한 변환작업에 상당한 시간이 걸리는 것과 함께... 살짝은 아쉬움도 남기도 합니다만, 그냥 뭐 이걸로 되었거니 하는 마음도 있습니다.
 
  2-3년전 쯤에 seqdiag 로 시퀀스다이어그램만을 만드는 서비스를 본 적이 있는데, 그게 아마...


 이었던 걸로 기억합니다. 예전에는 안그랬던 것 같았는데 최근에는 워터마크를 표시하고, 이를 제거하기 위한 유료플랜을 내세우는 것 같군요.

 아무튼 전 직장에서는 거의 손에 꼽을 정도의 사람만 Wiki 를 썼었고 (물론 전직장의 종업원수 역시 손에 꼽을 만 했지만..), 그 와중에 이런 시퀀스다이어그램이나 네트워크 구성도가 필요한 부분이 있었는데... [지금 알았던 것을 그때도 알았더라면...] 이라고 아쉬움이 남는군요.

 앞으로의 문서화에 있어서는 이렇게 일목요연한 도식을 겸하는 것도 좋은 선택이 아닐까 생각됩니다. 
신고
IT/Gears 2011.01.27 00:24

[ Kindle3 ] 킨들을 질렀습니다.


   지난 1월 12일에 질러서 1월 19일에 도착하더군요. 주문은 물론 Amazon.com 에서 해야했습니다.

  예전에 지인의 Kindle2 로 집에서 스캔뜬 책들을 어떻게 읽을 수 없을까 해서 돌려보았더니, 글이 조그맣게 나와서 도저히 못 읽겠다고 접었는데... Kindle3 에서는 나름 성능향상이 있었다고 해서 기대도 해보고, 요근래 눈이 너무 피곤한 감도 없잖아 있고, iPad 의 휴대성에 적잖은 실망을 했던지라...

  아무튼 책을 꾸준히 읽어야 된다라는 필사의 각오로 지난 12일에 마눌님 재가도 얻지 않고 낼름 질렀습니다.


  가격은 일본엔으로 1.4만엔 정도 했던 것 같습니다. 관세랑 배송료 등등해서요.
  아무튼 받자마자 탈옥해서 한글폰트핵하고 쓰니 전혀 문제가 없습니다.
  Instapaper 를 자주 애용했는데 이것도 이렇게 넓은 화면으로 보니까 제대로 읽히네요. :-)

  거기에 스캔떠놓은 여러 책들을 실제로 Kindle 에서 읽어보았는데 여전히 글씨가 작습니다. 한페이지에 꽉 들어
차지는 않는 것 같아서 억지로 Imagemagick 툴을 써서 상하좌우 여백을 덜어내니까 나름 읽기좋아졌습니다.

   7"면 어땠을까 하는 생각도 하기도 하는데... 아무튼 일단은 대만족입니다. 
   @free.kindle.com 을 이용한 무선배달(?)과 Calibre 는 정말 최고!
신고
IT/Perl 2009.01.05 15:14

[ Perl ] 간단한 그림파일 리사이즈 작업


 오픈을 대비해서 이런저런 준비를 하는 도중에 그림파일을 종류별로 바꿔야하는 일이 발생했습니다.
 이럴때는 Image::Magick 겠지 하고 모듈을 검색해본 결과 역시 "정답" 이었습니다.
 아쉽게도 Mac 에서는 설치를 실패했는데, 시간상 알아보지 못하고 그냥 우분투에서 aptitude 로 의존모듈등을 한꺼번에 설치해버렸습니다.

$ sudo aptitude install perlmagick

 작업은 간단합니다. 어떤 URL 의 HTML 컨텐츠 상의 그림파일을 뽑아서 URL 에 맞게 해당 디렉토리에 집어넣고, 그 파일을 불러와서 Imagic::Magick 로 리사이즈하면 되는 것 뿐입니다.
 
  1. use strict;
  2. use warnings;
  3. use Image::Magick;
  4. use LWP::Simple;

  5. my @column = qw/id blah1 blah2 blah3 html_content/;
  6. open my $fh, '<', 'file.csv' or die 'WTF?';
  7. while(<$fh>) {
  8.  chomp;
  9.  my $i = 0;
  10.  my @data = split ',', $_;
  11.  my %row = map { $_ => $data[$i++] } @column;
  12.  $row{html_content} =~ s/src="([^"]+)"/process($1)/gie;
  13.  # do something
  14. }
  15.  
  16. sub process {
  17.   my $url = shift;
  18.  
  19.   my ($dir, $name) = $url =~ /([/]+)¥/(.+¥.(?:gif|jpg))$/i;
  20.  
  21.   save_image($url, $dir, $name);
  22.   convert_image($dir, $name);
  23.   return convert_path($dir, $name);  
  24. }
  25.  
  26. sub save_image {
  27.   my ($url, $dir, $name) = @_;
  28.  
  29.   mkdir($dir) unless -d $dir;
  30.   my $content = LWP::Simple::get($url);
  31.   open my $file, '>', "$dir/$name";
  32.   binmode $file; # binmode 설정
  33.   print $file $content;
  34.   close $file;
  35. }
  36.  
  37. sub convert_image {
  38.   my ($dir, $name) = @_;
  39.  
  40.   my $image = Image::Magick->new;
  41.   $image->Read("$dir/$name");
  42.   $image->Resize(
  43.     width => 200,
  44.     height => 150,
  45.   );
  46.   $image->Write($name);
  47. }
  48.  
  49. sub convert_path {
  50.   my ($dir, $name) = @_;
  51.  
  52.   my $path = "http://blah.blah.jp/blah/image/$dir/$name";
  53.   return 'src="'.$path.'"';
  54. }

 작업한 perl 스크립트에서 간략하게 추려봤습니다. 역시나 단발성 작업이라서 그런지 패키지로 만들지 않았지만, 장기적으로 사용될 작업이라면 좀 더 깔끔하게 코드를 정리하는 것도 좋을 겁니다.
  Image::Magick 로는 리사이즈 말고도 이런저런 아름다운 일을 할 수 있으니, 그림조작을 위해서라면 반드시 참고해볼만 하다고 생각합니다. (다 아는얘기;;;)

 - CPAN : Image::Magick
신고
TOTAL 483,355 TODAY 6

티스토리 툴바