自制Prosper样式:RYBFlags

2004/12/16 - 3 条留言

上午分析了一下PPRblends.sty样式的详细构成,现在就根据blends样式,做一些适当的修改,来产生自己的样式文件。

先来看看原本的blends样式是什么样子的:

PROSPER: Blends

作如下修改:

  1. 对三种基本颜色重新定义,使用纯的红黄蓝。
  2. 对方块的大小和位置进行修改,重新摆放。
  3. 将横竖两条线的两头都变成白色,并改变坐标使其穿透页面
  4. 标题和正文的位置向左做适当移动

就这样,我制作了一个新的样式,因为颜色比较鲜艳,像红黄蓝三色的大旗,所以起个名字就叫RYBFlags。同一页面的样式预览如下:

PROSPER: RYBFlags

本样式欢迎Prosper爱好者下载使用。当然,本文的目的还是想推动Prosper样式向多样化发展,希望鼓励大家都来进行设计,百花齐放,以后一定要比微软的Powerpoint多!

点击下载

Prosper样式的制作

2004/12/16 - 3 条留言

很久以前就筹划这篇文章。因为用Prosper制作幻灯目前最大的弱点就是样式相对单调。不过这也许也是它的优势所在,因为在PowerPoint里面想要做一个样式可能还不如Prosper里面简单。下面就讨论一下Prosper里面如何修改甚至自己制作一个样式。

Prosper的样式文件是以PPR作为开头的,名字如PPRblends.sty,就是blends样式的源文件(这个模板的样子可以参看我以前的帖子),下面就以PPRblends.sty来做为例子进行说明。在源文件上添加注释文件如下:

% =======
% Prosper — (PPRblends.sty) Style file
% 版权说明以及一些其他乱七八糟的,不用理它。
% =======

\NeedsTeXFormat{LaTeX2e}[1995/12/01]
% 不用动

\ProvidesPackage{PPRblends}[2001/11/15]
% 这里是PPRblends,如果你要做自己的样式,
% 这里要与文件名一致,否则会有警告信息。

\typeout{‘Blends’ style for Prosper —}
\typeout{(c) 2001 Andrew Arnt}
% 上述信息会在编译的时候出现。
% 如果你要发行自己创作的样式,
% 请在这里申明版权之类,一切你想说的东西。

\IfFileExists{pst-grad}{\RequirePackage{pst-grad}}
{\RequirePackage{gradient}}
% 这里是做了一个判断,选择一个包来实现颜色的渐变。
% 如果pst-grand包存在,就用pst-grand包,
% 如果不,就用gradient包。

\RequirePackage{semhelv}
% semhelv.sty是seminar包的一部分。
% 其实整个Prosper就是基于seminar这个样式之上的。

\ifinColor
% 如果在文件的option声明里使用了颜色的话。
% 按照下面定义几种颜色(彩色RGB)。

\newrgbcolor{cyellow}{1.0 0.812 0.004}
\newrgbcolor{cred}{1.0 0.220 0.224}
\newrgbcolor{cblue}{0.2 0.2 0.8}
\newrgbcolor{ctitle}{0.2 0.2 0.6}
\newrgbcolor{cblack}{0.110 0.110 0.110}
% 以上颜色都由{颜色名字随便起}{R G B}定义而成,
% RGB分别从0到1,由弱变强,0就是黑,1就是白。

\else
% 与ifinColor对应,如果没有选择彩色,即为黑白。

\newgray{cyellow}{0.75}
\newgray{cred}{0.50}
\newgray{cblue}{0.25}
\newgray{ctitle}{0.00}
\newrgbcolor{cblack}{0.110 0.110 0.110}
% 颜色的定义由\netgbcolor变成了\newgray,
% 只有一个参数定义灰度。

\fi
% 判断完了。

\FontTitle{%
\usefont{T1}{phv}{b}{n}\fontsize{17.28pt}{14pt}\selectfont\ctitle}{%
\usefont{T1}{phv}{b}{n}\fontsize{17.28pt}{14pt}\selectfont\ctitle}
\FontText{%
\black\usefont{T1}{phv}{m}{n}\fontsize{14.4pt}{12pt}\selectfont}{%
\black\usefont{T1}{phv}{m}{n}\fontsize{14.4pt}{12pt}\selectfont}
%上面的文字用来定义字体,无论是Title还是Text都有两行,
% 一个是针对彩色的情况,一个是针对黑白的(但在这里,两种都使用了同一种定义)。
% \fontsize用来定义大小,这个可以修改到合适的数值。
% phv是指PostScript Helvetica字体,有关字体的详细,有时间再讨论。

\ColorFoot{\ctitle}
% 角标的颜色,ctitle在上面有定义

