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

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

- Toshihiro KITA の投稿
返信数: 47
いくつかの学会で発表していました、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 にできない、
# などのバグがあります。
最大評点: お役立ち度: ★★★★★★★ (4)
Toshihiro KITA への返信

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

- Tatsuya Shirai の投稿

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

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

Toshihiro KITA への返信

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

- Seiji Morino の投稿

これはすごい!

早速試してみます!

Seiji Morino への返信

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

- Toshihiro KITA の投稿
使っていただいて思ったことや問題点などを是非お教えください。

レンタルサーバ heteml で使うためのインストールマニュアルを作成しているところです。
Toshihiro KITA への返信

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

- naomichi ogitsu の投稿

おぎつです

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

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

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

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

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

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

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

naomichi ogitsu への返信

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

- Toshihiro KITA の投稿
> 「レンタルサーバ 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)
Toshihiro KITA への返信

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

- naomichi ogitsu の投稿

おぎつです

そうですか

zbarimg

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

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

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

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

ありがとうございました


Toshihiro KITA への返信

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

- naomichi ogitsu の投稿

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用

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

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


naomichi ogitsu への返信

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

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

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

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


最大評点: お役立ち度: ★★★★★★★ (1)
Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

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

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

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で試しています。

Yuuki Murakami への返信

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

- Toshihiro KITA の投稿
お試しいただき嬉しいです。ありがとうございます。

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

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

pdftk ファイル名 burst

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


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

最大評点: お役立ち度: ★★★★★★★ (1)
Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

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

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

[ 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

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

Yuuki Murakami への返信

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

- Toshihiro KITA の投稿
> [ $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";
のように書いてみるとどうでしょうか。
Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

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

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

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

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

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

Yuuki Murakami への返信

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

- Toshihiro KITA の投稿
動作したようで、何よりです。

使ってみて分かった問題点や機能の要望などありましたら、
是非お聞かせください。
Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

ありがとうございます。

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

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

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

Yuuki Murakami への返信

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

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

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

私はあまりそういうことは経験がないのですが、両者が違うのは、
環境変数LD_LIBRARY_PATH の設定が異なるなどの問題なんでしょうか。
Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

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環境で検証を行っていますので
その為にシンボリックリンクが必要になったと思います。

Yuuki Murakami への返信

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

- Toshihiro KITA の投稿
ご説明ありがとうございます。

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

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

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

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

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

Toshihiro KITA への返信

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

- Yuuki Murakami の投稿

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

Yuuki Murakami への返信

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

- Toshihiro KITA の投稿
了解です。

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

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

- Yuuki Murakami の投稿

了解しました。

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

Toshihiro KITA への返信

Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
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)
Toshihiro KITA への返信

Re: Moodle2.3対応版pdf2submission

- Saburo Higuchi の投稿

喜多先生すばらしい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)
Saburo Higuchi への返信

Re: Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
お使いいただいているようで、ありがとうございます。嬉しいです。

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

何か問題があればまたご報告ください。今後の開発の参考にしたいと思います。
Saburo Higuchi への返信

Re: Moodle2.3対応版pdf2submission

- Saburo Higuchi の投稿

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)
Saburo Higuchi への返信

Re: Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
Debian7, Moodle 2.4.5 でのご報告もありがとうございます。
「グループとしての課題提出」は私もまだ試したことがありません。
必要でしたら改善するようにしますので、またお知らせください。
Toshihiro KITA への返信

Re: Moodle2.3対応版pdf2submission

- Yoshihiro Kokubo の投稿


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

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

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

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

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

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

最大評点: お役立ち度: ★★★★★☆☆ (1)
Yoshihiro Kokubo への返信

Re: Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
お使いいただきありがとうございます。うれしいです。お返事遅くなってすみません。

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

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

3. については、課題に最近追加された機能なので、やはりダメでしたか。これもちょっと見てみますが、すぐには対応は無理そうです。
Toshihiro KITA への返信

Re: Moodle2.3対応版pdf2submission

- Yoshihiro Kokubo の投稿


喜多先生。

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


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

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

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

Yoshihiro Kokubo への返信

Re: Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
> 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 でも同じ手順で解決できるかと。お試しください。
Toshihiro KITA への返信

Re: Moodle2.3対応版pdf2submission

- Yoshihiro Kokubo の投稿

喜多先生

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


Toshihiro KITA への返信

Re: Moodle2.3対応版pdf2submission

- Hiroshi Ueda の投稿

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

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

 

最大評点: お役立ち度: ★★★★★★★ (3)
Hiroshi Ueda への返信

Re: Moodle2.3対応版pdf2submission

- Toshihiro KITA の投稿
> Moodleで手書きレポートを提出 (pdf2submission + Moodle 2.5 on RHEL6)

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

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

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

- Mitsugu Ichihashi の投稿

Centos7上のMoodle3.4にpdf2submissionブロックをインストールしました。

Centos7上ではpdftkがインストールできないので

http://t0463.blogspot.jp/2015/08/centos71-pdfpdftk.html

を参考にpdftkをインストールしました。


その結果ですが

学生の提出ステータスは,正常に表示され,課題も参照可能

