Warning! We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it. Read more about our Privacy Policy and Cookie Policy
SVGã使ã£ãã軽éã§å¼·åãªã°ã©ãã£ãã¯æç»ã©ã¤ãã©ãªã¼ãGraphicsJSããç»å ´ãã·ã³ãã«ãªã²ã¼ã ãä¾ã«ãåºæ¬çãªä½¿ãæ¹ãéçºè èªãã解説ãã¾ãã HTML5ã¯æè¿ã®Webã«ãããä¸å¿çãªåå¨ã§ããããã¦ä»æ¥ã®ã¤ã³ã¿ã©ã¯ãã£ããªç»åä½æã«ããã¦ã¯ãSVGã¨Canvasãå¤ãã®äººã好ãã§ä½¿ãæè¡ã«ãªã£ã¦ãã¾ããFlashã¯å¿ãå»ãããSilverlightã¯Webã®ã©ããã«çæ¯ããå¸å°åç©ã®ã¦ãã³ã¼ã³ã®ããã«ãªãããµã¼ããã¼ãã£ã¼è£½ãã©ã°ã¤ã³ã®ãã¨ãè¦ãã¦ãã人ã¯ã»ã¨ãã©è¦ãããªããªãã¾ããã SVGã¨Canvasã«ã¤ãã¦ããããã®é·æãçæãããè°è«ããã¦ãã¾ãããã¤ã³ã¿ã©ã¯ãã£ãè¦ç´ ãä½æãããæä½ãããããå ´åã«ã¯SVGãããé©ãã¦ãã¾ããSVGã¯XMLè¨èªãã¼ã¹ã®ãã¯ã¿ã¼å½¢å¼ã§ãããã<svg>ã¿ã°ã使ã£ã¦ç»åããã¼ã¸ã«èªã¿è¾¼ãã°ãã¹ã¦ã®ã¨ã¬ã¡ã³ããSVG DOMã§å©ç¨å¯è½ã«ãª
PDFã®ãã¡ã¤ã«æ§é ãç解ããã¨ãããã¹ãã¨ãã£ã¿ã§ãç´æ¥PDFãã¡ã¤ã«ãä½ããã¨ãã§ããããã«ãªãã¾ãããã®ã¨ã³ããªã¼ã§ã¯PDFãã¡ã¤ã«ã®åºç¤è¦ç´ ã説æããç°¡åãªPDFãã¡ã¤ã«ãä¾ã«ãã¦ãã¡ã¤ã«æ§é ã説æãã¾ããæ´ã«ãããã¹ãã渡ãã¨PDFãã¡ã¤ã«ãåãã¦ãããç°¡åãªããã°ã©ã ããPDFãèªã¿è¾¼ãã§ç°¡åãªè§£æãããããã°ã©ã ãæ¸ãã¦ã¿ã¾ãã ç®æ¬¡ ç®æ¬¡ ã¾ããã ãªãã¸ã§ã¯ã éæ¥åç § ãã¡ã¤ã«æ§é Hello, world! ããã ãã¬ã¼ã© ç¸äºåç §ãã¼ãã« æ¬ä½ PDFãçæããããã°ã©ã æ¥æ¬èªã®æ±ãæ¹ æ¥æ¬èªãå«ãPDFãçæããããã°ã©ã ã°ã©ãã£ãã¯ã¹ PDFãèªãããã°ã©ã ãã¨ãã ã¾ããã 1990年代ååãã¢ããã·ã¹ãã ãºã¯ãã©ã®ãã©ãããã©ã¼ã ãããã¤ã¹ã§ãææ¸ã確å®ã«è¡¨ç¤ºã»å ±æã§ãããã¨ãç®çã¨ãã¦PDFãã¡ã¤ã«ãã©ã¼ããããéçºãã¾ããã PDFã®è¡¨ç¤ºã½ãã
ï¼æ³¨è¨ï¼ãã®è¨äºã§ç´¹ä»ã®ãSnap.svg Animatorãã¯ãã§ã«å ¬éãçµäºãã¦ãã¾ãããã®è¨äºã®å 容ã¯ã¢ã¼ã«ã¤ãã¨ãã¦æ®ãã¦ãã¾ãããåä½ããªãããã注æãã ããã SVGã¨ã¹ã»ãã¤ã»ã¸ã¼ã¨ã¯HTMLã§ãã¯ã¿ã¼ã°ã©ãã£ãã¯ã¹ãæ±ãããã¯ããã¸ã¼ã§ããJPEGãPNGãªã©ã®ã©ã¹ã¿ã¼ãã¼ã¿ã«å¯¾ããSVGã¯ãã¯ã¿ã¼ãã¼ã¿ã®ããæ¡å¤§ç¸®å°ã«å¼·ããã¨ãå©ç¹ã§ããæ¬è¨äºã§ã¯ãã®SVGã使ã£ã¦HTMLã§ã¢ãã¡ã¼ã·ã§ã³ãå®ç¾ããæ¹æ³ãç´¹ä»ãã¾ãã ã¾ãåæã¨ãã¦ãããã¦ããããã®ã¯ãSVGã§ã¢ãã¡ã¼ã·ã§ã³ãã¤ã³ã¿ã©ã¯ã·ã§ã³ãå®è£ ããã«ã¯æ¯è¼çä½ã¬ãã«ã®APIã®ç解ãå¿ è¦ã¨ãªãã¨ãããã¨ã§ããSVG 1.1 ä»æ§ã®å¦ç¿ã³ã¹ããé«ãã£ãããã³ã³ãã³ãéçºæã®çç£å¹çãä¸ãããªãã¨ãã£ã課é¡ãèãããã¾ãããã®ããã¢ãã¡ã¼ã·ã§ã³ãã¤ã³ã¿ã©ã¯ã·ã§ã³ç¨éã®SVGã³ã³ãã³ãã®éçºã«ã¯JavaScriptã©ã¤ãã©ãª
ã¹ãã¼ããã©ã³åãã®Webãµã¤ããWebã¢ããªãä¸å¿ã«ããSVGãããã¾å注ç®ããã¦ãã¾ããåãªãç»åãã©ã¼ããããè¶ ãã¦ãæè¿ã§ã¯ãã¾ãã¾ãªè¡¨ç¾ã«åºãæ´»ç¨ãããããã«ãªãã¾ããã æ¬é£è¼ã§ã¯ãSVGã®æ¦è¦ããåºæ¬çãªä½¿ãæ¹ãWebå¶ä½ã§ã®æ´»ç¨æ¹æ³ã¾ã§ããã£ãã解説ãCSSã«ããè£ é£¾ãJavaScriptã¨ã®é£æºãªã©ããã§ã«ä½¿ã£ã¦ãã人ããã£ã¨ä½¿ãããªãããã®ãã¯ããã¯ãç´¹ä»ãã¾ããï¼ç·¨éé¨ï¼ Webã®è¡¨ç¾ãåºããSVGã®é å SVGã¨èãã¨ããåãªããã¯ã¿ã¼ã®ç»åã§ãããã¨æãæ¹ãå¤ãã§ãããã確ãã«SVGã¯ãScalable Vector Graphicsãã®ç¥ãªã®ã§ããã¯ã¿ã¼å½¢å¼ã®ç»åãã©ã¼ãããã§ãããã¨ã«ã¯ééãããã¾ããã ä¸æ¹ã§ãSVGã«ã¯ãPNGãJPEGã¨ãã£ããä»ã®ç»åãã©ã¼ãããã¨ã¯ç°ãªãé åãããã¾ããSVGãWebãã¼ã¸ã«ä½¿ããã¨ã§ãããã¾ã§ã®HTMLãCSSã ã
SVGã®æ¦è¦ããåºæ¬çãªä½¿ãæ¹ãWebå¶ä½ã§ã®æ´»ç¨æ¹æ³ã¾ã§ããã£ãã解説ããæ¬é£è¼ãååã¯SVGãã§ãããã¨ãããã¾ãã«è§£èª¬ãã¾ãããä»åã¯ãSVGã®ä»æ§ããã¨ã«ãSVGã®æ¸ãæ¹ãèªã¿æ¹ã®åºç¤ãå¦ã³ã¾ãã SVGãæããããã¦æ¸ã SVGã¯ç»åã§ãããã³ã¼ããæ¸ããã¨ãããã¼ã«ã§æãã¾ããä¾ãã°ãAdobe IllustratorãInkscapeãSketchãªã©ã®ããã¼ã½ããã使ãã°ãç»é¢ã®æä½ã®ã¿ã§SVGãã¡ã¤ã«ãä½æã§ãã¾ãã ããã¼ã½ããã使ã£ã¦ç¨æããSVGãã¡ã¤ã«ã¯ãHTMLã§imgè¦ç´ ããããã¯CSSã®èæ¯ç»åãªã©ã¨ãã¦èªã¿è¾¼ããã¨ã§ãæ軽ã«Webãã¼ã¸ã®ä¸é¨ã¨ãã¦è¡¨ç¤ºã§ãã¾ãã <img src="example.svg" alt="" width="600" height="400"> .example{ background: url( example.svg );
SVGï¼Scalabe Vector Graphicsï¼ã®ä¸çã¯é åçã§ããããã¦ãããã使ã£ã¦ã§ãããã¨ããããã«ç¨æããã¦ãããªãã·ã§ã³ã«ã¯å§åããã¦ãã¾ãã»ã©ã§ãã SVGã¯XMLãã¼ã¹ã®2次å ãã¯ã¿ã¼ç»åå½¢å¼ã§ãã¤ã³ã¿ã©ã¯ãã£ããã£ã¨ã¢ãã¡ã¼ã·ã§ã³ããµãã¼ããã¾ããè¨ãæããã¨ãSVGã¯å³å½¢ãã°ã©ããã¬ã³ããªã³ã°ããXMLã¿ã°ã§ããã®å³å½¢ãã°ã©ãã¯HTMLã®æ§æè¦ç´ ãããã§ããããã«ãã¤ã³ã¿ã©ã¯ããããã¢ãã¡ã¼ã·ã§ã³åãããã§ããã®ã§ãã SVGã«é¢ãã¦ãç§ãããåãã質åã®1ã¤ã¯ãSVGç»åã®ã¢ãã¡ã¼ã·ã§ã³åã«ã¤ãã¦ã§ãããã®ããæ¹ã ãã§ã¯ãªãããããä½ãªã®ãã¨ãããã¨ãèããã¾ããã§ããããç¾å¨ã®ï¼ããã¦æªæ¥ã®ï¼SVGã¢ãã¡ã¼ã·ã§ã³ã®ç¶æ³ãè¦ãªãããããªããè¦çãæããã«è¡ãããããªãã³ãããã¼ã«ã«ã¤ãã¦ã話ããã¾ãããã åæãã«ãã¡ãã£ã¢çµ±åè¨èªãã¾ãã®åãSMILï¼Syn
ãã©ã¦ã¶ã§WebGLã使ããããã«ãªã£ã¦3DCGããã°ã©ãã³ã°ã¯ããã¶ã身è¿ãªãã®ã«ãªãã¾ãããã¨æ¸ãã¦ããã°ããéåæãæãããããçã®WebGLãJavaScriptã§æ¸ãã®ã¯æ·å± ãé«ãã£ãããã¾ããã§ããªãã¯ãªããã©åæã¨ãªãç¥èãããªãå¿ è¦ãªæãã three.jsãç»å ´ããã¨ãã¯ãããã§æ®éã«3DCGãã§ããã¨ãããã¨ã§ä¸æ°ã«ã²ãã¾ãã¾ãããã¨ã¯ãããããã§ãã¾ã ãããã¨ã¯å¤ããç»é¢ã«åè§ãç®±ã表示ããå ´å以ä¸ã®ãããªããã°ã©ã ãæ¸ããã¨ã«ãªãã¾ãã ã»ã·ã¼ã³ãä½æ ã»ã©ã¤ããä½æãä½ç½®ã¨åããè¨å®ãã·ã¼ã³ã«è¿½å ã»ã«ã¡ã©ãä½æãä½ç½®ã¨åããè¨å®ãã·ã¼ã³ã«è¿½å ã»ãããªã¢ã«ãä½æãè²ãæå® ã»BoxGeometryãä½æããµã¤ãºãæå® ã»ã¡ãã·ã¥ãä½æãä½ç½®ã¨åããè¨å®ãã·ã¼ã³ã«è¿½å ã»ã¬ã³ãã©ã¼ãä½æ ã»ã¬ã³ããªã³ã°ã«ã¼ãå¦ç ãããã®ã²ã¨ã¤ã§ãééããããã©ã¡ã¼ã¿ã¼ãé©åã§ãª
SVGã使ãããªãããã®ä¾¿å©ãã¼ã«ããããSVGï¼Scalable Vector Graphicsï¼ã¯Illustratorã§ä½æãããããªãã¯ã¿ã¼ç»åã表示ããæè¡ãé«è§£å度ãã£ã¹ãã¬ã¤ã§ããã£ããã¯ã£ãã表示ã§ããã®ã§ãè¿å¹´æµ·å¤ãµã¤ããä¸å¿ã«è¦ãããæ©ä¼ãå¢ãã¦ãã¾ãããSVGã«ã¤ãã¦ã¯Webã¯ãªã¨ã¤ã¿ã¼ããã¯ã¹ã§ãä½åº¦ãåãä¸ãã¦ããã®ã§ãè³ã«ãããã¨ã®ããæ¹ãå¤ããã¨æãã¾ããä»åã¯ãããªSVGã使ãããªãããã®ä¾¿å©ãªãªã³ã©ã¤ã³ãã¼ã«ãJavaScriptãªã©ãç´¹ä»ãã¾ãã SVG ã£ã¦ãªãããï¼ã¨ããæ¹ã¯ãéå»è¨äºãã¢ã¤ã³ã³ãã©ã³ããã SVG ã¸ï¼ããæ軽ã«ãã¯ã¿ã¼ç»åã表示ãããããã覧ãã ããï¼ ã©ã¹ã¿ã¼ç»åã SVG ã«å¤æVector MagicVector Magic㯠JPEGãGIFãPNG å½¢å¼ã®ç»åããã¯ã¿ã¼ç»åã«å¤æããEPSãSVGãPDF å½¢å¼ã§ãã¦ã³ã
Graphics2Dã«ææ¦ï¼Graphicsã®é«æ§è½çãGraphics2Dãã使ã£ã¦ãããé«åº¦ãªã°ã©ãã£ãã¯è¡¨ç¾ãç®æããï¼ Graphics2Dã¨ã¯ï¼ ãã¦ãå ã®é£è¼ã§ãGraphicsãã¯ã©ã¹ã使ã£ãæç»ã«ã¤ãã¦ç°¡åã«èª¬æãã¾ãããããä¸ã«ã¯ãããã¶ãã¨è²§å¼±ãªæ©è½ãããªããã ãªãã¨æã£ã人ãããããç¥ãã¾ãããGraphicsã¯ã©ã¹ã¯ãJavaãèªçããå½åããç¨æããã¦ãããã®ã§ãæ£ç´ãããªãæ©è½çã«ã¯å¼±ããã®ãªã®ã§ãã ããã§ãSwingãç»å ´ããã¨ããåæã«ãGraphicsã¯ã©ã¹ãå¼·åããæ°Graphicsã¯ã©ã¹ãã¨ãããã®ãç¨æããã¾ããããGraphics2Dãã¨ããã¯ã©ã¹ã§ããå®ãããã°ãçãããæ®æ®µä½¿ã£ã¦ããGraphicsï¼paintComponentã§å¼æ°ã§æ¸¡ãããGraphicsã¤ã³ã¹ã¿ã³ã¹ï¼ã¯ãæ¬å½ã¯Graphicsã§ã¯ãªããGraphics2Dãªã®ã§ãã G
Swing ã³ã³ãã¼ãã³ãã®æç»å¦çã«ã¤ãã¦è§£èª¬ãã¾ããé常ãSwing ã³ã³ãã¼ãã³ãã®æç»ãæ¡å¼µããå ´å㯠paint() ã¡ã½ããã§ã¯ç¡ã paintComponent() ã¡ã½ããããªã¼ãã¼ã©ã¤ããã¾ãã AWT ã³ã³ãã¼ãã³ãã«ä½ããã®å³ãã¤ã¡ã¼ã¸ãæç»ããã«ã¯ paint() ã¡ã½ããããªã¼ãã¼ã©ã¤ããã¾ãããããããJComponent ãç¶æ¿ãã Swing ã³ã³ãã¼ãã³ãã®å ´åãpaint() ã¡ã½ããã¯ã³ã³ãã¼ãã³ãå ¨ä½ã®æç»ãç·æ¬ãããããã¡ã½ããã¨ãã¦å®ç¾©ããã¦ãã¾ãã Swing ã³ã³ãã¼ãã³ãã¯ãã³ã³ãã¼ãã³ãã®æç»ä»¥å¤ã«ãåã³ã³ãã¼ãã³ãã®æç»ãã³ã³ãã¼ãã³ãã®å¢çç·ã¨ãªãæ ãé¨ååãã¦ãã¾ããåã³ã³ãã¼ãã³ãã®æç»ã¯ paintChildren() ã¡ã½ããã§ãå¢çç·ã¯ paintBorder() ã¡ã½ããã§è¡ããã¾ããpaint() ã¡ã½ããã¯ãããã®ã¡ã½
Javaããã°ã©ãã³ã°åºç¤ è¬ç¾©è³æ ä»åã¯ãç°¡åãªçµµãã¦ã£ã³ãã¦ä¸ã«æãããã ãã¦ã¹ã§æä½ãã§ãããããªããã°ã©ã ã«ã¤ãã¦å¦ã³ã¾ãã ã°ã©ãã£ãã¯ã¹è¡¨ç¤ºãè¡ãããã® ã¯ã©ã¹ã©ã¤ãã©ãªã®ä½¿ãæ¹ãç´¹ä»ãã¾ãã Javaã§ã°ã©ãã£ãã¯ã¹è¡¨ç¤ºãè¡ããã㫠代表çãªAWTã¨Swingã¨å¼ã°ããæ©è½ã使ãã¾ãã ã°ã©ãã£ãã¯ã¹ã«ããã座æ¨ã®æ±ã Javaãã¯ããã¨ããå¤ãã®ã°ã©ãã£ãã¯ã¹ç°å¢ã§ã¯ã 表示ç»é¢ãç´°ããç¹ã®éã¾ãã¨ãã¦æ±ãã¾ãããã®ç¹ã®ãã¨ãç»ç´ ã¨ããã¾ãã ããã¦ããã®ç¹ãç»é¢ä¸ã®ã©ã®ä½ç½®ãã示ãããã«ã å·¦ä¸ãåç¹ (0,0) ã¨ãã座æ¨ãç¨ãã¾ãã ä¾ãã°ãå¹ 640 ãé«ã 480 ã®å¤§ããã®ã¦ã£ã³ãã¦ã®åº§æ¨ã¯ ä¸ã®çµµã®ããã«ãªãã¾ãã æ°å¦ã®ã°ã©ãã® y 座æ¨ãä¸ä¸éã«ãããã®ã ã¨èãããã¨ãã§ãã¾ãã ã¦ã£ã³ãã¦ä¸ã«ä½ç½®ãæå®ãã¦å³å½¢ãæåãæ¸ãå ´åãã ã¦ã£ã³ãã¦ä¸ã®ç¯å²
AWTã¨Swingã®ãã¤ã³ãã®ä»çµã¿ ä¸è³ªãªæç»ã³ã¼ã(ãã¤ã³ãã³ã¼ã)ãã¢ããªã±ã¼ã·ã§ã³ã®å®è¡æ§è½ãæ¯ãã By Amy Fowler [åæ] 訳ï¼å²©è°·ãå® (updated: 080709) ï¼å°ããªæææåã®é¨åã¯è¨³è ã«ãã注è¨ã§ããï¼ æåãã使ããªãã£ãæã®ã³ã³ãã¥ã¼ã¿ã¨ã¡ãã£ã¦ãã°ã©ãã£ãã¯ãé§ä½¿ããä»æ¥ã®ã·ã¹ãã ã§ã¯ãç»é¢ã®ã©ããããã¤ãä½è²ã«å¡ããã¨ãã決å®ã¨å¦çãããããç¬éã«éè¦ã§ãããããæ¯è¼ç容æã«è¡ããã°ã©ãã£ãã¯ã使ãã¦ã¼ã¶ã¤ã³ã¿ãã§ã¤ã¹(GUI, graphical user interface)ã楽ã«æ§ç¯ããããã«ãç»é¢ã®ä¸ã«ã¦ã£ã³ãã¦ãä½ã£ã¦ãããã®ã¦ã£ã³ãã¦ãæä½ãããã¼ã«ããã(windowing toolkit)ï¼å°ããªé¨åçãªã½ããã¦ã§ã¢ã®éã¾ãï¼ããããã°ã©ã ãéçºããããã®åºæ¬çãªæ çµã¿ã¨ãã¦ä½¿ããã¾ãã AWT(abstract wind
ã©ã³ãã³ã°
ãç¥ãã
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}