脳卒中左片麻痺になりました

twitter http://twitter.com/#!/ti5942

タグ: pdfLaTeX

とある科学の超電磁砲S<レールガン> 公式サイト:

ソースとPDF
screenshot1screenshot2


ステップ1
グリッドを表示し、各文字の位置決め、大きさ(拡大率)を設定する。
screenshot1screenshot2

数値指定では、厄介なので、最初の「と」以外はシェイプ(矩形)を利用する。
そのために、編集時には、drawオプションを付け、シェイプを表示させておく。

screenshot1screenshot2

なお、「レールガン」はひとつにまとめている。



ステップ2
赤地に白文字のものを重ね合わせる。(scope環境)
screenshot1screenshot2


ステップ3
必要なものだけ残す。(clip)
screenshot1screenshot2


注意.
「レールガン」を縦にするには




kmaed/pdffill · GitHub:
screenshot1

「特に日本語を扱いたい場合は pdflatex ではほぼ無理なので,xelatex か lualatex のどちらかが必要となります.」
→この情報は古い!
pdflatexの場合は、
(BXjscls)+ bxcjkjatype

まずは、ドキュメントpdffill.pdfを見ながら、スマホ(アンドロイド携帯)でのひとつの入力例を示す。

1.ファイルマネージャで新しいフォルダ(pdffill-test)を作成し、ここにsampleform.pdfをコピーし、新しいファイル(kaken-template.tex)を作成する。

image

2.kaken-template.texをVim Touchで開き、日本語以外のコードを書く。

imageimageimageimage

3.今度は、TeXpert Lightで開き、コンパイル、ログ確認、PDFを表示する。Cleanも行う。

コンパイル
imageimageimageimage

ログ確認
imageimage

PDF表示
imageimageimage

生成されたファイルの削除
image


4.名前を変えて保存し、日本語部分を編集する。

imageimageimageimage

ありゃま、はみ出ています。。。


ちなみに、xelatexで処理したものは
imageimageimage

ドキュメントpdffill.pdfの結果と同じになる。


(今の初心者は、UTF8しか使えない。だから、)
pdfLaTeXでも、簡単に日本語が使える!?

まあ、見栄えはよくないんだが。。。

そこで、見栄えをよくするために、「美文書」があるのだ!?


これが、「最新の流れ」だと、私は思う。
つまり、TeX Wikiの「LaTeX-CJK」は、古い立場の人が書いているので、初心者にはチンプンカンプン。。。
「pdfLaTeXでも、簡単に日本語が使える」という事実さえも伝わらない。。。
とはいっても、やっぱり「日本語のレポート作成」には不向きではある。

TikZで挿入用画像作成とか、箇条書き主体のBeamerスライドぐらいかな?
知っておくと、「TeX Liveは入っているけど、バージョンが古くて希望の図が描けない」とか、「手元にはiPadやAndroidしかない」場合などに役立つような気がする。

(1)TikZで挿入用画像作成の場合、以下の3行をプリアンブルに
\usepackage{CJKutf8}
\AtBeginDocument{\begin{CJK*}{UTF8}{min}}
\AtEndDocument{\end{CJK*}}
screenshot1screenshot2




(2)他のフォントに置き換えるときは、
\usepackage{CJKutf8}
\pdfmapline{unisong@Unicode@ < ipaexm.ttf}
\AtBeginDocument{\begin{CJK*}{UTF8}{zhsong}}
\AtEndDocument{\end{CJK*}}
screenshot1

(3)レポートで、「しおり」を付けたいときは
実験レポート:文書情報が文字化けしない hyperref の設定(1) - マクロツイーター:
実験レポート:文書情報が文字化けしない hyperref の設定(2) - マクロツイーター:
考察:文書情報が文字化けしない hyperref の設定 - マクロツイーター:

screenshot1screenshot2



(4)いわゆる「目次」(toc,tableofcontets)の場合は
screenshot1screenshot2


bookmarkstype=toc,bookmarks=falseのように、「しおり」は出力しないようにしないとNG。
CJKutf8はNG
タイトル、著者名はプリアンブルでは、出力されない。。。
等の不具合が起きる

(5)ところが、Beamerの場合は、CJKutf8でないとうまくいかない。
screenshot1screenshot2screenshot3screenshot4

ちなみに、PDF情報もちゃんとセットされます。
screenshot1

さらに、dvipdfmxを使うなら、今は
Beamer は dvipdfmx をサポートするか否か? (2) - マクロツイーター:

クラスオプションに指定するドライバは、「dvipdfm」ではなく、「dvipdfmx」のほうである。

ちなみに、高度なアニメーションは「dvipdfm」でもOK
Screenshot_from_2013-04-18 16:14:27Screenshot_from_2013-04-18 16:15:03Screenshot_from_2013-04-18 16:15:20
「dvipdfm」では、たとえば、TikZ図パターンはNG。(左)「dvipdfm」、(右)「dvipdfmx」
screenshot1screenshot2

