ITextSharp、ITextExtractionStrategy 提取颜色(Pantone、CMYK)

ITextSharp, ITextExtractionStrategy Extract the Color (Pantone,CMYK)

我想使用 ITextSharp 从 PDF 中提取 Pantone 颜色。

我的代码取自 Chris Haas awnser。它经过大量修改以提取带有位置的单词(不仅仅是块),但其核心仍然相同。 现在我必须提取更多的 RGB 值,如 CMYK 值或 Pantone 颜色,存储在 PDF 中。

public void RenderText(TextRenderInfo renderInfo)
{
     var colorSupported = renderInfo.GetFillColor();
     ...
}

renderInfo.GetStrokeColor();

不符合我的需求。我想提取更多然后RGB。

我假设你说

renderInfo.GetFillColor() or renderInfo.GetStrokeColor() does not fit my needs. I would like to extract More then RGB.

因为那些方法 return BaseColor 实际上只提供 RGB 值。

不过,如果您更准确地检查类型层次结构,您会注意到有多个 class 派生自 BaseColor,即 CMYKColorDeviceNColorGrayColorLabColorPatternColorShadingColorSpotColorUncoloredPattern,甚至更多。

您必须识别 returned 颜色对象的实际 class 并进行相应的投射。