SlideShare a Scribd company logo
1 of 15
Download to read offline
PDF 切り貼りで記事を読みやすく


     KenichiroMATOHARA(@matoken)
             http://matoken.org

小江戸らぐ4月のオフな集まり(第129回)2013/04/13
 独立行政法人情報処理推進機構(IPA)会議室A
最近
●
    自動車学校に通い始めました
    –   未だ1段階(場内教習).火曜に修了検定?
●
    先月紹介したひよこch は休止中
    –   ストレージが論理的に死亡.再構築が必要.
    –   jffs2 にしたりfsprotect でro mount とかにするとましになるかも
    –   ひよこは大分大きく
●
    2月のオフな集まりで割ったnexus7 がやっと修理から帰ってくる
    –   2/18修理依頼,受け取りが4/11.
    –   (修理完了後旧住所に2回発送されてたorz)
●
    HST(ハッブル宇宙望遠鏡)撮影したり
pdf をまとめて読みやすくしてみる
●
    最近pdf で雑誌記事などが公開されたりしてい
    る.
●
    でも大抵記事ごとに分割されていて何度も開
    くのが面倒くさい.
●
    結合して読みやすくしてみる.
今回はUbuntuMagazine Vol.09 を
●   “Ubuntu Magazine Japan”
    http://ubuntu.asciimw.jp/
●
    現在Vol.10 迄発行.
●
    新刊が出ると前の巻はCC BY-NC-SA で公開さ
    れる.Vol.01~09 迄公開済み.
●
    “Ubuntu Magazine Japan:過去の本誌掲載記
    事” http://ubuntu.asciimw.jp/cate/5010/
