天地有情

[LaTeX] pdfoverlay --- PDF上にテキストなどを重ねる

§1 はじめに

pdfoverlayパッケージは既存のPDFを使用して,注釈やPDFをオーバーレイするテキストを簡単に追加することができます.
これは,PDFにコメントを追加したり,PDFフォームに記入したり,メモをスペースが残っているPDFにテキストを追加したり
する場合です.このパッケージは,これを行うためのシンプルなインターフェイスを提供します.


1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/pdfoverlay )から
ダウンロードしてください.

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc pdfoverlay を実行するか,
上記に同梱の pdfoverlay.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {pdfoverlay}
  を記述します.

2.2 コマンド

● \pdfoverlaySetPDF{<PDF filename>}
  テキストをオーバーレイする<PDF filenames>を指定します.この関数を最初に呼び出さなければなりません.
  プリアンブルまたは文書本体の任意のポイントで使用できます.

● \pdfoverlaySetGraphicsOptions{<Options>}
  PDFの各ページが出力されるときに\includegraphicsに渡す<Options>を設定します.
  有効なオプションについては,graphicxパッケージのマニュアルを参照してください.

● \pdfoverlayIncludeToPage{<page number>}
  PDFファイル内のすべてのページを,指定された<page number>まで出力します.

● \pdfoverlayIncludeToLastPage
  残りのすべてのページをPDFファイルに出力します.

● \pdfoverlaySkipToPage{<page number>}
  指定された<page number>にスキップします.

● \pdfoverlayPauseOutput
  PDFファイルからページを出力することを一時停止します.後続のテキストは空白ページに出力されます.

● \pdfoverlayResumeOutput
  PDFファイルからページを出力することを再開します.


§3 サンプル

(1)既存PDFのソースファイル(wagahai.tex)

■■■■■■■■■■■■■■■■■■■
\documentclass[a5paper]{ltjsarticle}
\usepackage{bxjalipsum}
\pagestyle{empty}
%
\begin{document}
\jalipsum[1-20]{wagahai}
\end{document}
■■■■■■■■■■■■■■■■■■■

lualatex wagahai.tex
としてコンパイルすると,1-8ページの wagahai.pdf が生成されます.
 
 
 
(2)オーバーレイするソースファイル(overlay.tex)

上記で生成された wagahai.pdf を取り込み
lualatex overlay.tex として,コンパイルし,オーバーレイします.

■■■■■■■■■■■■■■■■■■■
\documentclass[a5paper]{ltjsarticle}
\usepackage{pdfoverlay}
\usepackage{at}
\pdfoverlaySetPDF{wagahai.pdf}
%
\begin{document}
\pdfoverlayIncludeToPage{2}% 2page目に画像をoverlay
\at(5cm,10cm){%
\includegraphics[width=3cm]{blackcat.png}}

\pdfoverlaySkipToPage{5}% 5pageまでスキップ

\pdfoverlayIncludeToPage{5}% 5page目にテキストをoverlay
\at(5cm,10cm){%
\Huge \color{red}{吾輩は猫である}}

\pdfoverlayIncludeToLastPage
\end{document}

(注)at.sty は拙著ブログ(at.sty --- 任意の位置にテキストを配置する)をご一読ください.

■■■■■■■■■■■■■■■■■■■

1page目はそのまま出力し,
2page目に画像をオーバーレイし,
5page目にスキップし,
5page目にテキストをオーバーレイし,
6,7,8pageはそのまま出力されます.

page数は新しく 1~6page が付与されます.
新しいページの2page目に画像がオーバーレイされ,
3page目にテキストがオーバーレイされます.

pdfoverlay01.png



(EOF)

  1. 2018/06/03(日) 08:35:45|
  2. LaTeX Tools

[LaTeX] circuitikz --- TikZで電気回路図を描く

§1 はじめに

circuitikzパッケージには,電気回路図を組み立てるための一連のマクロが用意されています.
これは使い易い構文で,PDF出力形式を直接サポートするツールとして設計されています.(lualatex, xelatex)

1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/circuitikz )から
ダウンロードしてください.

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc circuitikz を実行するか,

上記に同梱の circuitikzmanual.pdf をお読み下さい.


§2 使い方

2.1プリアンブルに
  \usepackage {circuitikz}

  を記述します.

2.2 代表的な書式

