Объяснение

Объяснение

Я работаю над проектом, в котором мне нужно наложить два PDF-документа в LaTeX и контролировать непрозрачность каждого слоя. В частности, я хочу включить две страницы PDF в одну страницу и настроить, насколько видна каждая часть PDF. Я знаком с основными командами LaTeX, но раньше ничего подобного не делал.

Может ли кто-нибудь подсказать, как этого добиться? Есть ли специальные пакеты или команды в LaTeX, которые могут накладывать PDF-файлы с регулируемыми настройками непрозрачности? Любые примеры кодов или ссылки на похожие проекты были бы весьма признательны.

решение1

Совет: наложите на PDF-файл более или менее непрозрачный закрашенный прямоугольник.

\documentclass[11pt]{article}

\usepackage[utf8]{inputenc} 
\usepackage{geometry} 
\geometry{a4paper} 
\geometry{landscape}
\usepackage{graphicx} 
\usepackage{tikz}


\begin{document}

\begin{tikzpicture}
\node(img){\includegraphics[width=0.48\textwidth]{imagePDF.pdf}};
\draw[fill=yellow,opacity=0.2] (img.north east) rectangle (img.south west);
\end{tikzpicture}
\begin{tikzpicture}
\node(img){\includegraphics[width=0.48\textwidth]{imagePDF.pdf}};
\draw[fill=yellow,opacity=0.8] (img.north east) rectangle (img.south west);
\end{tikzpicture}

\end{document}

введите описание изображения здесь

решение2

В следующем pdflatexпримере используется TikZ. Три фигуры перекрываются с различными прозрачностями: (1) Самая левая фигура нарисована полностью непрозрачной и показывает, как должна выглядеть исходная фигура. (2) Правая фигура наложена с альфа-значением 0,75, но таким образом, что каждый объект исходной фигуры независимо сделан полупрозрачным. (3) Наконец, третья фигура помещена в группу прозрачности и сделана полупрозрачной как целое. Скорее всего, вы захотите использовать последнее при наложении ваших PDF-документов.

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \node (N1) at (0,0) {\includegraphics{figure.pdf}};
  \node[opacity=.75] (N2) at (3cm,0) {\includegraphics{figure.pdf}};
  \begin{scope}[transparency group, opacity=.75]
    \node (N3) at (1.5 cm,-3cm) {\includegraphics{figure.pdf}};
  \end{scope}
\end{tikzpicture}
\end{document}

Объяснение

Ключ opacityв TiKZ, присвоенный команде рисования, устанавливаеттекущая альфазначение как для операций штриха (например, рисования линии), так и для других операций рисования (например, заполнения областей или рисования растрового изображения). Его значение находится в пределах от 1,0 (непрозрачный, по умолчанию) до 0,0 (прозрачный).

На правом рисунке (второе включение, узел N2) каждая линия или область обведена или заполнена полупрозрачными цветами, даже те, которые предназначены для скрытия других частей рисунка (и дизайнеры часто используют покрытие вместо обрезки). Смотрите пример ниже: синий квадрат с буквой B справа не закрывает лежащий под ним пунктирный красный круг (дугу между 12 часами и 3 часами), а «Скрытый текст» под буквой A также отображается. Кроме того, если включенный PDF уже использовал прозрачность, он переопределит наши настройки и сбросит непрозрачность до любого значения, заданного в исходном файле. Обычно это не то, что нужно.

Нижняя фигура (третье включение, узел N3) помещена внутрь так называемогогруппа прозрачности. По сути, это scopeсреда с опцией transparency groupи значением непрозрачности. Сначала фигура рисуется нормально, а затем становится полупрозрачной целиком. Таким образом, «Скрытый текст» под буквой A не отображается, а синий квадрат правильно скрывает красную дугу. Красная дуга под буквой B появляется из второго включения (дуга между 6 и 7 часами). Это то, что обычно требуется. Вероятно, вы хотите поместить оба включенных PDF-файла в отдельные группы прозрачности. Вместо opacity, вы также можете попробовать blend mode=multiplyопцию в группе прозрачности. Это смешает включенные изображения PDF, не окрашивая их белым фоном.

Результаты перекрытия включенных цифр

В приведенном выше примере входные данные figure.pdfгенерируются с помощью следующего кода:

%%% This is figure.tex.
\documentclass{article}
\usepackage[papersize={45mm,45mm}]{geometry}
\usepackage{tikz}
\pagestyle{empty}

\begin{document}
\begin{tikzpicture}[remember picture, overlay]
\node[scale=2, anchor=north, align=center] (C) at (current page) {Hidden\\text};
\node[circle, draw, line width=10pt, color=red, loosely dotted, fill=green!20, 
    scale=6] (A) at (current page) {A};
\node[draw, line width=12pt, color=blue!50!black, fill=white, anchor=north east,
    scale=4, outer sep=1.5pt] (B) at (current page.north east) {B}; 
\end{tikzpicture}
\end{document}

Связанный контент