Example #1
0
        /// <summary>
        /// Get native NSFont* from a Rhino Font. Only works on Mac
        /// </summary>
        /// <returns>NSFont* on success. IntPtr.Zero on failure</returns>
        /// <param name="font"></param>
        /// <param name="pointSize">Point size</param>
        public static IntPtr NSFontFromFont(Rhino.DocObjects.Font font, double pointSize)
        {
#if MONO_BUILD
            if (Rhino.Runtime.HostUtils.RunningOnOSX)
            {
                IntPtr constPtrFont = font.ConstPointer();
                IntPtr nsfont       = UnsafeNativeMethods.ON_Font_GetAppleFont2(constPtrFont, pointSize);
                return(nsfont);
            }
#endif
            return(IntPtr.Zero);
        }
Example #2
0
 public static Eto.Drawing.FontStyle ToEtoFontStyle(this Rhino.DocObjects.Font rhinoFont)
 {
     if (rhinoFont.Bold)
     {
         return(Eto.Drawing.FontStyle.Bold);
     }
     if (rhinoFont.Italic)
     {
         return(Eto.Drawing.FontStyle.Italic);
     }
     return(Eto.Drawing.FontStyle.None);
 }
        // Texts & Annotations
        public static SpeckleAnnotation ToSpeckle(this TextEntity textentity)
        {
            Rhino.DocObjects.Font font = Rhino.RhinoDoc.ActiveDoc.Fonts[textentity.FontIndex];

            var myAnnotation = new SpeckleAnnotation();

            myAnnotation.Text       = textentity.Text;
            myAnnotation.Plane      = textentity.Plane.ToSpeckle();
            myAnnotation.FontName   = font.FaceName;
            myAnnotation.TextHeight = textentity.TextHeight;
            myAnnotation.Bold       = font.Bold;
            myAnnotation.Italic     = font.Italic;
            myAnnotation.GenerateHash();

            return(myAnnotation);
        }
Example #4
0
 public static Eto.Drawing.Font ToEtoFont(this Rhino.DocObjects.Font rhinoFont)
 {
     return(new Eto.Drawing.Font(rhinoFont.FamilyName, Settings.TextHeight, rhinoFont.ToEtoFontStyle()));
 }