我在 Docker 容器中使用 Python 3.7 生成 PDF,结果像素化了(使用 Adobe 的 PDF 查看器)。我想知道我是否使用 TexLive基本方案并且下面显示的添加的软件包(其中一些可能是多余的,不确定)是否会导致这种情况?我已经为堆栈溢出准备了一个类似的问题,但我坚持它以防这可能是一个纯粹与 tex 相关的问题。
- latexmk
- 乳胶
- 计数
- 键值
- 总页数
- 条件条件
- 电子工具箱
- 工具
- babel-瑞典语
- 彩色
- 书签
- 超链接
- 超XMP
- 欧洲符号
- 约会时间
- 几何学
- 标题安全
- 更改中心
- 花式高清
- 枚举项
编辑2:我还应该提到我的程序使用以下命令呈现 PDF:
latexmk -pdf -recorder filename.tex
我也尝试过:
pdflatex -interaction=nonstopmode filename.tex
(我现在不需要运行它两次,因为我相信recorder
需要latexmk
,但将来我可能需要它)
编辑 1:删除了像素的无用特写,并按照建议共享了 pdf 示例的链接。但是,我不确定如何最好地呈现正确的 MWE,以便可以重现问题。但是,下面是 Latex 部分:
样式文件:
\ProvidesPackage{styfile}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[swedish]{babel}
\usepackage{graphicx}
\usepackage{xcolor}
\usepackage{longtable}
\setlength\LTleft{0pt}
\setlength\LTright{0pt}
\usepackage{booktabs}
\usepackage{array}
\usepackage{multicol}
\newcommand{\mc}[2]{\multicolumn{#1}{l}{#2}}
\newcolumntype{R}{>{\raggedleft\arraybackslash}p{0.1\textwidth}}
\usepackage[
pdfborder={0 0 0},
colorlinks={true},
linkcolor={black},
urlcolor={blue}
]{hyperref}
\usepackage{hyperxmp}
\usepackage[yyyymmdd]{datetime}
\usepackage[bottom=25mm, footskip=30pt, top=110pt, headheight=150pt, headsep=5mm, left=25mm, right=25mm]{geometry}
\usepackage{calc}
\usepackage{fancyhdr}
\definecolor{footercolor}{HTML}{C0504D}
\newlength{\myoddoffset}
\setlength{\myoddoffset}{\marginparwidth}
\fancypagestyle{presentation}{%
\fancyheadoffset[loh,reh]{\myoddoffset}
\renewcommand{\headrulewidth}{0pt}
\rhead{}
\lfoot{\footnotesize \textbf{\unit{}, \today} \\ {\color{footercolor}Company $\cdot$ Address 1 $\cdot$ Address 2 $\cdot$ Phone $\cdot$ Web}}
\cfoot{}
}
\fancypagestyle{plain}{%
\renewcommand{\headrulewidth}{0pt}
\lhead{}
\lfoot{\footnotesize \textbf{\unit{}, \today} \\ {\color{footercolor}Company $\cdot$ Address 1 $\cdot$ Address 2 $\cdot$ Phone $\cdot$ Web}}
\cfoot{}
}
主文件:
\documentclass[a4paper, 10pt]{article}
\usepackage{styfile}
\newcommand{\unit}{Unit}
\newcommand{\unitdetail}{Unit details}
\newcommand{\name}{Name Surname}
\newcommand{\role}{Role}
\newcommand{\phone}{555-36356}
\newcommand{\email}{[email protected]}
\newcommand{\employmentyear}{2020}
\newcommand{\presentationtext}{Short descriptive text}
\newcommand{\portrait}{img/default.png}
\renewcommand{\dateseparator}{--}
\begin{document}
\thispagestyle{presentation}
\pagestyle{plain}
\noindent
\begin{minipage}[t]{0.3\textwidth}
\strut\vspace*{-\baselineskip}\newline
\begin{tabular*}{1\linewidth}{p{1\linewidth}}
{\LARGE Curriculum vitae}\\
\includegraphics[width=120pt, height=120pt]{\portrait} \\
\textbf{\name} \\
\role{} \\
\unitdetail{} \\
\\
\textbf{Contact} \\
\phone{} \\
\href{mailto:\email}{\email} \\
\end{tabular*}
\end{minipage}%
\hfill
\begin{minipage}[t]{0.6\textwidth}
\strut\vspace*{-\baselineskip}\newline
\begin{tabular*}{1\linewidth}{p{0.7\linewidth} r}
{\Large Presentation} & \\
\mc{2}{\presentationtext} \\
\textbf{Employment at company} & \\
\employmentyear & \\
& \\
\textbf{Previous Employments}& \\
Company 1 & 2020\\
& \\
\textbf{Education} & \\
Education 1 & 2020 \\
& \\
\textbf{Courses}& \\
Course 1 & 2020 \\
\end{tabular*}
\end{minipage}
\mbox{ }
\begin{longtable}{@{\extracolsep{\fill}}p{0.2\textwidth} p{0.65\textwidth} Rp{0.1\textwidth}}
{\large Reference Assignment } & {\large Description} & {\large Time} \\
\toprule
\endfirsthead
{\large Reference Assignment } & {\large Description} & {\large Time} \\
\toprule
\endhead
\bottomrule
\endlastfoot
Assignment 1
&
Description 1
&
2020
\\ \midrule
\end{longtable}
\end{document}
答案1
像素化 PDF 使用了不同的字体 (Type 3),这确实是一种像素字体,无法很好地缩放。非像素 PDF 使用基于矢量的 Type 1 字体。
指定一种字体,或者如您所发现的,安装 Computer Modern 的 Type 1 变体应该可以解决问题。