第6話 (PDF)ファイルをまとめる

--------------------- 第6話 (PDF)ファイルをまとめる --------------------------

はじまり、はじまり~。

<ついに年貢の納め時ね。 実力のなさが晒される訳ね。>
楽しんでるでしょ。

<もちろん。 大いに楽しんでるわ。だって自分からそう言ってるんだもん>
<サンプルは作ったみたいだけど、「ハチャメチャですので晒すのはご勘弁」だからね>
よりによって、コイツを取り上げるかなぁ~。ダメだって言ってるじゃないか!

<敵の弱点を突くのが戦いの基本よ。>
ったく。最悪だなこりゃ。

<か、勝ったわ。ついに! お姉さま騙されていたのね>
<武士の情けよ。サンプル公開で許して進ぜよう>
年食ってるだけあって、時代錯誤がはなはだしい。

<なんか言った?>
い、いえ何も。 しかし、どうしてコンナ長いの選んだの?
<ついに観念して、お縄につく気になったか。コレでも事前に調べたのよ>
どんな風に?

<オリジナルも前例もないから。ナン万倍速とか言い訳出来ないし、ほとんど自ら>
<ギブアップしてるようなもんだし、コノ内容、アタシにも大変だって分かるから。>
本当に分かるの?

<コレでも一通り、スクリプトの勉強したんだからね。嘘じゃないんだからね!>
じゃあ何処が大変なのか言って見てよ。

<全部>
アノネェ。

<分かってるわよ。まず、共通項目(同じところまで)の抽出が面倒。最低でも>
<比較と、グループ化で配列とループが2重になりそうね。>
<しかも、具体的には、どうするのかしら?>

<ソノ上、抽出したら、他にもないか調べて、あればさらにグループ化よね>
<そうして、全部調べたらグループを展開しながらPDFファイルを一つ一つ結合よね。>
<あーあ、頭痛くなって来た。さすがのアンタでも無理だわね。>
<出来ても、何百行になる事やら。 よってアタシの勝ちね>
何でそうなる。

ま、確かに「名前が同じところまでまとめたい」の一言だが、コレが中々手ごわい。
しかし、コレと言った障害もないので、出来ることは分かるのだか、非常に面倒だ。
通常、プログラムにはある程度「定跡」があって、今時はググると出てくる。

ところが、コイツは言語の範囲を広げてもほとんど出てこない。
つまりゼロの状態から組まなければならない。

<そうでしょ。そうでしょ。で、当たって砕けた訳ね。>
砕けてどうする。

<さ、さっ、サンプルを晒して終わりね。>
完成してるんですけど。

<嘘おっしゃい!!>


----------------------------------------------------------------------

提供は:一言でねじ伏せられる。Linersでした。

----------------------------------------------------------------------
 PDFをまとめる tanaka_初心者  
 初心者です。
ファルダ内の名前が違ったPDFを条件を付けてまとめたいのですがUWSCでできますか。
(例)
デスクトップに"tanaka"というフォルダがあり、この中に以下のPDFが入っているとして、
AA1122.pdf AA1145.pdf AA1155.pdf GG5678.pdf GG5987.pdf ZZ5678.pdf

AA11.pdf GG5.pdf ZZ5678.pdf
という様に名前が同じところまでまとめたいのですがどうすればよろしいでしょうか。一緒の名前がないものはZZ5678.pdfのようにそのままにしたいです。
ソフトはアクロバットスタンダードを使用しています。(PDFがまとめられるのなら別のソフトでも構いません。Freeソフトでお願いします。)
よろしくお願いします。
DATE:2009/10/8(Thu) 21:53 No.2612  
 
 RE:PDFをまとめる al  
 
 GETDIR
を使ってワイルドカード(*, ?) によるファイル名指定をしてから
ファイル移動をループ(for~next)で処理すればできます。

ファイル操作についてはを下記を参照してみてください。
http://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&mode=all&no=666&log=ON&cnt=6

 

DATE:2009/10/9(Fri) 05:26  
 
 RE:PDFをまとめる いりや  
 
 まとめる、のは 1 つの PDF ファイルとしてまとめる、という意味かな??
DATE:2009/10/9(Fri) 15:03  
 
 RE:PDFをまとめる Liners  
 
 >PDFを条件を付けてまとめたいのですがUWSCでできますか。> 可能です。ファイルの結合はアクロバットスタンダード標準機能でできます。
問題はその抽出方法とグループ管理です。命題のような全てが可変型で、ある意味人間的なグループ分けをパソコンに指示するには骨が折れます。

実際に組んでみると、共通文字列の抽出はそれほどでもないですが、それをベースにした検索と、それが解除された場合の処理に手間がかかります。
参考にしようとググッテ見ましたが、せいぜい正規表現止まりでした。共通文字列の抽出だけでもまともなものは見当たりませんでした。

つまり、可能ではあるけれども、初心者の方が理解するには荷が重いスクリプトになっています。(私の頭が弱いだけかも)
質問や回答の情報が少ないので、使用頻度は少ないと考えられます。よって問題点の絞込みをお勧めします。(ファイル名の先頭4文字は固定など)

ちなみに、当方テスト段階では dim s[] = "AA1122.pdf", "AA1145.pdf", "AA1155.pdf", "GG5678.pdf", "GG5987.pdf", "ZZ5678.pdf" の入力に対し、

AA11.pdf = "AA1122.pdf" "AA1145.pdf" "AA1155.pdf"
GG5.pdf = "GG5678.pdf" "GG5987.pdf"
ZZ5678.pdf = "ZZ5678.pdf"

