
Я пытаюсь наложить на изображение затененный прозрачный прямоугольник, чтобы можно было писать внутри прямоугольника, как показано ниже:
\documentclass{report}
\usepackage{xcolor}
\definecolor{lblue}{RGB}{15,77,158}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[] at (0,0) {\includegraphics[width=0.9\textwidth,]{IMG_2124_Everest.jpg}};
\shade [left color=lblue, right color=lblue, opacity=0.6] (-4,1) rectangle (4,2.5);
\node[shift={(-0.0cm,1.73cm)}] at (0,0) { \textcolor{white}{\Huge\textbf{Mount Everest}} };
\end{tikzpicture}
\end{document}
и я хотел бы сделать границу затененного поля более незаметной, чтобы уменьшить видимость линии, ее определяющей.
Я прочитал:
- Tikz: блеклая граница узла имеет ложную дополнительную линию границы
- Включая изображение с выцветшей рамкой
но я не понимаю, как применить его к затененному ящику. Это вообще возможно?
Изображение из:http://upload.wikimedia.org/wikipedia/commons/0/00/IMG_2124_Эверест.jpg
решение1
Это решение использует foreach
цикл для перехода от внутреннего прямоугольного ящика к внешнему ящику с закругленными углами. Для других решений см. связанные вопросы в OP.
\documentclass[tikz, border=1cm]{standalone}
\usetikzlibrary{fadings}
\pgfmathsetmacro{\mywidth}{9}
\pgfmathsetmacro{\myheight}{3.5}
\pgfmathsetmacro{\myfadewidth}{1}
\begin{tikzfadingfrompicture}[name=myfading]
\foreach \i in {100,...,0}
\fill[transparent!\i, rounded corners=\myfadewidth/100*\i cm] (-\mywidth/2-\myfadewidth/100*\i+\myfadewidth,-\myheight/2-\myfadewidth/100*\i+\myfadewidth) rectangle (\mywidth/2+\myfadewidth/100*\i-\myfadewidth,\myheight/2+\myfadewidth/100*\i-\myfadewidth);
\end{tikzfadingfrompicture}
\begin{document}
\begin{tikzpicture}
\node {\includegraphics[width=12cm]{example-image}};
\node[
fill=blue, text=white,
fill opacity=0.6, text opacity=1,
minimum width=\mywidth cm, minimum height=\myheight cm,
path fading=myfading, fit fading=false,
font=\Huge\bf,
yshift=1.5cm, fading transform={yshift=1.5cm},
] {Mount Everest};
\end{tikzpicture}
\end{document}
Вместо цикла \pgfdeclarefunctionalshading
можно использовать a, но это не так просто, и в руководстве есть следующее предупреждение:
Эти штриховки наименее переносимы из всех и они накладывают самую большую нагрузку на рендерер. Они медленные и, возможно, не будут печататься правильно!