나는 입력 데이터가 요구하는 수치를 가진 PDF 파일을 만들 프로그램을 만드는 임무를 가졌다. 이 이미지에서 우리는 입력 데이터가 무엇인지, 즉 크기, 도형 사이의 간격, 모양의 유형, 청사진 번호를 볼 수 있습니다. 실제 다이어그램이 어떻게 보이는지 아래에 있습니다. 프로젝트가 벡터 그래픽을 사용하는html 페이지 안에 svg의 크기 유지
input data above and actual graphics below
그것은 매우 중요합니다, 그래서 그들은 정말 유연하고있는 한 나는 SVGs를 사용하여 생각하고, 프로그램을 생성하기 위해 상대적으로 쉽습니다. 그런 다음 .NET 라이브러리 (Select.HtmltoPdf)를 사용하여 HTML 문자열을 PDF로 변환합니다. 이는 C#에서 직접 PDF를 디자인하는 것이 다리 사이의 고통이기 때문에 매우 편리합니다. HTML을 사용하면 CSS와 내가 익숙한 것을 사용하는 이점이 있습니다. 유일한 단점은 그 라이브러리를 사용하여 svg를 직접 렌더링 할 수 없다는 것입니다. 먼저 html 파일에 넣어야합니다.
HTML에 SVG를 삽입 한 다음 라이브러리를 사용하여 PDF로 렌더링 할 때 문제가 발생합니다. Corel Draw 또는 Adobe Illustrator에서 svg를 직접 열면 치수가 유지되고 모든 것이 그대로 유지됩니다. 그러나 파일의 확장명을 .html로 변경하고 Chrome에서 열고 PDF로 인쇄하거나 내 프로그램에서 직접 PDF를 렌더링하면 모양이 약간 축소됩니다.
내 질문은 HTML 페이지에 표시하는 동안 경로의 치수를 그대로 유지하는 방법입니다.
<svg x="0" y="0" width="215.9mm" height="279.4mm" viewBox="0 0 215.9 279.4">
<rect x="40" y="40" width="25" height="25" rx="1.5875" ry="1.5875" stroke="black" stroke-width="0.5" fill-opacity="1"/>
<ellipse cx="20" cy="20" rx="20" ry="20" stroke="black" stroke-width="0.5" fill-opacity="0"/>
</svg>
그리고 기본적으로 주위 <html>
태그와 같은 SVG입니다 내가 사용하려고 해요 html로, :
여기에 내 현재 .svg입니다.
<!DOCTYPE html>
<html>
<meta HTTP-EQUIV="Content-Style-Type" CONTENT="text/css" CHARSET="UTF-8"/>
<svg x="0" y="0" width="215.9mm" height="279.4mm" viewBox="0 0 215.9 279.4">
<rect x="40" y="40" width="25" height="25" rx="1.5875" ry="1.5875" stroke="black" stroke-width="0.5" fill-opacity="1"/>
<ellipse cx="20" cy="20" rx="20" ry="20" stroke="black" stroke-width="0.5" fill-opacity="0"/>
</svg>
</html>
감사합니다!