初めて投稿します松川と申します。Rubyは初心者で
あまりよくわかっていないのですがよろしくお願いします。

Ruby-1.6.5(mswin32)でpdflib-0.7を使用しています。
PDFクラスのサブクラスを定義したいと思うのですが
うまくいきません。

  irb(main):001:0> require 'pdflib'
  true
  irb(main):002:0> class PDF2 < PDF
  irb(main):003:1> end
  nil
  irb(main):004:0> p PDF.new
  #<PDF:0x2afc658>
  nil
  irb(main):005:0> p PDF2.new
  #<PDF:0x2afa4e0>                <-- ここがサブクラスにならない
  nil

pdflib.cを見てみるとクラスの定義部分は、

>  cPDF = rb_define_class("PDF", rb_cData);
>  rb_define_singleton_method(cPDF, "new", rbpdf_s_open, -1);
>  rb_define_singleton_method(cPDF, "open", rbpdf_s_open, -1);

となっています。

  cPDF = rb_define_class("PDF", rb_cObject);
  rb_define_private_method(cPDF, "initialize", rbpdf_s_open, -1);

ではいけないんでしょうか?

PDFクラスは継承して使うようなものではないという事なんでしょうか?
素人の考えで書いているのでとんちんかんな事を言っているかも知れませんが
どうぞよろしくお願いします。m(_ _)m


松川 慎