の結果が得られていますが、(表示は実際の組み込みを考慮した形式) スクリプトはハチャメチャですので晒すのはご勘弁を・・・
DATE:2009/10/9(Fri) 21:50  
 
 RE:PDFをまとめる tanaka_初心者  
 
 ご返信ありがとうございます。
連絡が遅くなってしまい申し訳ありません。
あるフォルダにいろいろな名前のPDFが入っているとして(100個くらい)、その中の名前が一致しているところまでのPDFを探し出し、一致している名前のところでそれぞれまとめたいです。

(例)
RR1234.pdf
RR1678.pdf
712hh.pdf
798hh.pdf
4567.pdf

がフォルダの中に入っているとして、これを

RR1.pdf
7.pdf
4567(2).pdf(一緒の物がない場合は名前の最後に(2)を入れる)

という風にまとめたいです。
それと元の
RR1234.pdf
RR1678.pdf
712hh.pdf
798hh.pdf
4567.pdf
も同じフォルダの中に残した形にしたいです。
よろしくお願いします。


DATE:2009/10/14(Wed) 22:58  
 
 RE:PDFをまとめる Liners  
 
 tanaka_初心者さん。誤解はしていないと思いますが、ココはプログラム作成を依頼する場ではなく、「自助努力の上での相互扶助」の場であると考えています。
つまり、アドバイスやヒントは惜しみませんが、最終的にプログラムを作るのは御自身ですよ。

もっとも、簡単なものであれば、提示もできますが、今回は他言語の識者の方でも避けられている内容のようです。
また。貴重な時間を割いて返答していただいている alさん、いりやさんに丁寧に返答しましょう。

その上で、解らない部分を質問してください。(基本的に全部解らないと言うのはダメですよ)
例えば、「ファイル名の取得は出来るが、共通部分の切り出しが出来ない(手法が解らない)」など。
DATE:2009/10/15(Thu) 01:50  
 
 RE:PDFをまとめる al  
 
 まとめる

と言う意味を取り違えていました。
(フォルダ毎に別けてまとめると思っていた)
いりやさんのおっしゃるような内容でしたら
素直にフリーのソフトで手動でPDFのファイルをまとめたほうが無難だと思います。
LinersさんのおっしゃるようにUWSCで出来ます。
がしかし複雑です。
100個くらいなら手動で
その後も毎回100個のファイルをまとめるのであれば
UWSCの力を借りるか・・・ですね。
DATE:2009/10/15(Thu) 12:26  
 
 RE:PDFをまとめる Liners  
 
 「まとめる と言う意味を取り違えていました。」ですよね、私も当初そう思いましたから。この手の概念の希薄さ(先入観の強さ)を思い知りました。
しかも、組み始めると、普通にやってるだけなのに肥大化にブレーキがかからない! この手のプログラミングには慣れているはずだったのに・・・ダブルショックでした。
DATE:2009/10/15(Thu) 20:24  
 
 RE:PDFをまとめる tanaka_初心者  
 
 ご返信ありがとうございます。
alさん、いりやさん、Linersさんお時間を頂き調べしてもらいどうもありがとうございました。
説明が不足し、混乱させてしまい申し訳ありません。
ほぼ毎日PDFをまとめる作業が発生していますので、UWSCを知りできないものかなと思い書き込みさせて頂きました。
>ココはプログラム作成を依頼する場ではなく、「自助努力の上での相 互扶助」の場であると考えています。
ご尤もです。すみません。ちょっと初心者にはプログラムを組むのは敷居が高く、質問させて頂きましたが、自分でもスクリプトを記録してできるところまで挑戦してみたいと思います。
その上で分からないことがあった場合には、この場でまた質問させて頂きますのでお力を貸してもらえないでしょうか。
よろしくお願いします。

DATE:2009/10/15(Thu) 22:47  
 
 RE:PDFをまとめる Liners  
 
 「お力を貸してもらえないでしょうか。」>協力は惜しみませんよ。
「初心者にはプログラムを組むのは敷居が高く」>この質問は初心者でなくとも相当高いレベルですね。(少なくとも私には)

「ほぼ毎日PDFをまとめる作業が発生しています」>UWSCで自動化する価値はありそうですね。頑張って下さい。
それにしても、今回は純粋に総合力を試されている感じでした。しかも出来上がってくるものは・・・
初心者をドン引きさせ、氷付けにして破壊するぐらいの威力は十分にありますね。一種のカルチャーショックを受けるかも。
DATE:2009/10/16(Fri) 00:16  
 
 RE:PDFをまとめる ganges  
 
 役に立たないかも知れませんが、以下、ご参考まで。

結合処理自体は、ConcatPDFが利用できると思います。コマンドライン
操作が可能です。http://www.ujihara.jp/ConcatPDF/ja/にあります。

但し、ファイルの抽出と順序決定が厄介ですね。
「名前が同じところまで」とのことですが、これはどのような規則で
判断するのか(これが決まっていないと自動化不可能)、また、順序は
どうするのか。
ファイルの抽出・順列規則次第で、そう厄介な話でもないかも。
DATE:2009/10/16(Fri) 00:29  
 
 RE:PDFをまとめる al  
 
 tanakaさんへ質問です。
以下のようなファイル構成の場合どうまとめますか?

RR1234.pdf
RR1678.pdf
RR2000.pdf
RR1.pdf
7.pdf
712hh.pdf
798hh.pdf
4567.pdf
DATE:2009/10/16(Fri) 04:06