こちらはWindowsユーザーです。
早速試してみたのですが
\documentclass[uplatex]{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[nup=2x1,pages=-]{test.pdf}
\end{document}
とやっても白紙のpdfページが出力されてしまいます。
\documentclass[dvipdfmx]{jsarticle}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={3,5,7},lastpage=9]{test.pdf}
\end{document}
とやるとpdfファイルすら出力されません。
一体何が原因でしょうか?
祝鳥はuplatexに設定してあります。
よろしくお願いいたします。
原因が分かりました。
なぜか祝鳥を使った時にuplatexでdvipdfmxを使えないようになっていました。
原因不明です。
バッチファイルを使うと普通にうまくいきました。
使っていて気になったのですが
元のpdfファイルにアルファチャンネルを含む画像が含まれていた場合
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
を入れていたとしても
pdfpagesでもそれぞれのページに入れないと
色がCMYKになってしまうようです。
となると毎回全ページ数を調べた上で
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
\includepdf[nup=1x2,landscape=true,pages=1-2]{test.pdf}
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
\includepdf[nup=1x2,landscape=true,pages=3-4]{test.pdf}
・・・
とforループで入れていくしかないでしょうか?
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
\includepdf[nup=1x2,landscape=true,pages=-]{test.pdf}
のようにして一括で入れる
ことはできないでしょうか?
ありがとうございます。
検索して
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?dvipdfmx
ここの解説ページを見つけました。
早速bophook.styを
https://www.ctan.org/tex-archive/macros/latex/contrib/bophook
からDLして入手しました。
通常であればstyファイルは
C:\w32tex\share\texmf\tex\latex
に入れれば自動的に読み込めるのですが
なぜかbophook.styの場合には読み込ません。
texファイルと同じフォルダーに入れると読み込めたのですが
下記のエラーが出てpdfファイルが出力されません。
! Undefined control sequence.
\@begindvi ...box \ifHy@pageanchor \@hyperfixhead
\BH@originprint \global \l...
l.13 ...[nup=1x2,landscape=true,pages=-]{test.pdf}
?
texファイルは以下のようにしています。
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage[dvipdfmx]{hyperref}
\usepackage{pdfpages}
\usepackage{bophook}
\begin{document}
\AtBeginPage{
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
}
\includepdf[nup=1x2,landscape=true,pages=-]{test.pdf}
\end{document}
\AtBeginDocument{
も試してみましたが駄目でした。
何が問題でしょうか?
ありがとうございます。
「mktexlsr」を実行してみました
以下のメッセージが表示されて実行は成功したようなのですが
mktexlsr: Updating C:/w32tex/share/texmf-project/ls-R...
mktexlsr: Updated C:/w32tex/share/texmf-project/ls-R.
mktexlsr: Updating C:/w32tex/share/texmf-context/ls-R...
mktexlsr: Updated C:/w32tex/share/texmf-context/ls-R.
mktexlsr: Updating C:/w32tex/share/texmf-fonts/ls-R...
mktexlsr: Updated C:/w32tex/share/texmf-fonts/ls-R.
mktexlsr: Updating C:/w32tex/share/texmf-local/ls-R...
mktexlsr: Updated C:/w32tex/share/texmf-local/ls-R.
mktexlsr: Updating C:/w32tex/share/texmf-dist/ls-R...
mktexlsr: Updated C:/w32tex/share/texmf-dist/ls-R.
mktexlsr: Done.
続行するには何かキーを押してください . . .
やはりtexファイルと同じフォルダーにbophook.styをいれていないと
うまく読み込めません。
なぜでしょうか?
それとは別に、bophook.styを同じフォルダーに入れていたとしても
上記で説明したエラーが出てpdfファイルを出力することができないのですが
なぜでしょうか?
> 上記で説明したエラーが出てpdfファイルを出力することができないのですが
> なぜでしょうか?
不要な hyperref を読み込んでいるからだと思われます:
以下の場合,こちらでは成功しました。
\documentclass[dvipdfmx,uplatex]{jsarticle}
\usepackage{pdfpages}
\usepackage{bophook}
\AtBeginPage{
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
}
\begin{document}
\includepdf[nup=1x2,landscape=true,pages=-]{test.pdf}
\end{document}
(1) 祝鳥の,コンパイル時に環境変数を設定する機能を使う.メインメニュー→プログラム設定→環境にあります.
http://www.math.sci.hokudai.ac.jp/~abenori/soft/chm/fortex/compile/env.html
もご覧ください.
(2) Kpathsea の変数として設定する.
https://oku.edu.mie-u.ac.jp/~okumura/texwiki/?texmf.cnf%20%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB
をご覧ください.
(3) システムの環境変数としてCOMMAND_LINE_ENCODINGの値を設定する.
まだ platex も使うことがある場合は,
(1) 祝鳥の,コンパイル時に環境変数を設定する機能を使う.
がお勧めです。
uplatex しか使わない場合は,配布状態の設定を打ち消すため
(2) Kpathsea の変数として設定する
を使う方法を説明します。
c:/w32tex/share/texmf-local/web2c/texmf.cnf
という名前のファイルを作って下さい。
そのファイルに次の 3 行を書いて,保存して下さい:
command_line_encoding = utf8
command_line_encoding.dvipdfmx = utf8
command_line_encoding.dvips = utf8
もちろん (3) の方法でシステムの環境変数を
COMMAND_LINE_ENCODING=utf8
に設定しても OK です。
ありがとうございます。
納得いきました。
連続質問してしまい、申し訳ありませんが
下記の二つに関しても教えていただけないでしょうか?
・いままで使ってきたstyファイルは
C:\w32tex\share\texmf\tex\latex
のフォルダーに入れることで使うことができました。
しかしbophook.styだけは例外で上記フォルダーでは認識されず
C:\w32tex\share\texmf-local\tex\latex
に入れると認識されました。
なぜbophook.styだけ例外なのでしょうか?
そしてどちらのフォルダーに入れれば良いかはどこを確認すれば分かることなのでしょうか?
・それと
pdfpages、bophookを同時に使う方法は分かったのですが
普通のtexファイルからpdfファイルへの変換でも
bophookを使いたいと考えています。
以下のようにプリアンブルを書いてみたのですが
エラーが出てしまいます。
恐らく、上記の問題と同様にdvipdfmxが被っているからだと思います。
しかしdvipdfmxを消してしまうと画像を取り込むことができなくなってしまいます。
どうすれば良いでしょうか?
\documentclass[uplatex]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{geometry}
\usepackage[dvipdfmx,usenames]{color}
\usepackage{boxedminipage}
\usepackage{lastpage}
\usepackage[dvipdfmx]{hyperref}
\usepackage{ascmac}
\usepackage{pxjahyper}
\usepackage[space]{grffile}
\grffilesetup{
encoding,
inputencoding=utf8,
filenameencoding=utf8,
}
\usepackage{bophook}
\AtBeginPage{
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
}
\hypersetup{pdfstartview={XYZ null null 1.00}}
\geometry{left=20mm,right=20mm,top=6mm,bottom=18mm}
\makeatletter
\def\ps@plain{\let\@mkboth\@gobbletwo
\def\@oddfoot{\hfill ---\ \footnotesize{\thepage/\pageref{LastPage}}\ --- \hfill}
\def\@evenfoot{}\let\@evenfoot\@oddfoot}
\makeatother
hyperref を最後に読んだらどうですか? 何だか知りませんが
以下はこちらでは通ります:
\documentclass[uplatex]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{geometry}
\usepackage[dvipdfmx,usenames]{color}
\usepackage{boxedminipage}
\usepackage{lastpage}
\usepackage{ascmac}
\usepackage[space]{grffile}
\grffilesetup{
encoding,
inputencoding=utf8,
filenameencoding=utf8,
}
\usepackage{bophook}
%
%
\usepackage[dvipdfmx]{hyperref}
\usepackage{pxjahyper}
%
%
\AtBeginPage{
\special{pdf:put @thispage << /Group <</S /Transparency /I true /CS /DeviceRGB >> >>}
}
\hypersetup{pdfstartview={XYZ null null 1.00}}
\geometry{left=20mm,right=20mm,top=6mm,bottom=18mm}
\makeatletter
\def\ps@plain{\let\@mkboth\@gobbletwo
\def\@oddfoot{\hfill ---\ \footnotesize{\thepage/\pageref{LastPage}}\ --- \hfill}
\def\@evenfoot{}\let\@evenfoot\@oddfoot}
\makeatother
\begin{document}
This is a test.
\end{document}
ありがとうございます。
コンパイルの方はうまくいきました。
ディレクトリーの方に関してなのですが
例えば、pxjahyperですが
share/texmfに入れたつもりなのですが
検索するとなぜか
share/texmf-dist
にも入っていることがわかりました。
share/texmf-distに入っているファイルを削除すると
コンパイルに失敗しました。
これってどこかの段階で自動で
share/texmf-dist
にコピーする機能があるのでしょうか?
あと、以前から気になっていたのですが
TeXのフォルダーにはたくさん同じような名称のフォルダーが入っていますが
どのように使い分ければ良いですか?
http://vinelinux.org/docs/vine6/tex-guide/texmf.html
検索すると
・TeX 関連パッケージによる影響の有無
・updmap/texconfig による影響の有無
がそれぞれ異なるということは分かったのですが
いまいち使い分け方が分かりません。
もっとも最初に読み込まれるshare/texmf-configに入れておいた方が良いということはないのでしょうか?
> コンパイルに失敗しました。
> これってどこかの段階で自動で
> share/texmf-dist
> にコピーする機能があるのでしょうか?
ないです。
texmf-dist は、TeX のディストリビューター(配布者)が標準で入れておきたいと考えたパッケージの置き場です。
myu myo さんがお使いの W32TeX の場合は Akira Kakuto さんが配布者ですので、Akira Kakuto さんが入れてくださっているパッケージは予め入っているのです。
ちょっと前には少数しか入っていない時代もありましたが、W32TeX も少しずつパッケージの標準収録数が増大し、前はなかったものがだんだん入ってきているのです。
pxjahyper もその中の一つでしょう。
texmf-dist は配布者以外が弄らないのが好ましいです。
ユーザの方は基本的に texmf-local をお使いください。
TeX Wiki の「TeX のディレクトリ構成」というページも参照してください。