OrthogonalTransform() private static method

When TransformToOrthogProjection is enabled, we need to get the current orthogonal transformation, the font scale, and ensure that the projection is actually orthogonal
private static OrthogonalTransform ( float &fontScale ) : TransformViewport
fontScale float
return TransformViewport
Beispiel #1
0
        public static QFont FromQFontFile(string filePath, float downSampleFactor, QFontLoaderConfiguration loaderConfig = null, ProjectionStack proj = null)
        {
            if (loaderConfig == null)
                loaderConfig = new QFontLoaderConfiguration();

            QFont qfont = new QFont();
            if (proj != null)
                qfont.ProjectionStack = proj;

            TransformViewport? transToVp = null;
            float fontScale = 1f;
            if (loaderConfig.TransformToCurrentOrthogProjection)
                transToVp = qfont.OrthogonalTransform(out fontScale);

            qfont.fontData = Builder.LoadQFontDataFromFile(filePath, downSampleFactor * fontScale, loaderConfig);

            if (loaderConfig.ShadowConfig != null)
                qfont.Options.DropShadowActive = true;
            if (transToVp != null)
                qfont.Options.TransformToViewport = transToVp;

            return qfont;
        }