
背景画像があり、その上にテキストを表示する必要があります。背景画像に影響を与えずに、画像を使用してテキストをフェードアウトさせたいです。私の理解では、Tiのセクション115.3「フェードアウトの指定」で説明されているように、これは可能であるはずです。けZ & PGF マニュアルには次のように記載されています。
通常の画像を作成します。この画像には、テキスト、画像、陰影が含まれる場合もあります。次に、この画像に基づいてフェードを作成します。このために、画像の各ピクセルの明度が分析されます (ピクセルが明るいほど、明度が高くなります。黒のピクセルの明度は 0、白のピクセルの明度は 1、グレーのピクセルの明度は赤のピクセルと同様に中間値になります)。次に、フェードを使用すると、ピクセルの明度によって、その位置のフェードの不透明度が決まります。フェード内の画像が黒だった位置は完全に透明になり、画像が白だった位置は完全に不透明になります。画像内でまったくペイントされていない位置は常に完全に透明になります。
これはMWEですないそれでも私はやりたいことをやる:
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{tikz}
\begin{document}
\pgfdeclarefading{myfading}{fadpix-jpg-rsz}
\begin{tikzpicture}[remember picture, overlay]
\node[inner sep=0pt] at (current page.center) {%
\includegraphics[scale=0.5]{Utah_Teapot_mr_maya.jpg}
};%
\begin{scope}[shift={(current page.center)}]
\pgfsetfading{myfading}{\pgftransformshift{\pgfpoint{1cm}{1cm}}} % causes text to disappear
\node[white,text width=11.0cm] at (0.0cm,0.0cm) {\lipsum[1-2]};
\end{scope}
\end{tikzpicture}
\end{document}
私はユタ州のティーポットサンプルの背景画像としてリプサムサンプルテキストを生成します。図はfadpix-jpg-rsz
次のようになります。
明確に言うと、この画像を使用してテキストをフェードアウトしたいのですが、背景画像 (ティーポット) には影響を与えないようにします。現在、 の行により\pgfsetfading
テキスト全体が消えます。これをコメントアウトすると、テキストが表示されます。
何が間違っているのでしょうか? 私が望んでいることはできるのでしょうか?
(補足:クラスarticle
の代わりにを使用したのstandalone
は、後者では 2 ページ目の非常に長い 2 ページ目の空のドキュメントが常に生成されたためです。preview
オプションを使用すると、ドキュメントがSkim
クラッシュし、MacOSPreview
に空のファイルが表示されるようになりました。)
答え1
まず、実際にフェード画像を使用し、テキスト fadpix-jpg-rsz を設定するだけではいけません。
2 番目に、フェードを座標でシフトできないように見えます (少なくとも pgf コマンドではできないが、tikz キーでは機能するかもしれません)。フェードは左上隅に固定されています。ただし、shipout/background フックを使用して画像を中央に移動すると、機能します。
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}
\usepackage{tikz}
\pgfdeclarefading{myfading}{\includegraphics[width=11cm]{fadpix-jpg-rsz.jpg}}
\begin{document}
\mbox{}
\AddToHook{shipout/background}
{
\put(0.5\paperwidth,-0.5\paperheight)
{%
\begin{tikzpicture}[remember picture,overlay]
\node[inner sep=0pt] {%
\includegraphics[width=11cm]{Utah_Teapot_mr_maya.jpg}
%\includegraphics[width=11cm]{fadpix-jpg-rsz.jpg} %for test
};%
\begin{scope}[scope fading=myfading]
\pgfsetfading{myfading}{} %
\node[text=white,text width=11.0cm]
{\lipsum[1-3]};
\end{scope}
\end{tikzpicture}
}}
\end{document}