You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iText7生成PDF中图片打印分辨率过低问题求助

iText7生成PDF中图片打印分辨率过低问题求助

大家好,我最近在用iText7生成PDF文件并往里面加图片,大部分场景下都挺正常的,但碰到个特别头疼的问题:从生成的PDF里打印图片时,分辨率低得离谱,可是直接在Windows里打印这张原图的话,清晰度就特别好,完全没问题。

我实在摸不着头脑,不知道自己哪里写错了。为了方便复现问题,我特意做了个精简的示例项目,核心代码如下:

private static async Task Main(string[] args)
{
    using MemoryStream memoryStream = new MemoryStream();
    PdfWriter writer = new PdfWriter(memoryStream, new WriterProperties().SetCompressionLevel(0));
    PdfDocument pdfDoc = new PdfDocument(writer);
    Document document = new Document(pdfDoc);
    float pageMargin = CalcCentimeterToPoints(PAGE_MARGIN_CM);
    document.SetMargins(pageMargin, pageMargin, pageMargin, pageMargin);

    PageSize pageSize = PageSize.A4;
    pdfDoc.SetDefaultPageSize(pageSize);

    // 加载并添加图片
    ImageData imageData = ImageDataFactory.Create("test-image.png");
    Image pdfImage = new Image(imageData);
    // 调整图片宽度适配页面
    pdfImage.SetWidth(pageSize.GetWidth() - 2 * pageMargin);
    document.Add(pdfImage);

    document.Close();
    // 后续将内存流中的PDF保存到文件的逻辑
}

private static float CalcCentimeterToPoints(float cm)
{
    return cm * 28.3465f;
}

我已经试过把PDF的压缩级别设为0了,可打印出来的图片还是糊得不行。有没有朋友遇到过类似的情况?或者能帮我分析下可能的原因,给我点排查方向呀?

备注:内容来源于stack exchange,提问作者Marvin Klein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 11:48:05