📄 operator.c
字号:
/* * Interpress utilities * * Written for Xerox Corporation by William LeFebvre * 24-May-1984 * * Copyright (c) 1984, 1985 Xerox Corp. * * HISTORY * 15-Jan-86 lee at Xerox, WRC * Removed vax dependencies. * * 29-apr-85 ed flint add conditional compilation for vax-11 c (vms) *//* * Subroutines to help build interpress files: * * operator interface level - these routines call routines at the literal * interface level to provide an easy way to * write operators along with their parameters. */# include "iptokens.h"# include "literal.h"# include "operator.h"char *index();op_i(opcode, i)int opcode;long i;{ AppendInteger(i); AppendOp(opcode);}op_n(opcode, n)int opcode;double n;{ AppendNumber(n); AppendOp(opcode);}op_ii(opcode, i1, i2)int opcode;long i1, i2;{ AppendInteger(i1); AppendInteger(i2); AppendOp(opcode);}op_ni(opcode, n, i)int opcode;double n;long i;{ AppendNumber(n); AppendInteger(i); AppendOp(opcode);}op_nn(opcode, n1, n2)int opcode;double n1, n2;{ AppendNumber(n1); AppendNumber(n2); AppendOp(opcode);}op_nnnn(opcode, n1, n2, n3, n4)int opcode;double n1, n2, n3, n4;{ AppendNumber(n1); AppendNumber(n2); AppendNumber(n3); AppendNumber(n4); AppendOp(opcode);}op_nnnnnn(opcode, n1, n2, n3, n4, n5, n6)int opcode;double n1, n2, n3, n4, n5, n6;{ AppendNumber(n1); AppendNumber(n2); AppendNumber(n3); AppendNumber(n4); AppendNumber(n5); AppendNumber(n6); AppendOp(opcode);}/* * Here are some extra and useful goodies */SetupFont(name, size, frame_index)char *name;double size;int frame_index;{ int i = 1; char *slashp; char *namep = name; /* make heirarchical name vector using slash as separator */#ifdef vax11c while((slashp = strchr(namep, '/')) != 0)#else while((slashp = index(namep, '/')) != 0)#endif { *slashp = '\0'; AppendIdentifier(namep); namep = slashp + 1; *slashp = '/'; i++; } AppendIdentifier(namep); AppendInteger((long) i); AppendOp(OP_makevec); /* find the font */ AppendOp(OP_findfont); /* build a scaling transform */ Scale(size); /* apply the transform to the font */ AppendOp(OP_modifyfont); /* set the frame index of choice */ AppendInteger((long) frame_index); AppendOp(OP_fset);}ShowString(string)char *string;{ AppendString(string); AppendOp(OP_show);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -