2017-10-11 3 views
0

Electron 프로젝트의 기존 SVG에 외부 SVG를로드하고 추가하려고합니다. d3.xml 방법이 나를 위해 작동하지 않습니다 그래서 난 d3.symbols보고, 내가 경로 데이터 (fs.readFileSync 전화에서) 제공한다면 내 자신의 기호를 만들 수 있기를 바랍니다.이 컨텍스트에서 "컨텍스트"란 무엇입니까 : "symbol.context ([컨텍스트])

문서를 보면 "컨텍스트"가 무엇을 의미하는지 이해하지 못합니다. g (그룹)과 같은 요소입니까? 최상위 SVG입니까?

여기에서 약간의 창업.

symbol.context ([컨텍스트]) 컨텍스트가 지정된 경우

는 컨텍스트를 설정하고,이 심볼을 발전기를 돌려 준다. 컨텍스트를 지정하지 않으면 현재 컨텍스트 인 이 null로 기본 설정됩니다. 문맥이 null가 아닌 경우, 생성 된 심볼이 일련의 패스 메서드 호출로서이 문맥에 렌더링됩니다. 그렇지 않으면 생성 된 심볼을 나타내는 경로 데이터 문자열이 입니다. d3 버전 4에 새로 추가의

답변

1

하나는 HTML5 캔버스 요소에 직접 그릴 수있는 능력이었다. 이전 버전은 주로 SVG을 사용한 그림 만 처리했습니다. .context 호출은 HTML5 캔버스 컨텍스트를 필요로하고 그 캔버스에서 이후의 그리기 작업이 수행됩니다. null 인 경우 (기본값이므로) d3은 사용자가 svg로 그려진 것으로 가정하고 나중에 호출 할 경로 데이터를 .attr("d", pathDataString)으로 반환합니다. 버전 4 CHANGES document에서

:

모양이 더 이상 SVG로 제한됩니다; 이제 캔버스로 렌더링 할 수 있습니다! 셰이프 생성기는 이제 선택적 컨텍스트를 지원합니다. CanvasRenderingContext2D를 사용하면 채우기 또는 칠하기 캔버스 경로로 셰이프를 렌더링 할 수 있습니다. 예를 들어, 캔버스 원형 차트는 아크 생성기를 사용할 수 있습니다.

+0

아, 그래. 알았다. 감사! –

관련 문제