ruby/pureimage: 第2回岡山ruby会議lt
DESCRIPTION
第2回岡山Ruby会議のLTで発表した、 Ruby/PureImageの資料です。TRANSCRIPT
![Page 2: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/2.jpg)
2013.07.06 岡山Ruby会議02 2
自己紹介
西本 圭佑
keisuke_n
仕事
Webアプリ開発と支援
趣味
宇宙開発・鉄道情報のウォッチャ
たまに電子工作
![Page 3: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/3.jpg)
2013.07.06 岡山Ruby会議02 3
Ruby/Ruby/PureImagePureImage
![Page 4: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/4.jpg)
2013.07.06 岡山Ruby会議02 4
これ何?
画像処理ライブラリ
![Page 5: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/5.jpg)
2013.07.06 岡山Ruby会議02 5
こんな処理手順で
画像ファイル
画像ファイル出力
入力
画像処理 描画/フィルタ
Image
![Page 6: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/6.jpg)
2013.07.06 岡山Ruby会議02 6
こんなことができます
![Page 7: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/7.jpg)
2013.07.06 岡山Ruby会議02 7
こんなことができます
![Page 8: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/8.jpg)
2013.07.06 岡山Ruby会議02 8
こんなことやってます
線・ポリゴンの描画Bresenham(ブレゼンハム)
ポリゴンのフィリング
![Page 9: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/9.jpg)
2013.07.06 岡山Ruby会議02 9
こんなことやってます
画像・文字の合成透過画素のブレンド
![Page 10: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/10.jpg)
2013.07.06 岡山Ruby会議02 10
初出
2005年8月20日
Ruby勉強会@関西
![Page 11: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/11.jpg)
2013.07.06 岡山Ruby会議02 11
古いわりに機能少ないよね?
しばらく(6年ほど)放置
![Page 12: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/12.jpg)
2013.07.06 岡山Ruby会議02 12
これから
改良をしていく予定
![Page 13: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/13.jpg)
2013.07.06 岡山Ruby会議02 13
何がPureなの?
Rubyだけで記述
![Page 14: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/14.jpg)
2013.07.06 岡山Ruby会議02 14
なぜPureにこだわるの?
なぜNative使うの?
![Page 15: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/15.jpg)
2013.07.06 岡山Ruby会議02 15
Native面倒くせえ その壱
C/C++書くの
めんどくせえ
![Page 16: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/16.jpg)
2013.07.06 岡山Ruby会議02 16
Native面倒くせえ その弐
プラットフォームによって動いたり動かなかったり
![Page 17: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/17.jpg)
2013.07.06 岡山Ruby会議02 17
ということで
Pure Rubyに
こだわりました
![Page 18: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/18.jpg)
2013.07.06 岡山Ruby会議02 18
Pureって遅いんじゃ
Rubyが速くなればいいんじゃないの?
![Page 19: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/19.jpg)
2013.07.06 岡山Ruby会議02 19
現実に遅いよ
実装に工夫をする
![Page 20: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/20.jpg)
2013.07.06 岡山Ruby会議02 20
高速化 その壱
標準ライブラリをうまく使う
PNG出力にzlibを使う
配列にNArrayを使う
![Page 21: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/21.jpg)
2013.07.06 岡山Ruby会議02 21
高速化 その弐
フォントはビットマップフォントにする
![Page 22: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/22.jpg)
2013.07.06 岡山Ruby会議02 22
でも案外
Pure Rubyでも
なんとかなる
![Page 23: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/23.jpg)
2013.07.06 岡山Ruby会議02 23
ということで皆さん
ライブラリでもPureなコードを書こう
![Page 24: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/24.jpg)
2013.07.06 岡山Ruby会議02 24
Pureなコードを書くと
ポータブルになる扱いやすくなる
![Page 25: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/25.jpg)
2013.07.06 岡山Ruby会議02 25
あっ
Ruby/PureImageもよろしくね!
https://github.com/keisuken/pureimage
![Page 26: Ruby/PureImage: 第2回岡山Ruby会議LT](https://reader033.vdocuments.mx/reader033/viewer/2022042714/55615088d8b42a780d8b4e97/html5/thumbnails/26.jpg)
2013.07.06 岡山Ruby会議02 26
おわり
ご清聴ありがとうございました