这是可以使用我们的多个免费在线工作站之一(例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器)在 OnWorks 免费托管服务提供商中运行的命令 dpic
程序:
您的姓名
dpic - 将图片语言输入转换为 LaTeX 兼容和其他格式
概要
DPIC [ -efghmprstvxz ] [ 入档 ] [> 输出文件 ]
通常 入档 是形式 姓名[。图片] 和 输出文件 是形式
姓名[.tex|.eps|.fig|.mp|.svg]
配置
(无) LaTeX 绘图输出(基于字体的绘图功能非常有限)
-e pict2e 输出
-f Postscript 输出,psfrag 格式的字符串
-g TikZ-pgf 输出
-h 写帮助信息并退出
-m mfpic 输出(参见 mfpic 文档)
-p PSTricks 输出
-r 原始 Postscript 输出,无自动字符串格式化
-s MetaPost 输出
-t eepicemu 输出(比 LaTeX 绘图输出的限制稍少)
-v svg 输出
-x xfig 3.2 输出
-z 安全模式(禁止访问外部文件)
商品描述
Dpic 接受 GNU pic 接受的 pic 绘图语言的一个紧密子集(有时
命名为 gpic) 或 AT&T pic,并发出用于插入 LaTeX 的低级绘图命令
文档,由 xfig 或 Inkscape 绘图工具处理,或直接显示为
封装的 Postscript 或 SVG。 可以将任意文本插入到输出中供以后使用
格式,后处理器的任意命令(PSTricks、Tikz-pgf 等)都可以
被包括在内。 如果消息的严重程度不超过
生成警告,否则 EXIT_FAILURE(通常为 1)。
为特定目的实现了一些 dpic 独有的语言扩展。
语言 概要
输入由一系列行组成。 图片的第一行是 PS。 最后一个是
.PE, 将这两者之间的线转换为用于
选项选择的后处理器。 线外 PS。 ... .PE 通过 dpic
不变。
坐标
pic 语言中的坐标轴指向右上方。 绘图单位是
英寸默认但声明
规模 = 25.4
在图表的开头具有将单位更改为毫米的效果。
画 对象
原始绘制对象由平面对象组成 框, 圈, 椭圆; 线性的
对象 线, 箭, 移动, 样条; 和 弧, 它具有平面和
线性对象。 一种 阻止 是一对包含其他对象的方括号: [ 什么
] 并且是一个平面物体。 完整的图表隐含在一个块中。
A 绳子 是一个类似于盒子的平面物体,但 pic 语言也允许字符串
附加到其他对象作为覆盖,在这种情况下,它们是对象的一部分。
当前绘图位置 这里 总是被定义。 最初和开始时
堵塞, 这里 是 0,0。 类似地,当前方向,可以是 上, 下, 左,
对, 被设为 右 原来。
每个绘制的对象都有一个入口点和出口点,这取决于当前
方向。 入口点默认放置在当前位置。 对象可以
也可以明确地相对于绝对坐标或相对于其他坐标
对象。 退出点成为新的当前位置。
标签
A 标签 in pic 是一个以大写字母开头的字母序列。 数据中心
允许变量和标签下标; 因此 T 和 吨[5] 是不同的标签。 这
括号中的值可以是任何表达式,但它会四舍五入为最接近的整数值。 一种
label 为位置或绘制的对象提供符号名称; 例如,
邮编: 这里 + (1,2)
巴士[23]: 线 右 4
已定义 点
绘制后,线性对象已定义点 。开始, 。中央, 和 。结尾, 哪个可以
被称为已知位置,例如,
L: 线; 线 up 0.5 止 c
哪里 。中央 被缩写为 .c
平面物体的定义点是其外围的罗盘点,由下式给出
.n, .s, .e, .W, .nw, .ne, .se, .sw, 连同 。中央, 。最佳, 。底部, 。对, 。剩下。
对于圆弧,这些点对应于圆弧所在的圆,其中
除此之外 。开始 和 。结尾。
A 阻止 已定义类似于盒子的点,但在其内部也可以有其他点。
使用示例
A: [ 圆圈; Q: [ 线; 圆 ]; T: Qn ]
定义的点如下:
外部块的点就好像它是一个盒子一样,对于
例, 埃尼
块中定义的位置,例如, ATI
块内标记对象的定义点,
前面有一个点,例如, 空气质量 (的中心
阻止 问), or AQne (东北角 问)。
枚举对象的定义点
块,前面有一个点(但要确保有一个空格
在点之后,如果它后面是一个数字而不是
大括号中的表达式),例如, AQ 1 圆.n
或更好) AQ{1}st 圆.n
语言 分子
定义图片的行由换行符或分号分隔。 换行符
很重要,除了之后 然后, ;, :, {, 别的, 或换行符。
如果最右边的字符是反斜杠,则一行会继续到下一行。
以句点开头的非连续行将被忽略,除了 PS。 和 .PE 线。
可以通过将每个评论放在图片的右侧来评论图片来源 # 字符
(除非 # 在字符串中)。
语言元素包括以下内容:
带有可选标签的绘图命令,例如, 框 or A: 框
位置标签定义,例如 A: 位置
例如,对变量的赋值 x = 5
A 方向 (更改默认值),例如, up
分支由
if 表达式 然后 { 真 } 其他 { 做假的 }.
循环设施是
变量 = 表达式 至 表达式 [经过 [*] 增量 ] do { 什么 }.
默认情况下,循环变量递增 1,否则递增 增量 (这可能是一个
否定表达式)除非它前面有星号,在这种情况下循环
变量乘以 增量 循环变量可能会被语句中的语句改变
循环,从而控制循环重复的次数。
大括号出现在多种情况下。 当独立于其他语言元素使用时,如
{ 什么 }
左大括号保存当前位置和方向,右大括号恢复它们
处理完封闭的行后保存的值。
可以使用生成任意后处理器命令
命令 细绳,
它插入的内容 绳子 进入输出。 这 绳子 内容必须是
与所选的后处理器兼容。 同样,任何以 a 开头的行
反斜杠从字面上复制到输出。
线
EXEC 绳子
执行内容 绳子 就好像它是一条普通的输入线一样。
要执行操作系统 shell 命令,请使用
sh 绳子
并从外部文件中读取行,请使用
复制 绳子
这些命令被 dpic 选项禁用 -z 或通过编译时开关。
命令
打印 表达式|位置|字符串 [ > 绳子 | >> 绳子 ]
将其参数打印或附加到右侧字符串中命名的文件中,或者默认情况下
到标准误。 -z 选项禁用打印到文件。
宏
pic 语言包括宏定义和扩展,使用
定义 姓名 { 什么 },
所以,当 姓名 单独出现或与参数一起出现 姓名 ( 参数, ... ) 那是
由定义中大括号之间的内容替换。 参数中的逗号
list 在字符串或括号内被忽略。 在这个替换中,出现 $1
由第一个参数替换,其他参数依此类推。 价值 $+ 在
宏是给宏的参数数量。 dpic 忽略空白(空格、
新行和制表符)直接位于宏调用中的参数之前。 一种
宏定义可以通过删除
取消定义 姓名
宏定义是全局的,如果存在,可能需要明智地取消定义宏
存在名称冲突的风险。
画画 命令
使用以下通用格式绘制对象:
[ 标签 :] 对象 [ 属性 ] [ 放置 ] [ 字符串 ]
以下项目 对象 可以以任何顺序发生,但顺序可以对
绘制的结果,因为从左到右读取和解释线条。 默认值为
根据需要假定所有绘图参数。 例如,序列
圆 “嚼”; 箭; 框 “吞”
线; 弧 cw ->; 椭圆 “消化”
使用所有对象的默认大小绘制一个简单的流程图,其中的单词居中
圆、框和椭圆。
Attributes
大小和其他参数控制对象的外观。 一个 属性 是一个
关键字或带有适当表达式的关键字。
维度属性如下,显示了有效的缩写:
高度|高|宽|宽|半径|弧度|直径|直径|缩放 表达式
当附加到线性对象时, 高度 和 宽度 适用于箭头尺寸。 这
缩放 属性按比例缩放对象 表达式
字符串的后处理大小事先对于 pic 处理器是未知的,但是一旦
已知,边界框尺寸可以像其他绘制对象一样明确指定,
如图所示:
绳子 WID 表达式 ht 表达式
使用环境变量修改定义对象的线条粗细
线粗 或属性
厚度|厚 表达式
以点数表示。 线条粗细与任何缩放无关。
默认绘制实线; 这可以修改为
固体|不可见|不可见
或
虚线|虚线 [ 表达式 ]
后者中的可选表达式设置短划线之间的长度和距离或
点。
以下属性用于将箭头放在开头、结尾或两端
线性对象:
<-|->|<-> [ 表达式 ]
形状参数 表达式 可以省略,在这种情况下环境的值
变量 箭头 用来。 默认为 箭头 is ->.
圆弧的绘制方向由属性改变
逆时针|顺时针
逆时针 默认值。
要使用灰色阴影填充对象或路径,请使用属性
填 [ 表达式 ]
其中 1 表示白色,0 表示黑色。 路径可以填充在
后处理器允许。
可以使用设置线条颜色
大纲|概述 绳子
其中字符串的内容取决于后处理器。 预定义的颜色
可以指定 LaTeX 或 Tikz-pdf 包。 pic 语言不知道有关的详细信息
颜色; 字符串内容必须与后处理器兼容。 自定义颜色有
使用
命令 绳子
以便后处理器知道它们。
按颜色填充类似,使用属性
阴影 绳子
并且,当填充和轮廓颜色都相同时,这两个属性可以
合并为
颜色|颜色|彩色|彩色 绳子
其中所有四种拼写都是等效的。
最后,属性
同
复制先前绘制的相同类型对象的属性,但具有
当前默认位置。
除了受到影响的规模变化 规模 变量,完整的大小
图片可以通过附加一两个术语来设置 PS。 线路如图:
PS。 [x[y]]
其中 x 和 y 计算为常数值。 在遇到 .PE 线,图
计算宽度 w 和高度 h。 如果 x > 0,则缩放图片,使 w = x。
如果 h > y > 0 或如果 x = 0 且 y > 0,则缩放图片以便 h = y。 水平的
和垂直缩放不是独立的。 文字大小、线条粗细和箭头是
没有缩放。 单位是英寸,例如,
PS。 100/25.4
将最终图片宽度设置为 100 毫米。 打印的字符串文本可能超出
由 w 和 h 定义的矩形边界,除非已明确指定文本尺寸
设置。
如果最终的图表宽度超过 最大宽度 或高度超过 最大psht 然后上图
与上面的 x 和 y 一样缩放。
安置 of 画 对象
默认情况下放置一个对象,以便其条目位于当前点。
显式放置是通过
对象 at 位置
将对象集中在 位置, or
对象 定义 点 at 位置
例如,
弧 cw 止 位置 至 位置 .c at 位置
块也可以通过参考距其左下角的位移来定位,
例如,
A: [ Contents ] (0.5,0.2) at 位置。
默认情况下,线性对象放置在 。开始 放置在当前图形上的点
位置; 否则使用线性对象定义 线路规格, 这是形式
线路规格 = 止 位置 | 至 位置 | 方向 [ 表达式 ]
| 线路规格 线路规格
| 线路规格 然后 线路规格
其中第二行意味着 线路规格 可以连接,第三个是
使用多个绘制多段线性对象 线路规格 隔开 然后。
例如,下面绘制一个三角形,最左边的顶点在当前
观点:
线 up 2 右 1.5 然后 向下 3 然后 至 这里
异常地 线路规格
至 位置 至 位置 至 ...
是多个并且不需要 然后 关键词。
一个单一的 表达式 也是可以接受的 线路规格 紧接在线性对象之后,意味着
该 对象 被拉长 表达式 在当前方向。 这个例外
is
仿样 [ 表达式 ] 线路规格
为此 表达式 是样条张力参数。 如果 表达式 被省略,一条直线是
绘制到前两个样条控制点的中点和从
最后两点到最后一点; 样条与控制点之间的所有中点相切。
If 表达式 存在,样条在第一个和最后一个控制点处相切
其他中点,并且可以调整花键张力。 0 到 1 之间的张力值
是典型的。
在事先不知道多段线性对象的所有点的情况下
或者不方便计算,绘制命令
继续 线路规格
将向先前绘制的线性对象附加一个段,就像 继续 为 然后,
两个区别。 可以在前一个对象和当前对象之间进行任意计算
继续 语句,当前点为上一个对象的退出点。
那个工程
线 止 位置 至 位置 砍 表达式
按以下值截断每一端的行 表达式 或者如果 表达式 被省略,由当前
圆半径。 除此以外
线 止 位置 至 位置 砍 表达式1 砍 表达式2
在两端将线截断两个指定的距离。 截断值可以是
负。
属性
by 位置
用于定位,例如,
移动 by (5,6)
变量 和 表达式
变量名是以小写字母开头的字母序列,可选
与标签一样下标,并通过赋值定义。 例如,以下行
定义变量 x 如果它在当前范围内尚不存在:
x = 表达式
pic 变量的作用域是定义它们的当前块,包括
在当前块中稍后定义的块。 那作业
x := 表达式
需要 x 先前已在当前块或封闭块中定义。
表达式由使用一元运算符“!”组合的浮点值组成。 为了
逻辑否定和通常的括号和二元运算符按降序排列
优先级:
^
* / %
+ -
== != >= <= < >
&&
||
在逻辑测试中,值 0 等价于 false,非零值等价于 true,其中
结果真值为 1。
浮点值作为整数获得,数字具有 e 语法,函数
value,绘制对象的大小值,例如,
最后 盒子.ht,
或一个的水平或垂直坐标 位置, 分别获得为
位置 .x|.y
单参数函数是 ABS, 阿科斯, 阿信, 因为, 经验, 经验, 内部, 日志, 日志, 符号, 罪,
平方, 棕褐色, 地板。 功能 EXP 和 日志 以 10 为底。函数 RAND() 提供一个
0 到 1 之间的随机数,以及 兰特 (表达式) 初始化随机数生成器。
二元函数是 阿坦2, 最大 分钟, 模块 哪里 模块 是模函数
提供积极的价值。
预定义 环境 变量
一组预定义的变量建立了绘图参数的默认值。 他们的
值从上级块继承,但可以通过赋值更改。 他们能
像其他变量一样用于表达式中。 变量、它们的默认值和
默认用途如下
弧形 0.25圆弧半径
箭头 0.1 箭头长度
带箭头的 0.05 箭头宽度
盒子 0.5箱高
盒拉德 0 圆角框角半径
盒装 0.75 盒宽
圆形雷达 0.25圆半径
破折号 0.05 虚线长度
省略号 0.5 椭圆高度
椭圆形 0.75 椭圆宽度
直线 0.5 垂直线高度
线宽 0.5 水平线长度
移动窗口 0.5 水平移动长度
移动窗口 0.5 水平移动长度
文本 0 假定的文本高度
文本偏移 2.5/72 文本对齐缺口
文本宽度 0 假定的文本宽度
当一个值被赋值给变量时 规模, 以上所有值都乘以
的新值 规模。 从而改变了绘图单位,但默认的物理单位
绘制对象的大小保持不变,因为在最终输出时,尺寸除以
此 规模 价值。 此外,以下内容不变 规模:
箭头 1个箭头形状
填空 0.5 填充密度
线粗 0.8 线宽(以磅为单位)
最大psht 11.5 最大允许图高度
最大宽度 8.5 最大允许图宽度
规模 1 个绘图单位比例因子
变量 最大宽度 和 最大psht 可能必须为大型图表重新定义或
例如,风景人物。
位置
A 位置 相当于在当前绘图单位中定义的坐标对,并且可以是
以下列形式表示:
这里
当前绘图位置。
表达式, 表达式
一对用逗号分隔的表达式。
( 位置 )
括号中的位置用于分组。
( 位置 , 位置 )
从第一个位置获取水平值并
第二个的垂直值。
位置 +|- 位置
矢量加法。
位置 *|/ 表达式
标量后乘。
标签
已定义位置或对象的标签。 职位
是物体的中心。
表达式 [的 此 道路] 之间 位置 和 位置
这个例子 x 之间 A 和 B 等于 A*(1-x) + B*x。
任何值 表达式 被允许。
表达式 < 位置, 位置 >
前一种形式的缩写形式。
数 第|第|第|个|第 [持续] 对象
当前块内的枚举对象。
对象 是其中一个
线, 移动, 箭, 弧, 框, 椭圆, 圈, 样条, [],"" .
数量可以是
取而代之 { 表达式 }. 例如, 最后 "" 意思是
最后一个字符串,和 {2^2}个 [] 表示第四个区块
当前范围。 位置是物体的中心。
当上面使用复合位置或表达式时,可能需要括号
形式。
最后,一个位置可以表示为
对象 . 定义 点
琴弦
A 绳子 是用双引号括起来的字符序列。 包含双引号
在字符串中,在它前面加上反斜杠。 字符串可以使用 +
操作员。 类C函数
sprintf的( 格式 细绳, 表达式, ... )
相当于一个字符串。 表达式是浮点值,所以唯一适用的
数字格式是 e, f, 和 g.
多个字符串,例如 “文本1” “文本2” 堆叠并垂直居中。
附着在物体上的绳子覆盖在物体的中心,任何 高度 or 宽度
属性适用于对象,而不是字符串。 但是,理由属性
只是 和 正义 可以应用于覆盖对象的堆栈的单个字符串。
默认情况下,独立字符串以其中心在当前点放置,或通过
指定其定义点之一的位置作为任何 宾语, 例如,
“脆脆的 饼干” WID 82.3/72 ht 9.7/72 .sw at Q
安置预选赛 以上, 下面, 只是, 正义 将字符串放在上方、下方或
相对于放置点是合理的。 例如,
“脆脆的 饼干” at Q 只是 以上
将字符串放在上面和 文本偏移 右边的单位 Q.
示例
源文件example.pic:
\documentclass{文章}
\使用包{tikz}
\ {开始}文件
PS。
框 虚线 “你好” “世界”
.PE
\ END {}文件
命令
DPIC -g 例子.pic > 例子.tex; 胶乳 例子
生成 example.pdf 包含一个虚线框,里面堆放着 Hello 和 World。
生成包含用于插入 LaTeX 的 PSTricks 绘图命令的 .tex 文件
使用 \input 命令删除文档,删除上面的前三行和最后一行
使用源和处理 -p dpic 选项。
同样,图片来源
PS。
\definecolor{紫红色}{rgb}{0.8,0.53,0.6}%
框 阴影 “粉红色”
.PE
处理时会产生一个充满跳蚤般颜色的盒子 DPIC -g or DPIC -p 和
将生成的文件插入到分别调用 tikz 的乳胶源文件中
或 pstricks 包。
使用 onworks.net 服务在线使用 dpic