Re: 2ページにまたがる文字のカラー出力

名前: しっぽ愛好家
日時: 2003-01-12 10:19:20
IPアドレス: 210.230.96.*

>>14965 >DVI側から、と書いたのは color special の例で言うと、TeX では望まれる >(ページ独立な)DVIファイルを作成するのが困難のため、TeXで生成された >DVIファイルに再度別のフィルタを通して、望まれるDVIに書き直す、 >という意味です。 その意味で読んでいました. 一方,下記のような処理も可能ではあるのですが, 他のパッケージの処理と衝突することが容易に想像できます. %%% そこで,適切なフィルタがあれば好都合と思われます. \documentclass{jarticle} %%% twocolumn オプション使用時には fixltx2e パッケージも用いてください. %%% \usepackage{fixltx2e} \usepackage[dvips]{color} \makeatletter % %%% \@outputpage の書き換え \long\def\@tempa#1\vbox#2#3\@nnil{% \toks0{\@get@color@stacks #1}\toks4{#3}% \@tempb#2\@nnil \edef\@outputpage{% \the\toks0% \vbox{\the\toks2 \noexpand\@pop@color@stack}% \the\toks4 \let\noexpand\topmark\noexpand\botmark}% \let\@tempa\relax \let\@tempb\relax} \long\def\@tempb#1#2\@nnil{% \ifx#1\yoko \toks2{\yoko\@push@color@stack#2}% \else \toks2{\@push@color@stack#1#2}% \fi} \expandafter\@tempa\@outputpage\@nnil % %%% \mark の管理 \gdef\@themark{{}{}{}} \def\markboth#1#2{% \begingroup \let\label\relax \let\index\relax \let\glossary\relax \expandafter\@markboth\@themark{#1}{#2}% \@temptokena\expandafter{\@themark}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} \def\@markboth#1#2#3#4#5{% \unrestored@protected@xdef\@themark{{#4}{#5}{#3}}} \def\@markright#1#2#3#4{% \toks@{#1}\@temptokena{{#3}}% \unrestored@protected@xdef\@themark{% {\the\toks@}{#4}{\the\@temptokena}}} \def\leftmark{\expandafter\@leftmark\botmark\@empty\@empty\@empty} \long\def\@leftmark#1#2#3{#1} \def\rightmark{\expandafter\@rightmark\firstmark\@empty\@empty\@empty} \long\def\@rightmark#1#2#3{#2} \def\@put@color@stack{% \begingroup \expandafter\@put@color@stack@\@themark \@temptokena\expandafter{\@themark}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} % %%% 色情報の管理 \let\@color@stack\@empty \def\@put@color@stack@#1#2#3{% \unrestored@protected@xdef\@themark{{#1}{#2}{\@color@stack}}} \def\@get@color@stacks{% \@get@color@stack\@color@stack@bop\topmark \@get@color@stack\@color@stack@eop\botmark} \def\@get@color@stack#1#2{% \edef#1{\expandafter\@thirdofthree#2\@empty\@empty\@empty}} \def\@pop@color@stack{% \def\@tempa{\@tfor\@tempa:=}% \expandafter\@tempa\@color@stack@eop\do{\reset@@color}} \def\@push@color@stack{% \let\@templist\@empty \def\@tempa{\@tfor\@tempa:=}% \expandafter\@tempa\@color@stack@bop\do{% \edef\@templist{{\@tempa}\@templist}} \def\@tempa{\@tfor\@tempa:=}% \expandafter\@tempa\@templist\do{\set@@color\@tempa}} % %%% DVIware 依存部分(dvips.def の記述を改変) \def\set@color{% \set@@color\current@color \@push@color \aftergroup\reset@color} \def\set@@color#1{\special{color push #1}}% \def\reset@color{\reset@@color \@put@color@stack} \def\reset@@color{\special{color pop}} \def\@push@color{% \edef\@color@stack{{\current@color}\@color@stack}% \@put@color@stack} \makeatother \begin{document} \def\text{% ぱたぱたおよよあれれとほほおっとっと ぱたぱたおよよあれれとほほおっとっと ぱたぱたおよよあれれとほほおっとっと {\color{blue}% ぱたぱたおよよあれれとほほおっとっと ぱたぱたおよよあれれとほほおっとっと ぱたぱたおよよあれれとほほおっとっと}% ぱたぱたおよよあれれとほほおっとっと\par} \def\TEXT{\text\text\text\text\text} \TEXT\TEXT\TEXT \textcolor{magenta}{\TEXT\TEXT}% \TEXT \end{document}

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)