教師の評定概要は,

 「提出」=>反映されず

 すべての提出を表示=>反映されず。

  ↑この画面から「評定」クリックし,画面遷移すると課題表示される。


という状況でした。

pdfscan.phpのソースを見たのですが

// from assign/locallib.php get_user_submission()

とある行の部分を3.4のassign/locallib.php get_user_submission()からコピーしてくれば良いのかと思っております。

どなたかアドバイスいただけると助かります。


 

Mitsugu Ichihashi への返信

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

- Toshihiro KITA の投稿
お使いいただき嬉しいです。

pdftk が必要、ということは、古いバージョンの pdf2submission をお使いだと思うので、
https://moodle.org/plugins/block_pdf2submission
の一番下のコメントにも書いたように、最新版
https://github.com/kita-toshihiro/pdf2submission
を一度試していただけますか。
Toshihiro KITA への返信

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

- Mitsugu Ichihashi の投稿

Centos7 moodle3.4で動作しました。

ありがとうございます。

利用させていただきます!


https://github.com/kita-toshihiro/pdf2submission

の最新版をダウンロード

pdf2submission(2016122800)


pdfscan.phpを編集

パスを設定

$inputfolder= "/home/pdf2moodle/pdfs/"

$zbarimg_command= "/usr/bin/zbarimg";

$convert_command= "/usr/bin/convert";

$gs_command= "/usr/bin/gs";


sn2.phpも編集

$inputfolder= "/home/pdf2moodle/pdfs/"

Toshihiro KITA への返信

このフォーラム投稿は削除されました。

このフォーラム投稿のコンテンツは削除されたため現在アクセスすることはできません。
削除済みユーザ への返信

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

- Toshihiro KITA の投稿
お使いいただき嬉しいです。

最新版というのは、
https://github.com/kita-toshihiro/pdf2submission
をお使いいただいている、ということですよね。

該当する PDF ファイルをサーバ上で
zbarimg pdfファイル
というコマンドで認識させてみるとどういう結果になりますか。

差し支えなければ、PDFファイル(適当にマスキングしてもらっても可)を私までメール等でお送りいただければ、調べてみます。
Toshihiro KITA への返信

このフォーラム投稿は削除されました。

このフォーラム投稿のコンテンツは削除されたため現在アクセスすることはできません。
Toshihiro KITA への返信

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

- Teru E の投稿

喜多先生

pdf2submissionを何年も利用しております。

素晴らしいプラグインのご提供ありがとうございます。


情報量が多いQRの読み取り精度を上げたいと考えております。

CentOS7、moodle 3.4.1+、最新のpdf2submissionを利用しております。


コースに登録されている人数が35名を超えたあたりから、QRが読み飛ばされてしまい

複数名分の課題が1名分の課題として登録されてしまう事象が発生しております。


例えば全35枚、35名分のPDFを読み込ませると、30名の課題として登録され

5名分は他ユーザの課題の2枚目になっているようなイメージです。


どうやらコースに登録されている人数が多いと、QRのセル(白黒のパターン)が

きめ細かくなってしまい、うまくQRが読み取りができないようです。


QRの読み取り精度を上げたいのですが、どのような方法が有効でしょうか。


ご回答いただけますと幸いです。どうぞよろしくお願いいたします。



Toshihiro KITA への返信

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

- Teru E の投稿

喜多先生 こんにちは。


「pdf2submissionの個別シートを効率的に配布するための改良と大規模クラスでの利用」

という報告書を拝読しました。


「テンプレート挿入機能」と、「通し番号がQRコードに埋め込まれたシートを生成する」

という改良を行ったと記載がございますが、最新版に実装はされておりますでしょうか?

ぜひこの機能をmoodle 3.4で試してみたいと考えております。


  最新版

   https://github.com/kita-toshihiro/pdf2submission


どうぞよろしくお願いいたします。

Teru E への返信

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

- Toshihiro KITA の投稿
興味を持っていただきありがとうございます。
はい、両方共、最新版で実装されています。お試しください。
どの部分が相当するかが分からないときには、ご質問ください。
Toshihiro KITA への返信

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

- Teru E の投稿

ご回答ありがとうございます。

試してみましたところ、moodle 3.4、3.5 で動きました。

ありがとうございます!

Toshihiro KITA への返信

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

- Kentaro Yoshitomi の投稿

大阪公立大学の吉冨です. 府大のときからうちのMoodleに導入され, 便利に使えています. 次の週を紙で返却する前に小テストを返却できたり, フィードバックが早く返せるのがすばらしいのでないと困る機能です. ありがとうございます.

それが, 今回, 講義名に事務方が "/"をつけてしまいました. ファイル名に"/"がつくので困ったことがおこりました. ファイルを展開できないのです. で帰ってきた返事が, 「講義名を修正するので, あらたにQRコードを生成しなおして対応してくれ」というものでした. もちろん, すでに大量に実施していますので, とてもできません.

ファイル名の"/"をエスケープして展開することはできそうに思いますが, 対応できそうでしょうか. ここを直せばいけるのでは、 とかあれば教務経由で業者に伝えます!

# 自分で入れているわけではないので, コードは見ずに聞いています. すみません. 

よろしくお願いします.