문제
System.Drawing.Image에 WMF 또는 EMF 이미지가있는 경우 비트 맵으로 렌더링하지 않고 C#으로 Metafile 데이터를 저장하는 방법이 있습니까? image.save를 호출하면 비트 맵으로 렌더링되며 원래 데이터를 유지하여 유효한 .wmf 또는 .emf 형식 파일이되도록 원래 데이터를 유지하려고합니다.
해결책
당신이 할 수없는 것 같습니다.
에 이 MSDN 페이지, 그것은 언급되어있다 :
발언
저장 메소드를 사용하여 그래픽 이미지를 WMF (Windows Metafile Format) 또는 Emf (Enhanced Metafile Format) 파일로 저장하면 결과 파일이 PNG (Portable Network Graphics) 파일로 저장됩니다. 이 동작은 .NET 프레임 워크의 GDI+ 구성 요소에 파일을 .wmf 또는 .emf 파일로 저장하는 데 사용할 수있는 인코더가 없기 때문에 발생합니다.
다른 팁
이 MSDN 페이지에도 불구하고 실제 EMF 파일을 저장할 수 있습니다. 이 질문 참조 : gdi-c-how-save-in-image-as-emf
gdi32.dll을 사용하는 경우 orignal 형식으로 metafile을 저장할 수 있습니다.
설명 된 방법을 사용하고 있습니다 여기 그리고 그것은 잘 작동합니다.
제휴하지 않습니다 StackOverflow