gFinger 손끝으로 만드는 세상

 

 

 

Table Of Contens

1. Class Example

2. Reference

1. Example

 
  class ProcessingSVG
    {
        public List SVGlist = new List();

        // SVG를 처리하는 Class
        public class SvgClass
        {   
            private SkiaSharp.Extended.Svg.SKSvg svg;  

           
            // Get file .svg to folder Images 
            // Form Embeded Resoure 
            Stream GetImageStream(string svgName, Type PageType)
            {

                TypeInfo PageInfo = PageType.GetTypeInfo();
                Assembly assembly = PageInfo.Assembly;

                var abc = assembly.GetManifestResourceStream($"{assembly.GetName().Name}.Images.{svgName}");
                return abc;
            }
 

            //  return picture of the SVG
            public SKPicture GetPicture()
            {
                return svg.Picture;
            }

            public void LoadSvg(string svgName, Type PageType)
            {
                // create a new SVG object
                svg = new SkiaSharp.Extended.Svg.SKSvg(); 
                // load the SVG document from a stream 
                using (var stream = GetImageStream(svgName, PageType))
                    svg.Load(stream);
            }
        } 
    }
    
    
    
        // Save  SVG File 
        ProcessingSVG XX_SVG = new ProcessingSVG();
        const int NumberOfSVG = 10;
        void LoadSVGimage()
        {
            // Data Exist
            if (XX_SVG.SVGlist != null) XX_SVG.SVGlist.Clear();

            for(int i=0; i< NumberOfSVG; i++)
            {
                var oneSVG = new ProcessingSVG.SvgClass();
                oneSVG.LoadSvg("test"+i.ToString()+".svg", typeof(MainPage));
                XX_SVG.SVGlist.Add(oneSVG); 
            } 
        }
        

       // Draw SVG Picture
          canvasXX.Save();
          canvasXX.Scale(0.1f); 
          canvasXX.DrawPicture(XX_SVG.SVGlist[7].GetPicture(), 0,0);
          canvasXX.Restore();
          
          

 

2. Reference


https://stackoverflow.com/questions/58259473/how-to-load-file-svg-with-skiasharp-on-xamarin-forms

전기, 전자 심벌 SVG


전기 전자 심벌


Office로 도면의 일부분이나 블럭 다이어그램을 아래와 같이 종종 그리곤 하는데 svg 파일로 된 전기 전자 심벌을 찾아보니 위키에 많이 있군요.



링크

 


'자동화 이야기' 카테고리의 다른 글

PLC와 PC Based 제어 시스템  (0) 2009.05.21
국산이 좋을까 외산이 좋을까 ?  (1) 2009.03.25
PLC Scan Time 이란  (2) 2009.03.09
지멘스 자동화 자료 사이트  (0) 2008.10.16
DC Motor  (0) 2008.10.05