代码之家  ›  专栏  ›  技术社区  ›  Thiyaneshwaran S

wmz文件到gif或jpg

  •  1
  • Thiyaneshwaran S  · 技术社区  · 15 年前

    如何将“wmz”文件转换为c#中的“gif”或“jpg”文件?

    3 回复  |  直到 15 年前
        1
  •  2
  •   Darin Dimitrov    15 年前

    WMZ 是一个 compressed Windows Metafile convert to the desired format (别忘了把这些都处理掉 Image 未在MSDN示例中完成的实例)。

        2
  •  1
  •   Thiyaneshwaran S    15 年前

    谢谢你的帮助。我可以解压“wmz”文件并将其转换为wmf文件。代码是

    public String DeCompressWMZFile(String wmzFile)
    {
        MemoryStream decompressStream = new MemoryStream(File.ReadAllBytes(wmzFile));
        GZipStream gzipStream = new GZipStream(decompressStream, CompressionMode.Decompress);
        MemoryStream outStream = new MemoryStream();
        int readCount;
        byte[] data = new byte[2048];
        do
        {
            readCount = gzipStream.Read(data, 0, data.Length);
            outStream.Write(data, 0, readCount);
        } while (readCount == 2048);
        String imgFile = Path.GetDirectoryName(wmzFile) + "\\" + Path.GetFileNameWithoutExtension(wmzFile) + ".wmf";
        File.WriteAllBytes(imgFile, outStream.GetBuffer());
        // Then add the code to create a new word document and insert 
        return imgFile;
    }
    
        3
  •  0
  •   Dmitry Shashurov    10 年前

    HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://link1.ru/image.wmz");
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();
    using (Stream inputStream = response.GetResponseStream()) 
    {
        using (GZipStream gzipStream = new GZipStream(inputStream, CompressionMode.Decompress))
        {
            Image i = Image.FromStream(gzipStream);
            i.Save("1.gif", ImageFormat.Gif);
        }
    }