Moodle開発者フォーラム

pdf2submissionをとりあえず公開します

 
画像 Toshihiro KITA
pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
いくつかの学会で発表していました、pdf2submissionブロックをとりあえず、
http://t-kita.net/tmp/pdf2submission.zip
に置きました。
# サイズが12MBもあるのは、同梱の TCPDF のせいです。
pdf2submission とは何か? については、添付PDFファイルをご覧ください。

英語のドキュメントを書く時間が取れたら、Plugins にも公開したいと思います...

Moodle 1.9.x で動きます。 Moodle 2.x には未対応です。
blocks/ の下にインストールしてください。
pdfscan.php の冒頭で、いくつかの変数を指定する必要があります。
# それに対応するコマンドのインストールも。

production server で動かすときは、バックアップを取った上で、充分注意して使ってみてください。

分からないところはいつでもお尋ねください。
バグもみつかったら、お知らせくださると嬉しいです。
# いまのところ、設定画面で、invisible to students が visible にできない、
# などのバグがあります。
 
最大評点: お役立ち度: ★★★★★★★ (3)
1997年の頃の写真です
Re: pdf2submissionをとりあえず公開します
グループ Translators

「飛ぶノート」http://www.carrier-port.jp/mahara/view/view.php?id=783

のMoodle版ですね! 凄い.これはアピールしますね.

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
興味を持ってもらってありがとうございます。

今日のCLE研究会(帝京大学)でもこの発表をします。
http://www.sigcle.jp/index.php?%E7%AC%AC5%E5%9B%9E%E7%A0%94%E7%A9%B6%E4%BC%9A#edab18df

画像 Seiji Morino
Re: pdf2submissionをとりあえず公開します
 

これはすごい!

早速試してみます!

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
使っていただいて思ったことや問題点などを是非お教えください。

レンタルサーバ heteml で使うためのインストールマニュアルを作成しているところです。
画像 naomichi ogitsu
Re: pdf2submissionをとりあえず公開します
 

おぎつです

レンタルサーバ hetemlでMoodle2.6.2+を使用しています

pdf2submission(2012/09/10)を導入しましたが

pdf2moodleホルダのpdfsホルダに「pdfファイル名」のホルダと、その下に「burst」ホルダが作成されるまでは動作しました

それ以降の動作のための設定方法が不明です

「レンタルサーバ heteml で使うためのインストールマニュアルを作成」

は動作していますでしょうか

設定方法についてアドバイスをいただければ幸いです

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
> 「レンタルサーバ heteml で使うためのインストールマニュアルを作成」
すみません。すっかり忘れてしまっていて、作成できていません...
それに、当初に思った以上に heteml で動作させるのは難しそうです。

近頃は、Moodleのバージョンが上がるにしたがい、heteml で Moodle自体、インストールや動作させるのが難しくなってきている、というのが私の印象です。
https://moodle.org/mod/forum/discuss.php?d=261995#p1142043
にも書いたように、 どこかのVPSサーバでMoodleの運用を行うのが良いと思います。 その方が、pdf2submission も動作させやすいと思います。

どうしても heteml でやってみられるのであれば、 まずは、ssh ログインしたときに、
zbarimg
pdftk
のコマンドを入力して実行できるようにしないといけません。それには、コマンドのソースをどこかから取得してビルドする必要があります。
# ただ、私の見た範囲では、 heteml で gcc/g++/cc/c++ は実行出来ないようですので、結局無理かもしれません。
 
最大評点: お役立ち度: ★★★★★★★ (1)
画像 naomichi ogitsu
Re: pdf2submissionをとりあえず公開します
 

おぎつです

そうですか

zbarimg

pdftk
のコマンドを入力して実行できるようにしないといけません。」

この部分のやり方が不明でしたが、やはり無理ですね

「どこかのVPSサーバでMoodleの運用を行う」が必要ですね

heteml での運用に、いろいろ不都合も見え始めましたので、将来的にも引越しを考慮に入れます

ありがとうございました


画像 naomichi ogitsu
Re: pdf2submissionをとりあえず公開します
 

Toshihiro KITAさまへ

おぎつです

再度の質問ですが

zbarimg、pdftkのコマンドを入力して実行できるようにしないといけません。」

ですが、heteml のマニュアルを見ていたところ