\newcommand{\slidetitle}[1]{%
\rput[rb](11,3.3){%
\parbox{9.5cm}{\begin{flushleft}\fontTitle{#1}\end{flushleft}}}}
% 这里比较重要,它规定了每一页标题的现实位置等信息。
% 在本例中,使用\rput来放置一个宽9.5cm的文本框在坐标(11,3.3)处,基点是右下角[rb]。
% 文本框中,采用左对齐和事先定义的标题字体。
% 这里通过调整各种数值,你可以比较随意的使标题抬高,居中或者右对齐。

\LogoPosition{-1.5,-1.1}
%Prosper允许用户使用\Logo(x,y){mylogo}命令放置自己的Logo在页面中。
%如果不指定尺寸,就会使用这一行所定义的位置。

\newcommand{\Blendsframe}[1]{%
\rput[lt](-1.5,6.0){%
\psframe[gradbegin=cyellow,gradend=white,gradmidpoint=1,
gradangle=90,fillstyle=gradient,gradlines=1000,
linestyle=none](0.685,2.235)(2.385,1.185)
\psframe[gradbegin=cblue,gradend=white,gradmidpoint=1,
gradangle=90,fillstyle=gradient,gradlines=1000,
linestyle=none](0.98,1.24)(2.705,0.115)
\psframe[gradbegin=white,gradend=cred,gradmidpoint=1,
gradangle=135,fillstyle=gradient,gradlines=1000,
linestyle=none](0,1.405)(1.335,0.415)
\psframe[gradbegin=cblack,gradend=white,gradmidpoint=1,
gradangle=0,fillstyle=gradient,gradlines=1000,
linestyle=none](1.060,2.485)(1.18,-7)
\psframe[gradbegin=cblack,gradend=white,gradmidpoint=1,
gradangle=90,fillstyle=gradient,gradlines=1000,
linestyle=none](0.5,0.78)(13.5,0.66)
%%\psgrid(0,0)(-10,-10)(20,10)
}
\PutLogo % Mandatory
{#1}}
% 以上是定义背景的代码,多是使用PSTricks中的命令来绘图。
% 本例中,使用\psframe来放置三个彩色的方块和两个长条,颜色都是渐变的。
% 这里比较灵活,可以自由修改来达到想要的效果。
% 当然你也可以放置自己的图片作为背景。
% 注意:这里把所有背景图案和在一起起了个名字:Blendsframe,后面会用到。

\myitem{1}{\psframe[fillstyle=solid,fillcolor=cblue,%
linestyle=none](-.15,.25)(0.1,.1)}
\myitem{2}{\psframe[fillstyle=solid,fillcolor=cred,%
linestyle=none](-.15,.25)(0.1,.1)}
\myitem{3}{\psframe[fillstyle=solid,fillcolor=cyellow,%
linestyle=none](-.15,.25)(0.1,.1)}
% 上面的代码定义了三级条款的样式,本例比较简单,用了三种颜色的方块。
% 你也可以使用数学符号来作为条款的标签。

\NewSlideStyle{t}{5.2,2.2}{Blendsframe}
% 这个\NewSlideStyle命令定义了整个页面的位置信息。格式如下:
% \NewSlideStyle[width]{ref_point}{position}{background_name}
% [width]是文本的宽度值,如:[115mm],可以省略。
% {ref_point}和其他命令一样表示参考点的位置,用t,b,l,c及他们的组合,
% 本例中使用的是t,也就是顶部的中间点。
% {position}就是上面的参考点所放置的位置了。
% 以上三个参数都是“页面文本”的信息。
% 最后的{background_name}就是前面定义的背景图案的名字,
% 本例中使用的是Blendsframe,如果你用了自己喜欢的名字,这里要保持一致。

\PDFCroppingBox{0 15 700 810}
% 这个命令顾名思义,就是最终输出PDF的页面所抽出来的部分,
% 四个数字定义了左上角为(0, 15),右下角为(700, 810)的长方形。
% 最后的PDF文件所显示的东西就是这个长方形中的内容,
% 如果取得不好,可能会使内容被割掉。

\endinput
% 结束

以上文件可按自己意识修改,然后保存到LaTeX-Prosper源文件的目录中(最好换个名字),然后编译看看效果。然后再参考一些其他的PPRxxxx.sty文件,会发现很多新东西。起初可以找一个自己喜欢的框架作一些更适合自己的改动,挪挪地方,变变颜色,改改大小等等,熟悉了之后,就可以动手写一个自己的样式了,当然设计可以参照PowerPoint中丰富的模板。

于香港理工大学

2004/12/11 - Comments Off on 于香港理工大学

昨天回到香港,今天上午作了一些研究性的交流。明天就回日本了。回家的期待总是最好的。