■■■■■■■■■■■■■■■■■■■■■■■■
\documentclass[a4paper]{scrartcl} %{article}可
\usepackage[siunitx]{circuitikz}
\sisetup{load=derived}
\usepackage{showexpl}
%
\begin{document}
 \begin{LTXexample}[pos=t,varwidth=true]
  \begin{circuitikz}[scale=nnn]
   <Contents>
  \end{circuitikz}
 \end{LTXexample}
\end{document}
■■■■■■■■■■■■■■■■■■■■■■■■

コンパイルは xelatex または lualatex(luajitlatex) で行います.


§3 サンプル

電気部品などのシンボルおよびExamples はマニュアルをご覧ください.
ここでは,簡単なサンプルのみを掲載します.(コンパイルは luajitlatex で行っています)


(1)電気回路

circuitikz01.png



(2)論理回路

circuitikz02.png



(3)トランジスタ回路

circuitikz03.png



(4)オペアンプ回路

circuitikz04.png



(EOF)
  1. 2018/05/29(火) 10:16:49|
  2. LaTeX Tools

[LaTeX] VisualPSTricks --- 画像に基づくPSTricksのビジュアルヘルプ

§1 はじめに

最小のテキストの画像に基づくPSTricksのビジュアルヘルプであり,
コマンドまたはパラメータごとの画像集です.

なお, TeX Wiki PSTricks をもご一読ください.



1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/visualpstricks )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc VisualPSTricks を実行するか,
上記に同梱の VisualPSTricks.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {pst-all}
  を記述します.

2.2 代表的な書式

(1)書式
    ■■■■■■■■■■■■■■■■■■■■■■■■
    \documentclass[a4paper,10pt]{scrartcl} % article でも可.
    \usepackage{pst-all}
    \usepackage{graphicx}
    %
    \begin{document}
    \begin{psgraph}[環境オプション]
     <コマンド>
     <コマンド>
     ・・・
    \end{psgraph}
    \end{document}
    ■■■■■■■■■■■■■■■■■■■■■■■■

(注)コンパイルは同梱の README.txt によれば DVI -> PS -> pdf が推奨されています.即ち,
    a) latex foo.tex
    b) dvips foo.dvi
    c) ps2pdf foo.ps

   なお,\documentclass[a4paper,10pt]{jsarticle}でも可能です.
   この場合,コンパイルは,
    a) platex foo.tex
    b) dvips foo.dvi
    c) ps2pdf foo.ps


§3 サンプル

豊富なサンプルはマニュアルに満載されています.
ここでは,基本的なサンプルのみを掲載します.

(1)\psline, \psdots, \pspolygon

visualpstricks1.png



(2)\psframe, \psdiamond, \pstriangle

visualpstricks2.png



(3)\pscircle, \psarc, \psarcn

visualpstricks3.png



(4)\psellipse, \pselliparc, \psellipticarcn

visualpstricks4.png



(5)\pscurve, \psccurve, \psecurve

visualpstricks5.png



(6)\pswedge, \psarc, \psbezier

visualpstricks6.png



(7)\qline, \qdisk, \psparabola

visualpstricks7.png


(EOF)

  1. 2018/05/23(水) 09:31:55|
  2. LaTeX Tools

[LaTeX] VisualTikZ --- 画像に基づくTikZのビジュアルヘルプ

§1 はじめに

最小テキストの画像に基づくTikZのビジュアルヘルプであり,
コマンドまたはパラメータごとの画像集です.

なお, TeX Wiki TikZ をもご一読ください.


1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/visualtikz )から
ダウンロードしてください.

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc VisualTikZ を実行するか,
上記に同梱の VisualTikZ.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {tikz}
  を記述します.

2.2 代表的な書式・コマンド

(1)書式

    ■■■■■■■■■■■■■■■■■■■■■■■■
    \documentclass[a4paper,10pt]{ltjsarticle}
    \usepackage{tikz}
    \usepackage{....} %必要に応じて追加
    %
    \begin{document}
    \begin{tikzpicture}[環境オプション]
     <コマンド> ; %各コマンドは「;」(セミコロン)で終了
     <コマンド> ;
     ・・・ ;
    \end{tikzpicture}
    \end{document}
    ■■■■■■■■■■■■■■■■■■■■■■■■

(注)コンパイルは同梱の README.txt によれば lualatex が推奨されています.

   なお,\documentclass[dvipdfmx,a4paper]{jsarticle}でも可能です.
   この場合,コンパイルは ptex2pdf が便利です.

(2)コマンド
    ● \draw    線を描く
    ● \draw[->]  終点/始点/両端に矢印
    ● \fill    描かれた図形の内側を塗る
    ● \filldraw  パス自身の色と内側の色をそれぞれ別に指定する