SSH のご利用方法

各種 SSH ソフトの設定方法

Git 利用法 の ローカルからhetemlにpushする

あたりからできそうな気がしたのですが無理ですかね

この辺の知識が乏しく、判断できません


「それには、コマンドのソースをどこかから取得してビルドする必要があります。」

zbarimgについては

http://zbar.sourceforge.net/download.html

から

pdftkは

https://www.pdflabs.com/tools/pdftk-server/#download

のCentOS用

からでよいと思うのですが、あっていますか

そのあとをどうするのかが、解っていません


画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
おそらくソースからのビルドをされたことがないようですので、説明が難しいのですが、同じLinuxであっても、カーネルのバージョンやインストールされているライブラリ等が違うと、ビルドされたバイナリプログラムが動作したりしなかったりします。

(Mac用のアプリをWindowsにコピーして、ダブルクリックしても動作しないのと同じようなものと言えば分かるでしょうか)

私が使っている heteml のサーバを見てみると Linux カーネルが 2.6.9 のようです(CentOSなのか、違うのかは分かりません)ので、これに合うように、どこかのマシンで(static link するなどして)ビルドをしてから、 heteml サーバに Git や SCP や ftp などでバイナリを転送すれば動作する可能性はあります。が、私もそういうことを試したことがないので、どれほど簡単にできるものなのか、ちょっと予測できないです。


 
最大評点: お役立ち度: ★★★★★★★ (1)
画像 naomichi ogitsu
Re: pdf2submissionをとりあえず公開します
 

荻津です

Toshihiro KITA様へ

素人にもわかりやすく説明していただきありがとうございました

納得いたしました


画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

いつもお世話になっております。村上です。
素晴らしいブロックの公開、ありがとうございます。

早速試そうと思い、導入を試みていますが
私の設定が不十分であるようで正常に動作をしておらず
書き込みをさせていただきました。

1.pdfscan.phpでinputfolderを設定
2.pdftkコマンド、zbarimgコマンドのインストール
3.pdf2submissionブロックでQRコード付きPDFが作成出来ますので
 PDFを作成して印刷。
4.コースに参加させたユーザに配布して、手書きのプリントを回収
5.PDF化が出来るスキャナで手書きプリントを回収。
6.回収したPDFを1で設定したinputfolderにアップロード
7.cronのジョブで処理を実行

という流れで処理が実行出来ると解釈しております。
仮にアップロードしたPDFファイルをaaa.pdfとした場合、
inputfolder内には

inputfolder/aaa/burst/ と作成されており、
burstフォルダの中には何もファイルが入っていない状況です。
ソースファイルを見ていると、burstフォルダに分割されたpdfファイルが
作成されると思いますが、出来ていない状況です。

公開していただき、質問するのも失礼かと思いますが、
上記の設定に関して、不備がありますでしょうか?

宜しくお願い致します。

Moodleのバージョンは1.9.10と1.9.14で試しています。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
お試しいただき嬉しいです。ありがとうございます。

pdfscan.php の冒頭で $warning_mailto= に設定したメールアドレスに、
pdfファイルを処理している途中経過などが送られてきていますか?
もし送られてきているなら、そのメールの中身を見せてもらえますか。
(私に直接メッセージで送ってもらってもいいです。)

pdftk コマンドによる、pdfファイル分割がうまくできていない可能性がありますが、
pdftk コマンドを手動で

pdftk ファイル名 burst

のように実行すると、今回処理したいPDFファイルはページ毎に分割されますでしょうか。


また、Apacheのログに、関係ありそうなPHPのエラーは残っていますでしょうか。

画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

早速のご返信ありがとうございます。村上です。
お忙しい中、本当に申し訳ありません。

早速いただいた情報で調べてみました。

[ pdf2submission ]もしくは[ pdf2submission(in progress..) ]
というタイトル名で$warning_mailto=に設定したメールアドレスに
メールが届きますが処理経過などは表示されずに
[ $mailmsg ]で表記したメッセージがメール本文に表示されています。

メールで書かれている様な処理経過は送られてきていませんでした。

質問させていただく前にソース内容から手動でも処理を実行していますが
手動でしたら分割されておりますが、サーバのログを見ていますと以下の
エラーが発生していました。

