使用C#(WPF构建)中的PDFSharp渲染TIFF图像会在PDF文档中产生某种“灰色叠加”,您会在正确的图像中看到它:
原始TIFF文件源可以在以下下载链接中找到:
源TIFF文件在圆内没有颜色定义(除了明显的圆形边框),因此应在圆内呈现完美的白色。 但是,在创建PDF文档后,圆圈内会出现此灰色叠加层。我不知道这是从哪里来的-更令人困惑的是,它仅在圆圈的内部,而外部却保持完美的白色。
TIFF文件设置为CMYK彩色模式。 PDF文档本身也设置为CMYK。 这是我使用的相关代码:
PdfDocument document = new PdfDocument();
document.Options.ColorMode = PdfColorMode.Cmyk;
PdfPage page = document.AddPage();
page.Orientation = PageOrientation.Portrait;
page.Width = XUnit.FromMillimeter((int)pageSizeX);
page.Height = XUnit.FromMillimeter((int)pageSizeY);
Assembly myAssembly = Assembly.GetExecutingAssembly();
Stream bImgStream = myAssembly.GetManifestResourceStream([path_to_tiff_file]);
XImage bImg = XImage.FromStream(bImgStream);
XGraphics gfx = XGraphics.FromPdfPage(page);
gfx.DrawImage( bImg, x, y, w, h );
在PDF文档中,圆的边界本身也有些“不饱和”。因此,由于某种原因,似乎在整个圆上绘制了一个叠加层,使内部变成灰色,削弱了圆的边界...
任何能帮助我弄清这一点的提示将不胜感激。