たまにド忘れするので、書くうちに覚えるだろうと。
my $num = 123456;
my $digit1 = $num – int( $num / 10 ) *10
図形をrotate する場合は普通に左下が始点だけど、
annotateのパラメータとしてrotateを使う場合は、
左のベースラインが基準になるので、微妙な位置に描かれてしまう。
ベースラインは文字の高さの12.5%の位置。つまり72ptなら
72 * 0.125 = 9
左下から9ptの位置になる。
しかしここを基準に回転させるので実際には、
72 - 9 = 63
63pt分、上にシフトさせてやれば希望の位置に収まる。
新しい環境を用意してます。
XML::Simpleはいつも怒られますね。
cpan> install XML::Simple
Running install for module XML::Simple
Running make for G/GR/GRANTM/XML-Simple-2.18.tar.gz
Is already unwrapped into directory /root/.cpan/build/XML-Simple-2.18
Makefile.PL returned status 65280
Running make test
Make had some problems, maybe interrupted? Won't test
Running make install
Make had some problems, maybe interrupted? Won't install
まぁ、よくわかんないので、yumのおまじないを唱えることにします。
perlのモジュール系でエラーが出たら、perl-[モジュール名]でインスコできることを最近知りました。
# yum install perl-XML-Simple
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
* base: ftp.nara.wide.ad.jp
* updates: ftp.nara.wide.ad.jp
* addons: ftp.nara.wide.ad.jp
* extras: ftp.nara.wide.ad.jp
base 100% |=========================| 1.1 kB 00:00
updates 100% |=========================| 951 B 00:00
addons 100% |=========================| 951 B 00:00
extras 100% |=========================| 1.1 kB 00:00
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package perl-XML-Simple.noarch 0:2.14-4.fc6 set to be updated
--> Processing Dependency: perl(XML::Parser) for package: perl-XML-Simple
--> Running transaction check
---> Package perl-XML-Parser.i386 0:2.34-6.1.2.2.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
=============================================================================
Package Arch Version Repository Size
=============================================================================
Installing:
perl-XML-Simple noarch 2.14-4.fc6 base 68 k
Installing for dependencies:
perl-XML-Parser i386 2.34-6.1.2.2.1 base 210 k
Transaction Summary
=============================================================================
Install 2 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 278 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): perl-XML-Simple-2. 100% |=========================| 68 kB 00:00
(2/2): perl-XML-Parser-2. 100% |=========================| 210 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing: perl-XML-Parser ######################### [1/2]
Installing: perl-XML-Simple ######################### [2/2]
Installed: perl-XML-Simple.noarch 0:2.14-4.fc6
Dependency Installed: perl-XML-Parser.i386 0:2.34-6.1.2.2.1
Complete!
わーい、わーい
XML::Simpleが遅いというか重いというか。
調べてみるとXML::LibXMLが便利らしい。
それなら使ってみようかと調べてみるが・・・
XML系モジュールのベンチマーク盗用記事しか見つからない。
まともに使い方を説明しているところが無かったので、ソースを読む羽目になる。
とりあえず、WCGのデータからLastUpdatedを取得する方法
my $parser = XML::LibXML -> new();
my $dom = $parser -> parse_file( $set{'target'} );
my $lastUpdated = ( $dom -> getElementsByTagName( 'LastUpdated' ) )[0] -> findnodes( '.' );
しかし命名法則としてXML::LibXMLはいいのだろうか。
Recent Comments