我有一张桌子,我想给它一个背光透明的背景色。我知道我们有“填充颜色”选项,但是在那里,我们只能使用类似于rgb (意思是不使用rgba)和颜色代码,看起来像这样:fillcolor={rgba 0.9 0.5 0}或fillcolor={#ffed00}。
那么我怎样才能使背景更加透明呢?
发布于 2021-08-30 12:11:19
您可以在PDFlib中实现这一点,如果您创建了一个带有"opacityfill“的GState,然后在放置表时输出它。在一个简单的代码示例中,如下所示:
$gstate= $p->create_gstate("opacityfill=.5");
$tbl = $p->add_table_cell($tbl, 1, 1,
"Text",
"fittextline={fontname=NotoSerif-Regular encoding=unicode " +
"fontsize=12} colwidth=100 rowheight=30");
$result = $p->fit_table($tbl, 50, 50, 500, 800, "fill={ {area=table fillcolor={red} } } gstate=" . $gstate);然后,如果将表放在彩色背景(如图像)上,则此代码片段将导致以下输出,例如:

有关PDFlib ()的详细信息,请参阅create_gstate API参考中的第7.2章“图形状态”。也许也很有趣,如果您希望只对一个单元格产生影响,您还可以使用Matchbox定义单元格的装饰,并且可以用它指定一个GState。(详见PDFlib 9.3.1教程,第9.4章“火柴盒”)
https://stackoverflow.com/questions/68982526
复制相似问题