PHP Strict Standards:  Declaration of FPDF::_putstream() should be compatible with that of TCPDF::_putstream() in moodle/blocks/pdf2submission/fpdi/fpdi2tcpdf_bridge.php on line 163, referer: http://******/moodle/course/view.php?id=2
[Mon Oct 24 18:33:19 2011] [error] [client IPアドレス] PHP Strict Standards:  Declaration of FPDF_TPL::AddPage() should be compatible with that of TCPDF::AddPage() in moodle/blocks/pdf2submission/fpdi/fpdf_tpl.php on line 449, referer: http://******/moodle/course/view.php?id=2
[Mon Oct 24 18:33:19 2011] [error] [client IPアドレス] PHP Strict Standards:  Declaration of FPDF_TPL::SetFont() should be compatible with that of TCPDF::SetFont() in moodle/blocks/pdf2submission/fpdi/fpdf_tpl.php on line 449, referer: http://******/moodle/course/view.php?id=2
[Mon Oct 24 18:33:19 2011] [error] [client IPアドレス] PHP Strict Standards:  Declaration of FPDF_TPL::Link() should be compatible with that of TCPDF::Link() in moodle/blocks/pdf2submission/fpdi/fpdf_tpl.php on line 449, referer: http://******/moodle/course/view.php?id=2
[Mon Oct 24 18:33:19 2011] [error] [client IPアドレス] PHP Strict Standards:  Declaration of FPDF_TPL::Image() should be compatible with that of TCPDF::Image() in moodle/blocks/pdf2submission/fpdi/fpdf_tpl.php on line 449, referer: http://******/moodle/course/view.php?id=2

以上、宜しくお願い致します。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
> [ $mailmsg ]で表記したメッセージがメール本文に表示されています。

という部分がちょっと良く分かりませんが...
うまく処理が進んだ場合は、

pdfscan.php, gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg -r200 -sOutputFile=/tmp//pdfscan14e798162b356c.jpg -dFirstPage=1 -dLastPage=1 /home/scanc5000//20110921151001687/burst/pg_0001.pdf, convert -blur 2 /tmp//pdfscan14e798162b356c.jpg /tmp//pdfscan24e798162b3958.jpg, /usr/local/bin/zbarimg -q --raw /tmp//pdfscan24e798162b3958.jpg, (424,23096,2011-58-01427,114l2011), // userid:23096,asno:424,2011-58-01427,114l2011,pdfscan.php, gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg -r200 -sOutputFile=/tmp//pdfscan14e798166d2be8.jpg -dFirstPage=1 -dLastPage=1 /home/scanc5000//20110921151001687/burst/pg_0002.pdf, convert -blur 2 /tmp//pdfscan14e798166d2be8.jpg /tmp//pdfscan24e798166d2fd3.jpg, /usr/local/bin/zbarimg -q --raw /tmp//pdfscan24e798166d2fd3.jpg, (424,22599,2011-58-01427,112l2012), // userid:22599,asno:424,2011-58-01427,112l2012,
...
のような感じのメールが送られてくるのですが、そういう内容でしょうか。

> サーバのログを見ていますと以下のエラーが発生していました。
このエラーは、QRコード生成に関係するライブラリのエラーのようです。
QRコードが印刷されたシートが生成できているのであれば、とりあえず問題ないと思います。

burst フォルダの中に、 cat というフォルダや splitdone というファイルは出来ていますか。

pdfscan.php の
$convert_command= "convert";
$gs_command= "gs";
$pdftk_command= "pdftk";
を、すべて、パス名を省略せずに、
$convert_command= "/usr/なんたら/convert";
のように書いてみるとどうでしょうか。
画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

おはようございます。返信ありがとうございます。

質問をさせていただく前に色々とソースファイルを触っていた為
新しくMoodleを構築して、もう一度入れなおしてから、
pdfscanのパス設定をフルパスで記述する事で正常に動作しました。

処理内容がかかれたメールも来て、burstフォルダ以外にも
pdfファイルが分割されて課題モジュールにアップロードされていましたので
正常に動いていると思います。

こちらの不備でお騒がせしました。
後はinputfolderへのアップロードを複数のユーザに行わせた際の
セキュリティや運用に関して考えながら活用させていただきたいと思います。

本当に質問に答えていただいてありがとうございました。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
動作したようで、何よりです。