pdf データの入手(wget)
●
    wget とか(ディレクトリを掘らず:-nd/*.pdf を:-A .pdf/再帰的に:-r/
    親ディレクトリは追わない:-np)
     $ wget http://ubuntu.asciimw.jp/elem/000/000/010/10533/ -nd
     -A .pdf -r -np
     $ ls
     UM09_P104-111.pdf UM09_P2-21.pdf UM09_P28-33.pdf
     UM09_P42-47.pdf UM09_P66-73.pdf UM09_P80-83.pdf
     UM09_P92.pdf
     UM09_P112-119.pdf UM09_P22-27.pdf UM09_P34-41.pdf
     UM09_P49-P64.pdf UM09_P74-79.pdf UM09_P84-91.pdf
     UM09_P93-103.pdf
pdf データの入手(DownThemAll!)
●
    Fx で”DownThemAll!” も便利
    –   このページにある*.pdf なリンクを全部ダウ
        ンロードなど
制限の掛かっているファイルの場合
       解除
●
    制限が掛かっていると結合とか出来なかったり
    するので一旦ps にしてpdf に戻して制限を解
    除.
     pdftops -upw '' file.pdf
     ps2pdf file.ps
●
    ※グレーな気がするけど私的利用なら問題ない?
●
    ※UbuntuMagazine はこの処理は必要ない
結合(pdftk)
●   $ pdftk UM09_P2-21.pdf UM09_P22-27.pdf UM09_P28-33.pdf 
     UM09_P34-41.pdf UM09_P42-47.pdf UM09_P49-P64.pdf 
     UM09_P66-73.pdf UM09_P74-79.pdf UM09_P80-83.pdf 
     UM09_P84-91.pdf UM09_P92.pdf UM09_P93-103.pdf 
     UM09_P104-111.pdf UM09_P112-119.pdf 
     cat output 
     UM09.pdf
●
    「UM09.pdf」 というファイルにまとめられた.
●
    ※ワイルドカードも使えるが並び順が期待したものにならないこ
    ともある
注意書きが沢山あって邪魔
●
    「ご利用になる前に必ずお読みください」と
    いう注意書きページがファイル毎の先頭ペー
    ジにあって一寸邪魔.
●
    1つ目の記事以外の先頭ページを消してみる.
    (先頭ページ以外を残す)
     pdftk file.pdf cat 2-end output file_cut.pdf
             p1
              p2                        p2
                  p3                     p3
                  p                      p
                   p4                     p4
$ cat cut
while(<DATA>){
    chomp;
    `pdftk $_ cat 2-end output $_.pdf`;
}
_DATA_
UM09_P22-27.pdf
UM09_P28-33.pdf
UM09_P34-41.pdf
UM09_P42-47.pdf
UM09_P49-P64.pdf
UM09_P66-73.pdf
UM09_P74-79.pdf
UM09_P80-83.pdf
UM09_P84-91.pdf
UM09_P92.pdf
UM09_P93-103.pdf
UM09_P104-111.pdf
UM09_P112-119.pdf
実行
$ perl cut
結合
pdftk 
UM09_P2-21.pdf UM09_P22-27.pdf.pdf UM09_P28-33.pdf.pdf 
UM09_P34-41.pdf.pdf UM09_P42-47.pdf.pdf UM09_P49-P64.pdf.pdf 
UM09_P66-73.pdf.pdf UM09_P74-79.pdf.pdf UM09_P80-83.pdf.pdf 
UM09_P84-91.pdf.pdf UM09_P92.pdf.pdf UM09_P93-103.pdf.pdf 
UM09_P104-111.pdf.pdf UM09_P112-119.pdf.pdf 
cat output 
UM09.pdf
https://plus.google.com/u/0/103792214056489833385/posts/YJH3DFeEMou
のコメントで@emasakaさんに中間ファイル要らない方法を教えてもらう
jpeg にしてみる
●
    まとめたpdf は64MB 程.Evernote 確か50MB 迄なので添
    付できない(勘違い100MB 迄OK)
●
    72dpi のjpeg にしてまとめてみたら11MB ちょい.でも荒
    くて読めない.
●
    150dpi で40MB ちょい.これなら読める.
     $ pdftoppm UM09.pdf UM09 -jpeg -r 150;tar cvzf UM09.cbz
     UM09*.jpg
     $ ls -l UM09.cbz
     rw-r--r- 1 mk mk 40605087 3月 10 14:14 UM09.cbz
●
    ※jpeg やcbz の場合はMComix が便利.(開発の止まった
    Comix のフォーク)
発表後
    @naru0gaさんから“O'Reilly Japan - PDF構造解説”に色々載っ
    てるよ http://www.oreilly.co.jp/books/9784873115498/
    PDF Chain というpdftk の皮があるよ“PDF Chain Project Page -
    Welcome” http://pdfchain.sourceforge.net/
      $ sudo apt-get install pdfchain (Debian Wheezy)
    とか教えてもらう.


●
    今回の件をpdfchain で試してみた
    https://plus.google.com/u/0/103792214056489833385/posts/JnsPuTFJJZ

More Related Content

More from Kenichiro MATOHARA

ゲーミングプラットホームのLutris
ゲーミングプラットホームのLutrisゲーミングプラットホームのLutris
ゲーミングプラットホームのLutrisKenichiro MATOHARA
 
Raspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試すRaspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試すKenichiro MATOHARA
 
Raspberry piのsdl等に対応したreal vncを試してみた
Raspberry piのsdl等に対応したreal vncを試してみたRaspberry piのsdl等に対応したreal vncを試してみた
Raspberry piのsdl等に対応したreal vncを試してみたKenichiro MATOHARA
 
ちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxをちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxをKenichiro MATOHARA
 
鹿児島Linux勉強会2016.04
鹿児島Linux勉強会2016.04鹿児島Linux勉強会2016.04
鹿児島Linux勉強会2016.04Kenichiro MATOHARA
 
Raspberry Piにdiskless modeのalpine linuxを導入してみる
Raspberry Piにdiskless modeのalpine linuxを導入してみるRaspberry Piにdiskless modeのalpine linuxを導入してみる
Raspberry Piにdiskless modeのalpine linuxを導入してみるKenichiro MATOHARA
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作るKenichiro MATOHARA
 
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみる
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみるオープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみる
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみるKenichiro MATOHARA
 
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)Kenichiro MATOHARA
 
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)Kenichiro MATOHARA
 
鹿児島らぐC87配布ペーパー
鹿児島らぐC87配布ペーパー鹿児島らぐC87配布ペーパー
鹿児島らぐC87配布ペーパーKenichiro MATOHARA
 
鹿児島に引っ越しました
鹿児島に引っ越しました鹿児島に引っ越しました
鹿児島に引っ越しましたKenichiro MATOHARA
 
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2Kenichiro MATOHARA
 
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘いKenichiro MATOHARA
 
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...Kenichiro MATOHARA
 

More from Kenichiro MATOHARA (20)

PQI Air Pen Hack
PQI Air Pen HackPQI Air Pen Hack
PQI Air Pen Hack
 
ゲーミングプラットホームのLutris
ゲーミングプラットホームのLutrisゲーミングプラットホームのLutris
ゲーミングプラットホームのLutris
 
USBを保護するUSBGuard
USBを保護するUSBGuardUSBを保護するUSBGuard
USBを保護するUSBGuard
 
Raspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試すRaspberry PiのUSB OTGを試す
Raspberry PiのUSB OTGを試す
 
Let’s Encrypt更新話
Let’s Encrypt更新話Let’s Encrypt更新話
Let’s Encrypt更新話
 
Raspberry piのsdl等に対応したreal vncを試してみた
Raspberry piのsdl等に対応したreal vncを試してみたRaspberry piのsdl等に対応したreal vncを試してみた
Raspberry piのsdl等に対応したreal vncを試してみた
 
ちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxをちょっと古いマシンにLinuxを
ちょっと古いマシンにLinuxを
 
鹿児島Linux勉強会2016.04
鹿児島Linux勉強会2016.04鹿児島Linux勉強会2016.04
鹿児島Linux勉強会2016.04
 
Raspberry Piにdiskless modeのalpine linuxを導入してみる
Raspberry Piにdiskless modeのalpine linuxを導入してみるRaspberry Piにdiskless modeのalpine linuxを導入してみる
Raspberry Piにdiskless modeのalpine linuxを導入してみる
 
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
勉強会向けサーバを作ってみる2 / Rasbian jessieを試す/ Google Authenticatorのパスコードを作る
 
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみる
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみるオープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみる
オープンソースカンファレンス大分参加報告 & 勉強会向けサーバを作ってみる
 
OSC15OT 配布ペーパー
OSC15OT 配布ペーパーOSC15OT 配布ペーパー
OSC15OT 配布ペーパー
 
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
鹿児島らぐはじめました(オープンソースカンファレンス2015大分LT)
 
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome)
 
鹿児島らぐC87配布ペーパー
鹿児島らぐC87配布ペーパー鹿児島らぐC87配布ペーパー
鹿児島らぐC87配布ペーパー
 
鹿児島に引っ越しました
鹿児島に引っ越しました鹿児島に引っ越しました
鹿児島に引っ越しました
 
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2
技適なBluetooth GNSS/GPSレシーバーをRaspberryPiで作りたい2
 
鹿児島のOSM状況
鹿児島のOSM状況鹿児島のOSM状況
鹿児島のOSM状況
 
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
鹿児島らぐはじめました & オープ ンソースアンカンファレンス鹿児 島のお誘い
 
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
「BluetoothでLinuxマシンとAndroidを繋いで話が出来るようにした話」「台風で停電になって省電力の設定をした話」「ネットワークの設定が引き...
 

PDF切り貼りで記事を読みやすく

  • 1. PDF 切り貼りで記事を読みやすく KenichiroMATOHARA(@matoken) http://matoken.org 小江戸らぐ4月のオフな集まり(第129回)2013/04/13 独立行政法人情報処理推進機構(IPA)会議室A
  • 2. 最近 ● 自動車学校に通い始めました – 未だ1段階(場内教習).火曜に修了検定? ● 先月紹介したひよこch は休止中 – ストレージが論理的に死亡.再構築が必要. – jffs2 にしたりfsprotect でro mount とかにするとましになるかも – ひよこは大分大きく ● 2月のオフな集まりで割ったnexus7 がやっと修理から帰ってくる – 2/18修理依頼,受け取りが4/11. – (修理完了後旧住所に2回発送されてたorz) ● HST(ハッブル宇宙望遠鏡)撮影したり
  • 3.
  • 4. pdf をまとめて読みやすくしてみる ● 最近pdf で雑誌記事などが公開されたりしてい る. ● でも大抵記事ごとに分割されていて何度も開 くのが面倒くさい. ● 結合して読みやすくしてみる.
  • 5. 今回はUbuntuMagazine Vol.09 を ● “Ubuntu Magazine Japan” http://ubuntu.asciimw.jp/ ● 現在Vol.10 迄発行. ● 新刊が出ると前の巻はCC BY-NC-SA で公開さ れる.Vol.01~09 迄公開済み. ● “Ubuntu Magazine Japan:過去の本誌掲載記 事” http://ubuntu.asciimw.jp/cate/5010/
  • 6. pdf データの入手(wget) ● wget とか(ディレクトリを掘らず:-nd/*.pdf を:-A .pdf/再帰的に:-r/ 親ディレクトリは追わない:-np) $ wget http://ubuntu.asciimw.jp/elem/000/000/010/10533/ -nd -A .pdf -r -np $ ls UM09_P104-111.pdf UM09_P2-21.pdf UM09_P28-33.pdf UM09_P42-47.pdf UM09_P66-73.pdf UM09_P80-83.pdf UM09_P92.pdf UM09_P112-119.pdf UM09_P22-27.pdf UM09_P34-41.pdf UM09_P49-P64.pdf UM09_P74-79.pdf UM09_P84-91.pdf UM09_P93-103.pdf
  • 7. pdf データの入手(DownThemAll!) ● Fx で”DownThemAll!” も便利 – このページにある*.pdf なリンクを全部ダウ ンロードなど
  • 8.
  • 9. 制限の掛かっているファイルの場合 解除 ● 制限が掛かっていると結合とか出来なかったり するので一旦ps にしてpdf に戻して制限を解 除. pdftops -upw '' file.pdf ps2pdf file.ps ● ※グレーな気がするけど私的利用なら問題ない? ● ※UbuntuMagazine はこの処理は必要ない
  • 10. 結合(pdftk) ● $ pdftk UM09_P2-21.pdf UM09_P22-27.pdf UM09_P28-33.pdf UM09_P34-41.pdf UM09_P42-47.pdf UM09_P49-P64.pdf UM09_P66-73.pdf UM09_P74-79.pdf UM09_P80-83.pdf UM09_P84-91.pdf UM09_P92.pdf UM09_P93-103.pdf UM09_P104-111.pdf UM09_P112-119.pdf cat output UM09.pdf ● 「UM09.pdf」 というファイルにまとめられた. ● ※ワイルドカードも使えるが並び順が期待したものにならないこ ともある
  • 11. 注意書きが沢山あって邪魔 ● 「ご利用になる前に必ずお読みください」と いう注意書きページがファイル毎の先頭ペー ジにあって一寸邪魔. ● 1つ目の記事以外の先頭ページを消してみる. (先頭ページ以外を残す) pdftk file.pdf cat 2-end output file_cut.pdf p1 p2 p2 p3 p3 p p p4 p4
  • 12. $ cat cut while(<DATA>){ chomp; `pdftk $_ cat 2-end output $_.pdf`; } _DATA_ UM09_P22-27.pdf UM09_P28-33.pdf UM09_P34-41.pdf UM09_P42-47.pdf UM09_P49-P64.pdf UM09_P66-73.pdf UM09_P74-79.pdf UM09_P80-83.pdf UM09_P84-91.pdf UM09_P92.pdf UM09_P93-103.pdf UM09_P104-111.pdf UM09_P112-119.pdf
  • 13. 実行 $ perl cut 結合 pdftk UM09_P2-21.pdf UM09_P22-27.pdf.pdf UM09_P28-33.pdf.pdf UM09_P34-41.pdf.pdf UM09_P42-47.pdf.pdf UM09_P49-P64.pdf.pdf UM09_P66-73.pdf.pdf UM09_P74-79.pdf.pdf UM09_P80-83.pdf.pdf UM09_P84-91.pdf.pdf UM09_P92.pdf.pdf UM09_P93-103.pdf.pdf UM09_P104-111.pdf.pdf UM09_P112-119.pdf.pdf cat output UM09.pdf https://plus.google.com/u/0/103792214056489833385/posts/YJH3DFeEMou のコメントで@emasakaさんに中間ファイル要らない方法を教えてもらう
  • 14. jpeg にしてみる ● まとめたpdf は64MB 程.Evernote 確か50MB 迄なので添 付できない(勘違い100MB 迄OK) ● 72dpi のjpeg にしてまとめてみたら11MB ちょい.でも荒 くて読めない. ● 150dpi で40MB ちょい.これなら読める. $ pdftoppm UM09.pdf UM09 -jpeg -r 150;tar cvzf UM09.cbz UM09*.jpg $ ls -l UM09.cbz rw-r--r- 1 mk mk 40605087 3月 10 14:14 UM09.cbz ● ※jpeg やcbz の場合はMComix が便利.(開発の止まった Comix のフォーク)
  • 15. 発表後 @naru0gaさんから“O'Reilly Japan - PDF構造解説”に色々載っ てるよ http://www.oreilly.co.jp/books/9784873115498/ PDF Chain というpdftk の皮があるよ“PDF Chain Project Page - Welcome” http://pdfchain.sourceforge.net/ $ sudo apt-get install pdfchain (Debian Wheezy) とか教えてもらう. ● 今回の件をpdfchain で試してみた https://plus.google.com/u/0/103792214056489833385/posts/JnsPuTFJJZ