Я использую в своем pdflatex
документе необычные тени TikZ, они отлично работают. Однако, если я обрабатываю PDF-документ с помощью ghostscript (или его ps2pdf
frontend), тени ломаются. Обработка направлена на уменьшение размера документа из-за большого количества изображений, я считаю, что это не связанная с этим проблема.
Вот подробности. MWE:
\documentclass[border=1cm]{standalone}
\usepackage{tikz}
\usetikzlibrary{fit}
\usetikzlibrary{through}
\usetikzlibrary{positioning}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{shadows}
\usetikzlibrary{shadings}
%% even fancier shadows
\usetikzlibrary{shadows.blur}
%% fade
\usetikzlibrary{fadings}
\begin{document}
\begin{tikzpicture}[align=center,node distance = 1.2em and 1.2em,
rounded corners=10, blur shadow={shadow blur steps=50}]
\tikzstyle{block} = [rectangle, fill=blue!10, draw, text width=6em,
text centered, minimum height=2.1\baselineskip,
blur shadow={shadow blur steps=50}
]
\node (t) [block] {Test};
\end{tikzpicture}
\end{document}
Исходный документ после latexmk -pdf mwe
:
Теперь я звоню gs
:
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.7 -dPDFSETTINGS=/printer -dColorImageDownsampleType=/Bicubic -dColorImageResolution=72 -dGrayImageDownsampleType=/Bicubic -dGrayImageResolution=72 -dMonoImageResolution=150 -dOptimize=true -q -o small-gs.pdf mwe.pdf
Результат:
Я также могу вызвать ps2pdf
: ps2pdf mwe.pdf small-2pdf.pdf
, результат тот же. (Неудивительно, ведь это интерфейс для gs
.)
Версии:
$ pdflatex --version
pdfTeX 3.14159265-2.6-1.40.21 (TeX Live 2020)
kpathsea version 6.3.2
Copyright 2020 Han The Thanh (pdfTeX) et al.
There is NO warranty. Redistribution of this software is
covered by the terms of both the pdfTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the pdfTeX source.
Primary author of pdfTeX: Han The Thanh (pdfTeX) et al.
Compiled with libpng 1.6.37; using libpng 1.6.37
Compiled with zlib 1.2.11; using zlib 1.2.11
Compiled with xpdf version 4.02
$ gs --version
9.52
Проверено на MacOS 10.15.6 и на системе сборки на GitLab ( texlive-latest
образ Ubuntu). PDF-файлы просматриваю в Preview.app.
Что я делаю не так? (Кроме использования Preview, конечно.)
Как сохранить более широкую совместимость моих PDF-файлов?
решение1
Поддержка затухания (неравномерной прозрачности) для dvips
+ ps2pdf
была добавлена pgf
совсем недавно и доступна только в егоРепозиторий GitHub. Для тестирования скачайтеhttps://github.com/pgf-tikz/pgf/archive/master.zipи скопируйтеtex
папку в ней в рабочий каталог. Также необходим Ghostscript-9.52, который ps2pdf
должен быть запущен с опцией -dALLOWPSTRANSPARENCY
.