如何在 groff 中包含图片作为外部文件?

如何在 groff 中包含图片作为外部文件?

在使用groffand时pic可以执行以下操作:

$ cat test.ms
.TL
Test

.NH 1 
Test Header

.PS
circle
arrow
box
.PE
$ cat test.ms | groff -ms -p > test.ps

它会生成一个有效test.ps文件,其中包含pic.

在较大的文档中,为了可维护性,可能需要将图片pic描述保存在单独的文件中并从主.ms文件调用此类文件。

在尝试实现此功能时,我发现.so可以获取外部文件,但我发现设置将外部.pic文件嵌入到主.ms文件中的配置存在问题,如下所示:

$ cat test2.pic
.PS
circle
arrow
box
.PE
$ cat test2.ms
.TL
Test

.NH 1 
Test Header

.so test2.pic
$ cat test2.ms | groff -ms -p > test2.ps
test2.pic:1: macro error: bad arguments to PS (not preprocessed with pic?)
$ 

哪种方法可以实现将代码作为外部文件包含.pic在主宏文件中?.ms

答案1

您需要添加soelim预处理器,它将.so通过包含实际文件来消除命令。

在你的情况下,这应该是(注意添加的-s标志):

cat test2.ms | groff -ms -p -s > test2.ps

相关内容