§3 サンプル

豊富なサンプルがマニュアルに満載されています.
ここでは,基本的なサンプルのみを掲載します.

(1)直線

visualtikz01.png


(2)曲線

visualtikz02.png



(3)四角

visualtikz03.png



(4)円

visualtikz04.png


(5)放物線

visualtikz05.png


(6)経路

visualtikz06.png




(EOF)

  1. 2018/05/17(木) 09:11:53|
  2. LaTeX Tools

[LaTeX] tikzsymbols --- TikZを使用して作成されたシンボル

§1 はじめに

tikzsymbolsパッケージには,さまざまな絵文字,料理シンボル,ツリーが用意されています.
なお,パッケージmarvosymをロードすることもできますが,割愛します.

1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/tikzsymbols )から
ダウンロードしてください.

TeXLive/W32TeX などには標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc tikzsymbols を実行するか,
上記に同梱の tikzsymbols.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {tikzsymbols}
  を記述します.

2.2 コマンド

さまざまな絵文字などのコマンドは,マニュアル(tikzsymbols.pdf)を参照ください.

§3 サンプル

代表的なものを挙げておきます.

(1)料理絵文字

tikzsymbols01.png



(2)通常の絵文字

tikzsymbols02.png



(3)3Dの絵文字

tikzsymbols03.png


(EOF)
  1. 2018/05/15(火) 12:25:26|
  2. LaTeX Tools

[LaTeX] blowup --- ドキュメントのすべてのページを拡大または縮小する

§1 はじめに

blowupパッケージは、ユーザーレベルのマクロ \blowUp のみが定義されています.
これは,文書のすべてのページを拡大または縮小するために使用できます.
また,TeXプリミティブ\magnificationに似ていますが,より正確で使いやすいものです.

\blowUpは,普通のサイズの文書からのポスターの作成や,準備が整っているタイプセット文書の
さまざまな種類の細かな調整に役立ちます.


1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/blowup )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc blowup を実行するか,
上記に同梱の blowup.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage {blowup}
  を記述します.

2.2 コマンド

● \blowup{target=<用紙サイズ指定>}

§3 サンプル

(1)A4サイズ → A5サイズ に縮小化

blowup01.png


■■■■■■■■■■■■■■■■■■■■■■■■■■■■
\documentclass[a4paper,10pt]{ltjsarticle}
\usepackage{graphicx,xcolor}
\usepackage{bxjalipsum}
\parindent=0pt
\usepackage{blowup}
\blowUp{target=a5,pos=c} % a4→a5に縮小化
%
\begin{document}
\Large %フォントサイズ調整
\jalipsum[1-4]{wagahai}

\bigskip

\includegraphics[scale=.2]{tiger.pdf}
% 画像サイズ調整
\end{document}

■■■■■■■■■■■■■■■■■■■■■■■■■■■■



(2)A5サイズ → B5jサイズ に拡大化

   (「B5j」を指定するとエラーになるので寸法 {182mm,257mm} を記述する)

blowup02.png


■■■■■■■■■■■■■■■■■■■■■■■■■■■■
\documentclass[a5paper,10pt]{ltjsarticle}
\usepackage{graphicx,xcolor}
\usepackage{bxjalipsum}
\parindent=0pt
\usepackage{blowup}
\blowUp{target={182mm,257mm},pos=c} % a5→b5jに拡大化

%
\begin{document}
\small %フォントサイズ調整
\jalipsum[1-4]{wagahai}

\bigskip

\includegraphics[scale=.15]{tiger.pdf}
% 画像サイズ調整
\end{document}
■■■■■■■■■■■■■■■■■■■■■■■■■■■■



(EOF)

  1. 2018/05/10(木) 09:09:27|
  2. LaTeX Tools

[LaTeX] tikzducks --- アヒルを使用するための楽しいパッケージ

§1 はじめに

tikzducksパッケージは,TikZの画像で使用されるアヒル用のLaTeXパッケージです。


1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/tikzducks )から
ダウンロードしてください.

TeXLive/W32TeX には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc tikzducks を実行するか,

上記に同梱の tikzducks-doc.pdf をお読み下さい.


§2 使い方

2.1プリアンブルに
  \usepackage {tikzducks}
  を記述します.

2.2 コマンド

● \duck[<shape name>=<color name>]
  <shape name>は
  body, head, bill, eye
  などです.

§3 サンプル

(注)マニュアル(tikzducks-doc.pdf)に豊富なサンプルがあります.ご一読ください.
   ここでは,その一部を掲載します.

アヒルの様々な部位( body, head or bill(くちばし))は,独立して着色することもできます.

(1)基本的なアヒル(デフォルト)

tikzducks01.png


(2)body の色を変更

tikzducks02.png


(3)様々な部位の変更

tikzducks03.png


(4)hair style

tikzducks04.png



(5)服装 の色を変更

tikzducks05.png


(EOF)
  1. 2018/05/03(木) 09:29:55|
  2. LaTeX Tools

[LaTeX] pagecont --- 複数ドキュメント間で続くページ番号を付与する

§1 はじめに

pagecontパッケージは,いくつかのドキュメントが単一のドキュメントであるかのように,
ページ番号を独立してタイプセットできる機能を実装しています.

1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/pagecont )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc pagecont を実行するか,
上記に同梱の pagecont.pdf をお読み下さい.

§2 使い方

2.1プリアンブルに
  \usepackage [first] {pagecont}
  を記述します.
  [first]オプションは最初の文書のみに付け,2番目以降の文書には付けません.


§3 サンプル

(1)先ず複数のドキュメントソースを準備します.ここでは
   1.tex, 2.tex, 3.tex とします.

(2)ドキュメントソースの内容は次の通りです.

   ■ 1.tex
----------------------------------
\documentclass[a5paper]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{bxjalipsum}
\usepackage[first]{pagecont} % 1.texのみにoption[first]を付ける.
% 2.tex, 3.tex は不要です.
\begin{document}
\jalipsum [1-3] {wagahai}
\end{document}
----------------------------------
 
 
 
   ■ 2.tex
----------------------------------
\documentclass[a5paper]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{bxjalipsum}
\usepackage{pagecont}
%
\begin{document}
\jalipsum[4-5]{wagahai}
\end{document}
----------------------------------
 
 
 
   ■ 3.tex
----------------------------------
\documentclass[a5paper]{jsarticle}
\usepackage[dvipdfmx]{graphicx}
\usepackage{bxjalipsum}
\usepackage{pagecont}
%
\begin{document}
\jalipsum[6-9]{wagahai}
\end{document}
----------------------------------

(3)各々をコンパイルします.(1.tex, 2.tex, 3.tex の順にコンパイルする)

   ptex2pdf -l 1.tex
   この操作により 1.pdf(1枚) が生成され,ページ番号は 1 です.
   
   ptex2pdf -l 2.tex
   この操作により 2.pdf(2枚) が生成され,ページ番号は 2,3 です.
   
   ptex2pdf -l 3.tex
   この操作により 3.pdf(3枚) が生成され,ページ番号は 4,5,6 です.

   この3つのドキュメントにはページ番号 1 ~ 6 が付与されました.
   
   ここまでが pagecontパッケージの機能です.
   
   

(4)1.pdf, 2.pdf, 3.pdf を結合します.

   結合させるには,いろいろな PDFツールがありますが,
   ここでは, pdftk.exe を使った方法で結合させ output.pdf を出力させます.
   
   pdftk 1.pdf 2.pdf 3.pdf cat output output.pdf
   
   ページ番号は 1~6 となります.
   
   SumatraPDFで表示させ,プロパティをみると次のようになります.

pagecont01.png




(EOF)
  1. 2018/04/29(日) 15:12:50|
  2. LaTeX Tools

[LaTeX] censor --- ドキュメント内の制限されたテキストを制御する機能

§1 はじめに

censorパッケージは.制限された情報などを保護する必要のある人に,
便利な改ざん/検閲の機能を使用できるようにします.

1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/censor )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc censor を実行するか,

上記に同梱の censor.pdf をお読み下さい.


§2 使い方

2.1プリアンブルに
  \usepackage {censor}

  を記述します.

2.2 コマンド

● \sensor{...} --- 黒ボックスを付け情報が見えないようにする

● \StopCensoring --- 黒ボックスを外し情報が見えるようにする

● \blackout{...} --- 文字列ごとに黒ボックスを付ける

● \xblackout{...} --- 行ごとに黒ボックスを付ける

● \censorbox{...} --- 図や表に黒ボックスを付ける

§3 サンプル

(1)黒ボックスを付け情報が見えないようにする

censor01X.png



(2)黒ボックスを外し情報が見えるようにする

censor02.png


(3)文字列/行ごとに黒ボックスを付ける

censor03.png


(EOF)
  1. 2018/04/25(水) 18:19:08|
  2. LaTeX Tools