使ってみて分かった問題点や機能の要望などありましたら、
是非お聞かせください。
画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

ありがとうございます。

検証も兼ねて、同じ手順で作業をしていると
サーバのエラーログの中で以下のエラーが表示されており、
今回の処理でネックになっていたのではないかと思います。

pdftk: /***/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libgcj.so.7rh)
pdftk: /***/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)

以下のlnコマンドでシンボリックリンクを行う事で
再度cronジョブを実行すると、処理が行われていました。

ln -sf /lib/libgcc_s.so.1 /***/lib/libgcc_s.so.1

以上、宜しくお願い致します。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
> 以下のlnコマンドでシンボリックリンクを行う事で
> 再度cronジョブを実行すると、処理が行われていました。

ええと、これはコマンドラインで手動で pdftk を実行したときは問題なく実行できて、
Moodleのcronジョブの中で pdftk を実行したときは上記のエラーで実行できていなかったようだ、
ということでしょうか。

私はあまりそういうことは経験がないのですが、両者が違うのは、
環境変数LD_LIBRARY_PATH の設定が異なるなどの問題なんでしょうか。
画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

KITA様、返信ありがとうございます。

pdftkコマンド自体は手動で実行出来ていました。

cronジョブを実行した際にはpdftkの処理は行われておらず
前の投稿に記したpdftkのエラーが表示されており、
もちろんpdfファイルも分割はされていませんでした。

phpscan.phpのパス設定を検証のために初期の記述に戻して
cronジョブを動かしても、まだ動いていませんでした。

$zbarimg_command= "/usr/local/bin/zbarimg ";
$convert_command= "convert";
$gs_command= "gs";
$pdftk_command= "pdftk";

サーバのログを確認するとpdftkのコマンドのエラーが表示されていましたので

pdftk: /***/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libgcj.so.7rh)
pdftk: /***/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)

シンボリックリンクを行ったあとでcronジョブを動かすと動作しました。
# ln -sf /lib/libgcc_s.so.1 /***/lib/libgcc_s.so.1


手動実行 OK
パス初期設定+cronジョブ実行 NG
パス初期設定+シンボリックリンク+cronジョブ実行 OK

上記の状況からシンボリックリンクが関係しているのではないかと思いました。

シンボリックリンクは環境の違いによるものだと思います。
当方、CentOS5.6+LAMPP環境で検証を行っていますので
その為にシンボリックリンクが必要になったと思います。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
ご説明ありがとうございます。

手動実行 OK
パス初期設定+cronジョブ実行 NG
パス初期設定+シンボリックリンク+cronジョブ実行 OK

ということは、やはり、必要なライブラリのロードが、cronジョブ実行時にはできていなかった
ということですね。

# 私の所も CentOS5.6 ですが、このような問題は特に生じなかったので、ちょっと不思議です。

おやりになられたように、シンボリックリンクを作るのが一番簡単な解決方法だと思います。

ちなみに、pdftk は yum install pdft を実行してインストールされましたでしょうか。
それとも、ソースコードからビルドされたでしょうか。

画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

pdftkに関しましては公式サイトから
rpmを持ってきて、インストールしています。

画像 Toshihiro KITA
Re: pdf2submissionをとりあえず公開します
グループ Particularly helpful Moodlersグループ Translators
了解です。

rpm コマンドで直接インストールするよりも、
yum install pdftk
でインストールする方が問題が少ないと思うので、もし今度、別のサーバで
使われるときは、このように yum でインストールしてみてください。その際、
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge?action=show&redirect=Repositories%2FRPMForge#head-5aabf02717d5b6b12d47edbc5811404998926a1b
に書いてあるように、rpmforge リポジトリを見にいくように設定しておく必要があります。
(rpmforge リポジトリを見にいくようにしておくと、他の様々なパッケージも yum コマンド一発でインストールできて便利です。)
 
最大評点: お役立ち度: ★★★★★★★ (1)
画像 Yuuki Murakami
Re: pdf2submissionをとりあえず公開します
 

了解しました。

今回はyum経由ではエラーが出ていた為、
rpm経由でインストールしましたが、
次回以降は仰られている通りのyum経由での
インストールを行いたいと思います。

