1

winformsアプリケーションからJPG画像を印刷しようとしています。元の画像に非常に近い色が必要ですが、OSで印刷された画像と比較すると、結果の色はより不透明です(Windowsフォトビューアーまたはワードから) .

これはコードです:

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
    {
        e.Graphics.PageUnit = GraphicsUnit.Pixel;
        e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
        e.Graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
        e.Graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
        //e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
        e.Graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.GammaCorrected;
        e.Graphics.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;
        var img = Image.FromFile(@"C:\photo.jpg", true);
        e.Graphics.DrawImage(img, 0, 0);
    }

    private void button1_Click(object sender, EventArgs e)
    {
        var result = printDialog1.ShowDialog();
        if (result == System.Windows.Forms.DialogResult.OK)
        {
            printDocument1.PrinterSettings = printDialog1.PrinterSettings;
            printDocument1.Print();
        }
    }

グラフィック プロパティ (SmoothingMode、PixelOffsetMode など) の値を変えてみましたが、実際の色を取得できません。たとえば、黒はアプリケーションで印刷するとグレーに近くなりますが、Word で印刷すると実際には黒に近くなります。

完全な写真を送ることはできませんが、これは同じプロパティを持つ JPG のセクションです。

ここに画像の説明を入力

4

0 に答える 0