我试图在使用ODS标签集时在输出中显示下划线(_),但由于某些未知原因,它未按预期出现。我正在使用SAS 9.4。 它与Bodytitle和Bodytitle_aux一起出现,但使用标签集时分页更好。
不幸的是,使用unicode也不起作用。 这是示例代码:
options nonumber; %let path=; ods path(prepend) work.templat(update); proc template ; define style newstyle ; parent = styles.journal ; class Parskip / font = fonts("headingFont") cellpadding = 0 cellspacing = 0 /* Only for Measured */ frame= void Rules = NONE BorderWidth = 0 Color = _undef_ BackGroundColor = _undef_; style byline / font_face="Courier New" font_style=Roman background = white; style Body from Document / font_face="Courier New" font_style=Roman background = white; style data / font_face="Courier New" font_style=Roman ; style table / font_face="Courier New" font_style=Roman bordercolor=black background = white borderwidth=1 ; style cellcontents / font_face="Courier New" font_style=Roman ; style TitleAndNoteContainer / font_face="Courier New" font_style=Roman background = white; style ProcTitle / font_face="Courier New" font_style=Roman ; style systemtitle / font_face="Courier New" font_style=Roman ; style rowheader from headersandfooters / font_face="Courier New" font_style=Roman ; style BodyDate / font_face="Courier New" font_style=Roman ; style PageNo / font_face="Courier New" font_style=Roman ; style SysTitleAndFooterContainer / font_face="Courier New" font_style=Roman ; style header from headersandfooters / font_face="Courier New" font_style=Roman background = white; style SystemFooter / font_face="Courier New" font_style=Roman bordercolor=black background = white borderwidth=1 ; style NoteContent / font_face="Courier New" font_style=Roman font_size=8pt; end; run ; options papersize=letter leftmargin=3.65cm rightmargin=2.11cm topmargin=3.36cm bottommargin=3.3cm orientation=landscape; ods escapechar="^"; ods tagsets.rtf file="&path.\shoes2file.rtf" options(vspace='no') options(continue_tag="no"); ods tagsets.rtf style=newstyle ; title1 'Title: Shoes'; proc report data=sashelp.shoes(obs=10) nowd style(header)=[rules=group frame=above background=white font_size=8pt] style(report)=[outputwidth=100% rules=group frame=hsides background=white font_size=8pt ] style(column)=[rules=group font_size=8pt] spanrows; column region product; define region / '___Region___' display style(column)=[width=1.5cm asis=on just=l] style(hdr)=[asis=on just=l]; define product / '___Product___' display style(column)=[width=1.5cm asis=on just=l] style(hdr)=[asis=on just=l]; footnote 'Footnote Page L____4'; run; ods tagsets.rtf close; options nonumber nocenter nobyline nodate formdlim='' formchar="|_---|+|---+=|-/\<>*" MISSING=" " ;
答案 0 :(得分:1)
问题在于,在Courier字体(实际上是Courier New)中,下划线甚至在普通字符的尾部以下(这对于通过“ overstriking”进行下划线非常有用)。
我不确定如何修复样式,但是我可以通过将“段落”后的间距从0点更改为1点来显示下划线。这是用\sa0
替换RTF文件中所有\sa20
命令的数据步骤。生成的文件显示下划线。
data _null_;
infile "&path/shoes2file.rtf";
file "&path/shoes2file_fixed.rtf";
input;
_infile_ = tranwrd(_infile_,'\sa0','\sa20');
put _infile_;
run;