[LaTeX] tikz-ladder --- TikZを使ってラダー図を描画する

§1 はじめに

ラダー図(LD)は,国際標準IEC-61 131-3に記述されているプログラマブルコントローラ(PLC1)で使用される
リレー制御システムの電気配線図から進化したグラフィカルプログラミング言語です.

tikz-ladderは,IEC-61 131-3に記述されているブロック(機能ブロックと機能ブロック用),
接点およびコイルのすべての機能をサポートしています.

同類のパッケージとして,拙著ブログ(ladder --- TikZを使って簡単なラダーダイアグラムの作成)
もご一読ください.


1.1 インストール

必要に応じて,CTAN( https://ctan.org/pkg/tikz-ladder )から
ダウンロードしてください.

TeXLive には標準でインストールされています.

1.2 マニュアル

コマンドラインから texdoc tikz-ladder を実行するか,
上記に同梱の tikz-ladder-doc.pdf をお読み下さい.

§2 サンプル

(1)主なシンボル

tikz-ladder01.png


■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
\documentclass{ltjsarticle}
\usepackage{tikz,pgf}
\usetikzlibrary{circuits.plc.ladder}
\newlength{\ladderskip}
\setlength{\ladderskip}{5\tikzcircuitssizeunit}
\newlength{\ladderrungsep}
\setlength{\ladderrungsep}{.2\ladderskip}
\def\ladderrungend#1{\pgftransformyshift{-#1\ladderskip-\ladderrungsep}}

\begin{document}
\begin{tikzpicture} [circuit plc ladder,thick,
x=\ladderskip,y=\ladderskip]

\draw(0,0) to [contact NO={info={a接点}}] ++(2,0) ;
\node at (5,0){Normally open contact (NO)};

\draw(0,-1.5) to [contact NC={info={b接点}}] ++(2,0);
\node at (5,-1.5){Normally closed contact (NC)};

\draw(0,-3.0) to [coil={info={Coil}}] ++(2,0);
\node at (5,-3.0){Coil (normally deactivated)};

\draw(0,-4.5) to [coil R={info={Motor},
coil ladder curvature=0.5,
minimum size=2.4\tikzcircuitssizeunit}] ++(2,0);
\node at (5,-4.5){curvature=0.5 円形コイル};

\draw(0,-6.0) to [coil S={info={Set Coil}}] ++(2,0);
\node at (5,-6.0){Set Coil};

\draw(0,-7.5) to [coil R={info={Reset Coil}}] ++(2,0);
\node at (5,-7.5){Reset Coil};
\end{tikzpicture}
\end{document}
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■


(2)簡単な例

tikz-ladder02.png



■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
\begin{tikzpicture} [circuit plc ladder,thick,
x=\ladderskip,y=\ladderskip]
\draw(0,0)
to [contact NO={info={$a$}}] ++(1,0)
to [contact NO={info={$c$}}] ++(1,0) -- ++(1,0)
to [coil={info={$Q$}}] ++(1,0)
coordinate(laddertopright);
\draw(1,0) -- ++(0,-1)
to [contact NO={info={$d$}}] ++(1,0)
to [contact NO={info={$e$}}] ++(1,0) -- ++(0,1);
\draw(0,-2)
to [contact NO={info={$b$}}] ++(1,0) -| ++(1,1);

\ladderrungend{3}
% 左右母線を生成
\draw let \p1=(laddertopright) in
(0,\y1+0.7\ladderskip) -- (0,\ladderskip)
(\x1,\y1+0.7\ladderskip) -- (\x1,\ladderskip);
\end{tikzpicture}

\vskip2cm

\begin{tikzpicture} [circuit plc ladder,thick,
x=\ladderskip,y=\ladderskip]
\draw(0,0) to [contact NO={info={$X0$}}] ++(1,0)
to [contact NC={info={$X2$}}] ++(1,0)
to [contact NO={info={$X1$}}] ++(1,0)
to [coil={info={$Y0$}}] ++(1,0);
\draw(1,0) -- ++(0,-1)
to [contact NO={info={$Y0$}}] ++(1,0) -| ++(1,1);

\ladderrungend{2}
% 左右母線を生成
\draw let \p1=(laddertopright) in
(0,\y1+0.7\ladderskip) -- (0,\ladderskip)
(\x1,\y1+0.7\ladderskip) -- (\x1,\ladderskip);
\end{tikzpicture}
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■


(EOF)

  1. 2018/04/23(月) 13:13:32|
  2. LaTeX Tools
前のページ 次のページ