莲枝专栏--高效实现无缝拼接背景图

我敢肯定,大家至少有过一次这样的想法,即使用拼接图案作为Beamer演示文稿或报告的背景。(在是不是一个好主意另说啦!) 本文将介绍一种创建拼接背景图的好方法,它用了几种图案,但是却不会显得单调重复。 本文发布在LaTeX and Graphics contesthttp://latex.org/component/content/article/92-contests/431-gnuplot-book) 严格来讲,这并不是一个LaTeX插图的问题,但是读到这个原理时,我觉得它非常有趣,于是…… 网站 subtlepatterns.comhttps://www.toptal.com/designers/subtlepatterns/), DinPatternhttp://www.dinpattern.com/) and COLOURlovers.comhttp://www.colourlovers.com/patterns)上有很多免费的高清拼接图案。在LaTeX中,有不少方法可以创建拼接背景,我通常使用wallpaper宏包来“欺骗”人,它提供了\TileWallPaper{«width»}{«height»}{«filename»}命令,可以设置使单张图片位于页面的角落或中心位置,更多信息参见 package manualhttp://texdoc.net/texmf-dist/doc/latex/wallpaper/wallpapermanual.pdf)。MikTeX和TeXLive中都有这个宏包。那么,我先用\TileWallPaper来设置Beamer演示文稿的背景:
\documentclass{beamer}
\usepackage{eso-pic}
\usepackage{wallpaper}
\usepackage{graphicx}
% I usually give the proportion measurements of the tile by
% referring to the dimensions (in pixels) of the original
% graphics, while keeping an eye on the resolution

\setbeamertemplate{background canvas}{
  \TileWallPaper{51.5pt}{11.5pt}{arches}
}

\begin{document}
\begin{frame}
\frametitle{Tiled-Pattern Backgrounds}
\begin{itemize}
\item Maths is cool.
\item And so are \TeX\ \& friends.
\item They make powerful designs.
\end{itemize}
\end{frame}
\end{document}
“Arches” tile image courtesy of SubtlePatterns.com, 103px x 23 px, 813 bytes Beamer slide with regular ripples tiled background. (31 KB PDF) 对于简单而常规的图案,如上所示的arches图案,拼接效果往往还不错。但是,如果你的图案有明显的特征,这样拼接后会显得过于规律,看起来不太自然。 “The Big Show” tile image 1 courtesy of The Cicada Project, 109px x 917px, 5.9 KB 当然,你也可以找一些能够铺满整个页面,并且看起来比较自然的图案,比如DeviantArthttp://www.deviantart.com/)提供的。但是,这意味着图片文件要大起来:效果好一点的动辄1 MB到2 MB。那么,输出的PDF文件也必然很大,这并不是我们想要的。 Alex Walker写到Cicada Principlehttps://www.sitepoint.com/design-ux/)时,说它是一种创建非重复性拼接背景图的有效方法。实质上,它指的是创建一系列大小不同的半透明图案,它们的尺寸对应于按比例缩小的质数序列。除非间隔过大,那么把这些图案堆叠起来后,就形成了非重复性拼接的视觉效果。(想想素数的最小公约数。)与一张图片霸占全屏的方式相比,它所用的图片文件总体来说要小得多。 接连使用多个\TileWallPaper命令,可以使多张图片相互堆叠。我们试试在Beamer演示文稿中将两个图案堆叠起来的效果: 加入curtain2.png后,Beamer背景图的效果为:
\setbeamertemplate{background canvas}{ \TileWallPaper{32.7pt}{275.1pt}{curtain1} \TileWallPaper{90pt}{275.1pt}{curtain2}}
此时,背景图看起来不再那么单调了:相比于第一种来说,改观不少。当继续用上第三个图案时:
\setbeamertemplate{background canvas}{\TileWallPaper{32.7pt}{275.1pt}{curtain1}\TileWallPaper{90pt}{275.1pt}{curtain2}\TileWallPaper{210.9pt}{275.1pt}{curtain3}}
Beamer slide with 3 curtain tiles (113 KB PDF, 52.21 KB total graphics file size) 这个看起来很不错了吧,像是只用了一张图片。这种方式生成的PDF文件只有113kB,用到的图案一共才52.21kB。 那么在创建具有杂志风格的报告或文档时,你也可以如法炮制。这儿有一个使用Cicada羊皮纸图案的样式:
\documentclass[14pt]{scrartcl}

\usepackage{wallpaper}

\usepackage{graphicx}

\usepackage{lipsum} 

\TileWallPaper{150pt}{150pt}{texture_01}\TileWallPaper{530pt}{700pt}{texture_02}

\TileWallPaper{410pt}{900pt}{texture_04}

\begin{document}

...

\end{document}
Book with Parchment tiles (204.41 KB total graphics file size) The Cicada Project Galleryhttps://www.sitepoint.com/design-ux/)上有很多图案供你下载尝试,不过你也可以设计自己的图案(然后上传)。Alex在他的博文中,针对Cicada图案的设计,给了一些建议:
  1. 以倒金字塔的方式设计堆叠次序和图案大小。
  2. 底层图案可以非常小且具有重复性。
  3. 最上层的图案应该大而稀疏。
  4. 最上层的图案不应太过独特或引人注目。
  5. 反复尝试!
在结束之前,简直忍不住再给几个使用Cicada图案的样例。这个练习还有一个好处哦:下次你家娃(或张三)抱怨“数学不好玩儿”时,你又多了个向TA展示数学有多酷的例子! PS: 有些图案容易分散注意力,不适合用作演示文稿的背景,比如最后这个样式。但是,我说过,难以抗拒哇!希望你也能像我一样喜欢喽! Quilts (113.31 KB total graphics file size) Granite (321.07KB total graphics file size) On the Moon (160.57 KB total graphics file size) Mario Brothers (33.33 KB total graphics file size) 作者介绍:林莲枝是一位LaTeX爱好者、兼职LaTeX培训师和顾问。她善于在不同的场景中开拓LaTeX的新应用,也乐于分享自己的经验,还定期向Malaysian LaTeX User Grouphttp://latex-my.blogspot.com/ )投稿。 选自:http://latex.org/know-how/433-tiled-backgrounds
分享到:
未经允许不得转载:莲枝专栏--高效实现无缝拼接背景图
已有 条意见

    最新文章

    加载中...
      本站提供专业LaTeX排版、咨询、定制服务,请点击下图咨询详情


      全国首个精品的LaTeX视频教程,大牛带着你入门,让LaTeX学习不再纠结,请点击下图咨询详情

      热门评论

        联系我们

        交流QQ群:91940767
        本站QQ号:343083553
        邮箱联系latexstudio@qq.com
        淘宝店铺latexstudio.taobao.com 提供排版,模板定制,培训,图片处理,视频教程等LaTeX服务。

        关注微信公众号: latex2015

        如果您投稿或者希望加入我们团队,请发送您的简历到latexstudio@qq.com。

        科技艺术的完美融合,专业精致的排版体验

        联系我们联系我们