代码之家  ›  专栏  ›  技术社区  ›  Mouffette

调整图像大小并保留元数据/属性项

  •  2
  • Mouffette  · 技术社区  · 15 年前

    .NET库在调整看起来很棒的图像的大小方面做得非常出色:

    Bitmap newImage = new Bitmap(newWidth, newHeight);
    using (Graphics gr = Graphics.FromImage(newImage))
    {
        gr.InterpolationMode = InterpolationMode.HighQualityBilinear;
        gr.DrawImage(srcImage, new Rectangle(0, 0, newWidth, newHeight));
    }
    

    我在网上看到的解决方案的一个问题是,它们会去除嵌入在这些图像中的元数据。是否有方法将此数据移动到新图像?还是使用原始图像保存这些数据?

    理想情况下,如果可能的话,我希望让这个解决方案只使用来自Microsoft的内置.NET库。

    1 回复  |  直到 15 年前
        1
  •  3
  •   arbiter    15 年前

    全部迭代 property items 并将它们添加到新图像中。您可以找到一个如何使用此方法复制元数据的示例 here .