TikZ は dvipdfmx をどこまでサポートするか? (1) - マクロツイーター:
screenshot1

ちなみに、この記事の最後には以下のことが書かれている。
*******
補足:XeTeX について

XeTeX の現状のドライバ(pdfsys-xetex.def)は(古い)dvipdfm のドライバと同程度の機能しか提供していない。しかし、XeTeX は「dvipdfmx の拡張版」を用いて PDF 生成を行っているので、dvipdfmx 用のドライバとほぼ同じ実装で同等の機能が実現できるはずである。PGF 開発のサイトSourceForge)を見ると、ごく最近(2012 年 11 月)に XeTeX 用ドライバの更新が行われていることが解る。(参照:レポジトリML)これがリリースされれば、XeTeX でも PGF/TikZ のほぼ完全な機能が使えることになるだろう。

********

Texpad(iPad)の場合は、残念ながらNG。。。
おそらくタイムオーバー。オンラインだからな。前のテストでは文字数が少なくてうまくいったのだろう。
画像2

TeXPortalは、オフラインでもOK!
画像1

ここで、新たなる事実が判明!
パソコンでの結果をみてみよう。

screenshot1screenshot2screenshot3

Beamerクラスでは、AtBeginDocument、AtEndDocumentが使えたが、articleクラスでは使えないな(^_^;)

実は、エンジンがpdfLaTeXのときは、includegraphicsのオプションに「bb=1 2 3 4」を入れると、以下のようなワーニングが出る。
*********
Package pdftex.def Warning: Option `bb' does not make sense,
(pdftex.def)                using `viewport' instead on input line 32.
*********

ま、当然と言えば当然か。。。

書き換えたところで、前記事のAdobe Readerの不具合は直りませんよ(´;ω;`)

前記事において
platex→dvipdfmx
screenshot1screenshot2

xbbの情報では
\includegraphics[page=6,width=5cm,clip]{sample2.pdf}

\includegraphics[width=5cm,clip]{sample2.pdf}

と書きました。
xbbの情報をみてみると。。。

screenshot1

ということだから、
\includegraphics[bb=0 0 595 842,page=6,width=5cm,clip]{sample2.pdf}

\includegraphics[bb=0 0 595 842,width=5cm,clip]{sample2.pdf}
と書いても同じことです。
1ページだけのものを例に
screenshot1screenshot2

このbbを
bb=155.212308 348.251544 439.367682 476.963985
にすれば
screenshot1screenshot2
となります。
さて、gvで元ネタのPDFを開いて、マウスを動かすと左上3つめの数字が変わります。
Screenshot_from_2012-12-04 06:16:55Screenshot_from_2012-12-04 06:17:12

Variable Sizeはそれぞれ
241x349、299x406
となっているので、
bb=241 349 299 406とすると。。。
screenshot1screenshot2
これで、画像の一部(指定した矩形領域)を取り込むことができるのですが。。。
少し面倒です。
なんとかならないものかな?

screenshot1

で試してみる。(xbbファイルは作成済み)

まずは、bbox情報取得
screenshot1

pdflatex
screenshot1screenshot2

platex→dvipdfmx
screenshot1screenshot2

アチャー、ページを振っていたか(^_^;)
「pdfcrop」を利用してたときもよくやったミスだな(´;ω;`)

ページを振らないように修正
screenshot1screenshot2
再度、bbox情報取得
screenshot1screenshot2

screenshot1screenshot2

screenshot1screenshot2

これは、どういうことかというと。。。
複数ページのPDFで、全ページの大きさが同じなら、
dvipdfmxで、xbbファイルを利用した画像の取り込みは、pdflatexでの画像の取り込みと同じということ!

しかし、複数ページのPDFで、全ページの大きさは同じというわけではない!
そこで、取り込むPDFは、単ページのPDFだけにしてやると。。。
「dvipdfmxで、xbbファイルを利用した画像の取り込みは、pdflatexでの画像の取り込みと同じということ!」
ということになる。

一方、bbox情報によるものは、「pdfcrop」につながる。
実際、「pdfcrop」は、どのような処理をしているか?気になるところだ。



screenshot1
このページを取り込みましょう!

まずは、pdflatexで
screenshot1screenshot2

次にplatex+dvipdfmx
screenshot1screenshot2

う〜む。。。
1ページ目も挿入してみる。
screenshot1

screenshot1screenshot2

pdflatexではどうだろうか?
screenshot1screenshot2


xbb情報によれば、6ページ目も1ページ目も枠の大きさは同じ。
bbox情報によるものと、pdflatexでタイプセットしたものは似ているようだが。。。

(続く。。。)

(1)【pdflatex】
CJK LaTeX?
ucs パッケージを使う
Lucasのテンプレート
http://pastebin.com/tasDkhZ3

*****

issue 52 « Full Circle Magazine:
A blog post by Chris on Japanese:
http://blog.mindfall.net/?p=221

