image

  • フォト Amazonギフト券
    ※この時計の時刻は、閲覧しているパソコンのものであり、必ずしも正確な時間とは限りません

検索

最近のトラックバック

無料ブログはココログ

« Youtube を扱える ruby API, Rubyで作るProlog処理系, etc... | トップページ | ピックアップ: jruby 1.0.0.RC2 ,Javaのみで記述するビルドツール, etc... »

2007-05-22

ruby cairo で svg を生成してみた

http://jp.rubyist.net/magazine/?0019-cairo
るびま 19号の cairo: 2 次元画像描画ライブラリ の記事中の最初のサンプルは
png を出力するものだが、これを svg 出力に変更してみた。

----------

cat hinomaru-svg.rb
# See http://jp.rubyist.net/magazine/?0019-cairo

require "rubygems"
require 'cairo'

width = 300
height = 200
radius = height / 3

surface = Cairo::SVGSurface.new('hinomaru.svg', width, height)
context = Cairo::Context.new(surface)

#
context.set_source_rgb(1, 1, 1)
context.rectangle(0, 0, width, height)
context.fill

#
context.set_source_rgb(1, 0, 0)
context.arc(width / 2, height / 2, radius, 0, 2 * Math::PI)
context.fill

context.show_page
surface.finish

---------

$ cat hinomaru.svg   
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="300pt" height="200pt" viewBox="0 0 300 200" version="1.1">
<defs>
<clipPath id="clip0">
  <rect width="300" height="200"/>
</clipPath>
</defs>
<g id="surface0" clip-path="url(#clip0)">
<path style="stroke: none; fill-rule: nonzero; fill: rgb(100%,100%,100%); opacity: 1;" d="M 0 0 L 300 0 L 300 200 L 0 200 Z M 0 0 "/>
<path style="stroke: none; fill-rule: nonzero; fill: rgb(100%,0%,0%); opacity: 1;" d="M 216 100 C 216 136.45079 186.45079 166 150 166 C 113.54921 166 84 136.45079 84 100 C 84 63.54921 113.54921 34 150 34 C 186.45079 34 216 63.54921 216 100 "/>
</g>
</svg>

jruby でも実行しようとおもったが、
gem install cairo で、mkmf が無いとかのエラーでインストールできない...
ruby の lib 以下には mkmf.rb はあるが、jruby の lib 以下に mkmf.rb が無い。

« Youtube を扱える ruby API, Rubyで作るProlog処理系, etc... | トップページ | ピックアップ: jruby 1.0.0.RC2 ,Javaのみで記述するビルドツール, etc... »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/184434/15167523

この記事へのトラックバック一覧です: ruby cairo で svg を生成してみた:

« Youtube を扱える ruby API, Rubyで作るProlog処理系, etc... | トップページ | ピックアップ: jruby 1.0.0.RC2 ,Javaのみで記述するビルドツール, etc... »

mokuji

2013年12月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

google

  • twitter
  • __
  • _
    Googleボットチェッカー

合わせて読む

  • 合わせて読む
    フィードメーター - katoy: cocolog あわせて読みたい

リンク