Visio 프로젝트의 셰이프를 벡터 형식으로 가져 오려고합니다. 그것은 Visio UI에서 할 수 있지만 프로그래밍 방식으로 달성 할 수 없습니다. 내 코드는 다음과 같이 보입니다 :Visio 셰이프를 벡터 형식으로 얻는 방법
foreach (Visio.Master master in doc.Masters)
{
imageName = master.NameU;
string imageFileName = Path.Combine(@"c:\temp", imageName);
master.Export(imageFileName + ".svg");
}
기능 내보내기는이 형식으로 된 파일 확장자와 내보내기 모양을 감지합니다. 그것은 bmp png 등 모든 래스터 형식에 맞습니다. 래스터 파일 승/O 문제로 프로젝트의 모양을 얻을 수 있습니다. emf 또는 wmf와 같은 형식을 전달하면 모든 파일이 저장되며 실제로는 wmf/emf 형식입니다. 그러나 래스터 이미지가 임베드되어 있으므로 사실 래스터 이미지입니다.
마지막으로 놀랍습니다 - svg 확장자를 전달하면 내 보낸 모든 파일이 몇 개를 제외하고 모두 비어 있습니다. 이 것들은 실제로 비어있는 SVG가 아니지만 전체 visio 페이지를 보여줍니다! 하나의 도형이 아닙니다. 모든 프로젝트 페이지에 대한 하나의 svg 파일. 이것은 내가 원하는 것이 아닙니다.
제발 도와주세요 - 프로그래밍 방식으로 Visio에서 벡터 형식의 모든 도형을 가져 오는 방법.
의견을 주셔서 감사합니다. 예, Visio는 스텐실에서 svg로 모든 마스터 셰이프를 내보낼 수 있습니다. 단일 모양으로 다이어그램을 만드는 데 좋은 아이디어입니다. 도움이 될 수 있습니다. 아마 아프다. 또 다른 옵션으로 전체 svg 다이어그램 (쉽게 얻을 수 있음)을 셰이프로 분할하려고합니다. 다른 방법은 너무 어렵습니다. 셰이프 지옥을 파고 싶지 않아 형상 도형을 가져올지라도 필요한 다른 시각적 특성 (스타일 등)이 있습니다. – AlexandrS