(2)【xelatex】
\usepackage{tikz}の前に

\usepackage{xltxtra}
\setmainfont{TakaoEx明朝}

(3)【platex】
jsarticle
\usepackage{tikz}の前に

\def\pgfsysdriver{pgfsys-dvipdfmx.def}
previewのドライバをxetexにする

PDF作成後、pdfcropが必要

*****
(1)pdflatex
screenshot1screenshot2screenshot3



screenshot1

(2)xelatex
screenshot1screenshot2



screenshot3

(3)platex+dvipdfmx+pdfcrop
screenshot1screenshot2



screenshot3screenshot4

以前の記事はしおり(Bookmark)だけでしたが、今回は目次(Contents)も付けます。
なお、しおり(Bookmark)のつけ方も変更しました。

テキストはUbuntu Magazine Japan vol.01
まず、複数のPDFをひとつのPDFにするのはpdfLaTeXで行ないました。
XeLaTeXでは、時間がかなりかかるみたいです。

ソースUMJ01.tex
*****
p, li { white-space: pre-wrap; }

\documentclass[a4paper]{article}

\usepackage{pdfpages}

\pagestyle{empty}

\begin{document}

\title{Ubuntu Magazine Japan}

\author{vol.01}

\maketitle

 

\includepdf[pages={{},{},{},{},2-}]{ubumag-vol01-P6-25}

\includepdf[pages={2-}]{ubumag-vol01-P26-40}

\includepdf[pages={2-}]{ubumag-vol01-P41-51}

\includepdf[pages={2-}]{ubumag-vol01-P52-83}

\includepdf[pages={2-}]{ubumag-vol01-P84-85}

\includepdf[pages={2-}]{ubumag-vol01-P86}

\includepdf[pages={{},2-}]{ubumag-vol01-P88-93}

\includepdf[pages={2-}]{ubumag-vol01-P94-97}

\includepdf[pages={2-}]{ubumag-vol01-P98-103}

\includepdf[pages={2-}]{ubumag-vol01-P104-107}

\includepdf[pages={2-}]{ubumag-vol01-P108-113}

\includepdf[pages={2-,1}]{ubumag-vol01-P114-129}

 

\end{document}

*****
pdflatexで、クレジットページがラストページのみのUMJ01.pdfになります。

次にソースUMJ01XE.tex
*****
p, li { white-space: pre-wrap; }

\documentclass[a4paper]{article}

\usepackage{pdfpages}

\usepackage{bookmark}

\usepackage{myjapanese}

\def\contentsname{目 次}

\pagestyle{empty}

\begin{document}

\title{Ubuntu Magazine Japan}

\author{vol.01}

\date{2009 年 12 月15 日 }

\maketitle

\newpage

 

\tableofcontents

 

\includepdf[pages={3-5}]{UMJ01}

\includepdf[pages={6-25},addtotoc={6,section,1,Ubuntuのソボクな疑問50さくっと解決! ,page6}]{UMJ01}

\includepdf[pages={26-40},addtotoc={26,section,1,Ubuntu+αでネットブック超活用ガイド ,page26}]{UMJ01}

\includepdf[pages={41-51},addtotoc={41,section,1,うぶんちゅ!「第五話ビッグシスター秋波参上!」 ,page41}]{UMJ01}

\includepdf[pages={52-83},addtotoc={52,section,1,Ubuntuがズバッとわかる!基本用語256 ,page52}]{UMJ01}

\includepdf[pages={84-85},addtotoc={84,section,1,うぶんちゅ友達の輪 ,page84}]{UMJ01}

\includepdf[pages={86},addtotoc={86,section,1,Ubuntu情報ソース ,page86}]{UMJ01}

\includepdf[pages={87}]{UMJ01}

\includepdf[pages={88-93},addtotoc={88,section,1,ネットウォーカー徹底研究!! ,page88}]{UMJ01}

\includepdf[pages={94-97},addtotoc={94,section,1,発掘!お宝アプリ Viva! Ubuntu!!,page94}]{UMJ01}

\bookmark[page=94,level=2]{Ubuntu Tweak}

\bookmark[page=96,level=2]{VLC media player}

\bookmark[page=97,level=2]{StarDict}

\includepdf[pages={98-103},addtotoc={98,section,1,動かし隊が行く なんでもUbuntuで使いたい! ,page98}]{UMJ01}

\includepdf[pages={104-107},addtotoc={104,section,1,Ubuntu9.10アーリープレビュー ,page104}]{UMJ01}

\includepdf[pages={108-113},addtotoc={108,section,1,Ubuntu Load Test ,page108}]{UMJ01}

\includepdf[pages={114-129},addtotoc={114,section,1,自宅サーバで快適Ubuntu生活 ,page114}]{UMJ01}

\includepdf[pages={130},addtotoc={130,section,1,クレジット ,page130}]{UMJ01}

 

 

\end{document}


*****
xelatexすると、
Screenshotpdf

このページのトップヘ