画像 Toshihiro KITA
Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
pdf2submission を Moodle 2.3 に対応させたものを公開します。
http://tkita.net/tmp/pdf2submission-v2.tar.gz
(このバージョンは Moodle 2.3 でしか動作しません。2.3 以降の新しい「課題」に対してのみ使えますので。)

README.txt (英語) を添付しておきます。

> # いまのところ、設定画面で、invisible to students が visible にできない、
のバグも直しました。

# 今週末行われる 1st Moodle Research Conference
# でのポスターセッションでも発表します。予稿は既に公開されていて、
# http://research.moodle.net/MoodleCon_Proceedings_program/index.htm
# pp.196 - 199 です。

不具合や改善のご要望など、フィードバックを頂けると嬉しいです。

 
最大評点: お役立ち度: ★★★★★★★ (1)
画像 Saburo Higuchi
Re: Moodle2.3対応版pdf2submission
 

喜多先生すばらしいblockを公開してくださりありがとうございます.

Debain/GNU Linux 6.0, Moodle 2.3 にインストールして使用できたのでご報告. バージョンは違いますが, 上の喜多先生とYuuki Murakamiさんの対話がたいへん役立ちました.

 

* 依存するパッケージの導入

Debian では yum でなく apt-get.  imagemagick-dev は存在せず,  libmagickwands-dev (の依存性でインストールされるどれか)

# yum install pdftk ImageMagick ImageMagick-devel ghostscript # CentOS

# apt-get install install pdftk imagemagick libmagickwands-dev ghostscript # Debian  

 

*zbarの導入

CentOSと同様に configure, make, make install で /usr/local 以下にインストールされました

 

*shared library の設定

最初, この状態でテストしたところ, cron でPDF分割が実行されたときにメールで送られてくるログは,

convert -blur 2 /tmp//pdfscan150f095f4e0d9f.jpg /tmp//pdfscan250f095f4e0ddb.jpg, /usr/local/bin/zbarimg  -q --raw /tmp//pdfscan250f095f4e0ddb.jpg, (), // userid:,asno:,,,

のように, 本来QRコードから読み取られた文字列がはいる位置が空になっていて, PDFも課題内に配置されていませんでした. 変だな〜と思って, zbarimg をコマンドラインから実行してみたところ, 

# /usr/local/bin/zbarimg -q --raw /tmp/pdfscan250f095f233520.jpg /usr/local/bin/zbarimg: error while loading shared libraries: libzbar.so.0: cannot open shared object file: No such file or directory

と言われて, shared library の問題だとわかりました. 実際コマンドラインで

# LD_LIBRARY_PATH=/usr/local/lib /usr/local/bin/zbarimg .... 

などとすると正常に実行されます.

これは, zbar のインストール後に

# ldconfig /usr/local/lib

してpathのcacheを更新していなかったためでした(新しいサーバだったので, これが初めての /usr/local 下へのインストールだった)

これで,

convert -blur 2 /tmp//pdfscan150f0a40c1deba.jpg /tmp//pdfscan250f0a40c1def6.jpg, /usr/local/bin/zbarimg  -q --raw /tmp//pdfscan250f0a40c1def6.jpg, (18,39,mathphb12,t100000), // userid:39,asno:18,mathphb12,t100000,,18__39__mathphb12__t100000__.pdf

 

のように, QRコードから読み取られた文字列を含むログになり, 課題にもPDFが正しく配置されるようになりました.

 

*OCRのお節介

ヘッダーに印刷されているユーザの名前で(Moodle外で)PDFを検索したいと思い, 答案PDFをあらかじめAdobe AcrobatでOCRして保存したところ, zbar の読み取り率が100%から5%くらいに低下しました. OCRの前に傾きの補正が行われているためだと推測しています.  QRコードはけっこういいかげんにカメラで撮ったノイズの載った画像でも復号されるのに, 傾きの補正くらいでだめになるのは意外でした. ただの線型変換じゃない何かをやってるのでしょうか.

 

 
最大評点: お役立ち度: ★★★★★★★ (2)
画像 Toshihiro KITA
Re: Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
お使いいただいているようで、ありがとうございます。嬉しいです。

Debian の場合のインストール方法、ライブラリーの読み込みの問題や、OCRが悪さをする可能性など、
貴重な情報ありがとうございました。

何か問題があればまたご報告ください。今後の開発の参考にしたいと思います。
画像 Saburo Higuchi
Re: Moodle2.3対応版pdf2submission
 

