[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[mgp-users-jp 00771] 連続した図の ps 出力



引続きまして、寺尾@大阪学院大学情報 です。

別の話題なのでメールをわけました。

連続した図の出力の場合、
%center
%newimage -xscrzoom 30 "hoge1.jpg"
%cont
%newimage -xscrzoom 30 "hoge2.jpg"
%left
のようにして使っています。その時に、mgp2ps が出力する ps ファ
イルのなかで、これらの二つの絵が重なってしまうという問題に気
付きました。もちろん、対応する eps ファイルを作っておき、こ
れを貼りこむようにしています。

%center
%newimage -xscrzoom 30 "hoge1.jpg"
%cont
       << 空白 1 個分くらい
%cont
%newimage -xscrzoom 30 "hoge2.jpg"
%left

などとすれば間に空白が入り、重なりは回避されますが、どうも面
倒なので、コード(print.c)を見て、以下のようなパッチをあてて
みました。

(2000/11/27 の snap への差分です)

*** magicpoint-1.07a.snap-20001127/print.c      Mon Aug  7 14:50:28 2000
--- magicpoint-1.07a.snap-20001127.fix/print.c  Tue Dec  5 16:51:17 2000
***************
*** 918,932 ****
                if (mgp_flag & FL_VERBOSE)
                        fprintf(fp, "%% emit the content of imagepool\n");
                cp1 = imagepool[i].image;
!               if (!cp1) {
!                       fprintf(fp, "/xpos xpos%d def xpos ypos moveto\n",
!                               imagepool[i].target_text);
!                       continue;
                }
!               image_load_print(cp1->ctm_fname, cp1->ctm_numcolor,
!                       cp1->ctm_ximagesize, cp1->ctm_yimagesize, 0,
!                       cp1->ctm_zoomflag);
!               fprintf(fp, "%d setimgsize\n", imagepool[i].ysiz);      /*XXX*/
        }
        nimagepool = 0;
      }
--- 918,931 ----
                if (mgp_flag & FL_VERBOSE)
                        fprintf(fp, "%% emit the content of imagepool\n");
                cp1 = imagepool[i].image;
!               if (cp1) {
!                 image_load_print(cp1->ctm_fname, cp1->ctm_numcolor,
!                                  cp1->ctm_ximagesize, cp1->ctm_yimagesize, 0,
!                                  cp1->ctm_zoomflag);
!                 fprintf(fp, "%d setimgsize\n", imagepool[i].ysiz);    /*XXX*/
                }
!               fprintf(fp, "/xpos xpos%d def xpos ypos moveto\n",
!                       imagepool[i].target_text);
        }
        nimagepool = 0;
      }

こうすると上記の問題はとりあえず回避されました。が、少し余分
に "/xpos xpos%d def xpos... " の行が出力されてしまい、すこぅ
しですが、パフォーマンスを犠牲にし、かつpsファイルを大きくし
ています。したがって抜本的な解決にはなっていませんが、とりあ
えず連続した図がちゃんと別々に出るようになり、自分としては幸
せになることができました。

...
自分はいつも大学の一般教養の講義で、絵をたくさん張り付けたプ
レゼンを mgp で作成して仕事しています。powerpoint と違って、
中身が見れるのが本当にうれしくて仕方がありません。これからも
よろしくお願いします。

// TERAO Toru   Faculty of Informatics,                     //
//              Osaka Gakuin University(Lecturer)           //