2009-04-24 13 views
0

안녕하세요, 내가 투명 영역을이 (가) 포함 .WMF 파일의 그물의 내부 (System.Drawing) 기반 메타 파일/이미지 처리에 약간의 문제가 발생하고신뢰성 .WMF/WMF 기반의 이미지 변환을

를 픽셀. 기본적으로 MetaFile.LoadFile (...)을 실행하고 TIFF/PNG 등으로 저장하려고 할 때마다 해당 소스 파일의 일부 영역이 누락됩니다. 나는 그것을 내려 놓을 수는 없지만 메타 파일 내의 벡터 기반 정보는 잘 작동하지만 픽셀 기반 영역 (예 : .wmf 내에있는 이미지)이 누락되었습니다.

신뢰할 수있는 .net 네이티브 및 타사가 아닌 방법으로 wmf 파일을 올바르게 변환 할 수 있습니까 (예 : .wmf .. 최종 픽셀 기반 이미지가 픽셀 화 된 것처럼 보입니다)?

건배 및 감사, -J

답변

0

확인 잘 명백하게 가장 안정적 방법 다른 포맷으로 메타 파일 (.WMF/.EMF) 변환 내부적 PNG로 변환/처리는 MSDN 설명 메타뿐만 어딘가에 출력 형식으로 .PNG 사용하는 어쨌든 형식 (알파 등) 및 예 기본적으로 Metafile.Save ("somewher"...)는 png ImageFormat에서 출력됩니다.

메타 파일 입력에서 비 PNG 이미지를 만들려는 경우 여분의 공간으로 이동하면 &을 PNG로 저장하고 해당 PNG를 가져 와서 다시 매핑하면 가장 좋은 결과를 얻을 수 있습니다. 최종 형식으로 변환하십시오. Kinda lame,하지만 다시 .. wmf 그 자체가 어쨌든 별나다. 그리고 나는 그것이 (악의가있다) 결론에 도달했다. ;)

-j

0

문제는 WMF/EMF는 GDI가있는 동안 .NET은 GDI + 때문이다. GDI +가 GDI와 호환되지 않는다는 것을 아는 것이 중요합니다. GDI +는 완전히 다른 API와 기능을 가지고 있습니다. 따라서 GDI 메타 파일의 일부 작업은 예상대로 작동하지 않습니다. 투명 비트 맵뿐만 아니라 메타 파일 등의 세계 변형은 종종 Microsoft에서 광고하는대로 제대로 작동하지 않습니다.

내가 지금까지 얻은 최선은 메타 파일을 네이티브 GDI +로 변환하는 것입니다.이 네이티브 GDI +는 GDI 스택을 에뮬레이션하고 텍스트 위치 지정 등을 위해 몇 가지 주요 조정을 적용해야합니다.

EMFExplorer를 살펴보십시오. 정보가 많이 도움이 될 수 있습니다. http://www.codeproject.com/KB/GDI-plus/emfexplorer.aspx