Debian/GNU Linux 7, Moodle 2.4.5 でも, 親記事の手順で動きましたのでご報告します.

親記事(Debian 6,Moodle2.3での動作報告)の訂正x2.

  • (誤)libmagickwands-dev →(正)libmagickwand-dev
  • Debian ではWebサーバのユーザ:グループは(CentOSでは apache なのに対し) www-data:www-data

Moodle 2.4 から可能になった「グループとしての課題提出」にpdf2submission を使うとどうなるのかなあ, と思いつつまだ実験できていません.

 
最大評点: お役立ち度: ★★★★★★★ (2)
画像 Toshihiro KITA
Re: Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
Debian7, Moodle 2.4.5 でのご報告もありがとうございます。
「グループとしての課題提出」は私もまだ試したことがありません。
必要でしたら改善するようにしますので、またお知らせください。
画像 Yoshihiro Kokubo
Re: Moodle2.3対応版pdf2submission
 


 喜多先生。このフォーラムで、pdf2submission のことを知りまして、2ヶ月ほど前から使わせて頂いております。使用していて分からない点がありましたので、使用レポートと共に質問させて頂きます。

 環境は、CentOS 6.3 + Moodle 2.5.1 です。

1.通常は問題なく動作するのですが、PDFファイルにフォント情報が含まれていると(プロパティを見たときに、フォント情報が存在する場合)、分割まではうまくいくのですが、分割されたPDFファイルが残ったままで(最初に送ったPDFファイルは消えています。)、配信されません。これは、当方の問題でしょうか、それとも pdf2submission は、そういうものなのでしょうか?

2.ユーザが「課題」を電子ファイルでアップロードせずに、「変更を保存する」ボタンを押すと、ユーザはその後に電子ファイルをアップすることは出来ます。しかしユーザが電子ファイルでアップロードせずに「変更を保存する」ボタンを押し、更にQRコードの紙を印刷して提出し、それを気が付かずにPDFファイルにしてサーバに送ると、そのユーザでエラーになって以後のユーザの処理も停止します。エラーを無視して、次のユーザの処理を続行できないものでしょうか?(贅沢を言って済みませんが)

3.グループでの「課題」提出は、うまくいきません。PDFファイルを送ったディレクトリからはPDFファイルは無くなっていて、一見正しく処理されたように見えます。しかし、「すべての提出を表示/評定する」をクリックして提出状況を見ますと、「評定のため提出」とはなっているのですが、PDFファイルがアップされていません。(これは、単なる報告です。)

以上、質問にご回答戴ければ、幸甚に存じます。

 
最大評点: お役立ち度: ★★★★★☆☆ (1)
画像 Toshihiro KITA
Re: Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
お使いいただきありがとうございます。うれしいです。お返事遅くなってすみません。

1.については、多分すぐに改善できると思います。1週間程度お待ちください。
ちなみに、それは動作テスト用のファイルということでしょうか? (フォントが含まれたファイルを pdf2submission でアップロードする必要が生じるのがどういう時か、思いつかないので...)

2. は、ちょっとコードをみてみないとわかりませんが、少し時間がかかると思います。

3. については、課題に最近追加された機能なので、やはりダメでしたか。これもちょっと見てみますが、すぐには対応は無理そうです。
画像 Yoshihiro Kokubo
Re: Moodle2.3対応版pdf2submission
 


喜多先生。

対応して頂けるとのこと。大変有難く存じます。


> ちなみに、それは動作テスト用のファイルということでしょうか? (フォントが含まれたファイルを

> pdf2submission で アップロードする必要が生じるのがどういう時か、思いつかないので...)

 最近のスキャナは、文字認識機能が付いているのが当たり前(?)でして、私の使用しているCANONのスキャナですと、「キーワードが検索可能なPDFを作成」のチェックを外さなければ、画像ファイルからPDFファイルを作成するときに、フォント情報が埋め込まれて文字のコピー&ペーストが可能になります。結構便利なものですから、通常はこれを使うようにしています。ですから、pdf2submission を使用するときは、上記のチェックを外してフォント情報を埋め込まないようにしているのですが、たまに忘れて失敗します。失敗すると悲惨なもので(^o^)、また新たにQRコードのシートをダウンロードして印刷しなければいけなくなります。と言うわけでして、対応して頂ければ大変助かります。

画像 Toshihiro KITA
Re: Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
> 1.通常は問題なく動作するのですが、PDFファイルにフォント情報が含まれていると(プロパティを見たときに、フォント情報が存在する場合)、分割まではうまくいくのですが、分割されたPDFファイルが残ったままで(最初に送ったPDFファイルは消えています。)、配信されません。これは、当方の問題でしょうか、それとも pdf2submission は、そういうものなのでしょうか?

についてですが、対処方法が分かりました。これは、日本語フォント情報等が入ったPDFファイルだと、途中の処理で用いている gs (Ghostscript) がエラーで終了してしまうためです。サーバにログインして、
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=jpeg -r200 -sOutputFile=IMG1.jpg -dFirstPage=1 -dLastPage=1 IMG1.pdf
のように、処理したいPDFファイルを jpg形式に変換するコマンドを実行してみれば分かりますが、
Can't find CID font "MS-Gothic".
Substituting CID font /Adobe-Japan1 for /MS-Gothic, see doc/Use.htm#CIDFontSubstitution.
The substitute CID font "Adobe-Japan1" is not provided either. Will exit with error.
のようなエラーが出てしまいます。

これを解決するには、gs の設定を行う必要があります。手元の CentOS 6.5 では以下の手順で解決できました。
まず、
yum install ipa-mincho-fonts ipa-gothic-fonts
で IPAフォントをインストールします。

/usr/share/ghostscript/8.70/Resource/Init/ に cidfmap.ja という名前で
以下のような内容のファイルを置きます。(Ubuntu の設定ファイルを参考にしました。cidfmapにcidfmap.jaをロードする記述があります。)

/Japanese-Mincho-Regular << /FileType /TrueType /Path (/usr/share/fonts/ipa-mincho/ipam.ttf) /SubfontID 0 /CSI [(Japan1) 4] >> ;
/Japanese-Gothic-Regular << /FileType /TrueType /Path (/usr/share/fonts/ipa-gothic/ipag.ttf) /SubfontID 0 /CSI [(Japan1) 4] >> ;
/Ryumin-Light /Japanese-Mincho-Regular ;
/Adobe-Japan1 /Japanese-Mincho-Regular ;
/HeiseiMin-W3 /Japanese-Mincho-Regular ;
/GothicBBB-Medium /Japanese-Gothic-Regular ;
/Adobe-Japan1-Bold /Japanese-Gothic-Regular ;
/HeiseiKakuGo-W5 /Japanese-Gothic-Regular ;

これで、gs がエラー無く動作するようになり、pdf2submission も動作するはずです。
おそらく CentOS 6.3 でも同じ手順で解決できるかと。お試しください。
画像 Yoshihiro Kokubo
Re: Moodle2.3対応版pdf2submission
 

喜多先生

 ご説明有難うございます。CentOS 6.3 + Moodle 2.5.1 および CentOS 6.5 + Moodle 2.6.3 で、上手く行くことを確認しました。
 トラブルの原因がフォントの問題だと気が付くのにも時間が掛かったのですが、日本語フォントをインストールすれば良いのかな?と思ったあとは、やり方が分からず(結果的に日本語のフォントはインストールされていて、cidfmap.ja の問題だったのですが)、設定方法を教えて頂いて、「あ、これは私には到底想像も付かない設定だな。聞いて良かった。」と思った次第です。
 これで、トラブルの頻度がかなり下がります。どうも有難う御座いました。


Hiroshi UEDA
Re: Moodle2.3対応版pdf2submission
 

素晴しいブロックをありがとうございます。Moodle2.5, RHEL6 で動作しました。備忘録を書きましたのでご参考まで。

Moodleで手書きレポートを提出 (pdf2submission + Moodle 2.5 on RHEL6)

 

 
最大評点: お役立ち度: ★★★★★★★ (3)
画像 Toshihiro KITA
Re: Moodle2.3対応版pdf2submission
グループ Particularly helpful Moodlersグループ Translators
> Moodleで手書きレポートを提出 (pdf2submission + Moodle 2.5 on RHEL6)

ご報告どうもありがとうございます。

お使いくださっていて嬉しいです。どのような授業や利用目的でつかっておられるか、またお会いしたときにでもお聞かせください。