private void LoadQFontFromQFontFile(FontLoadDescription loadDescription) { var loaderConfig = loadDescription.LoaderConfig; var filePath = loadDescription.Path; var downSampleFactor = loadDescription.DownSampleFactor; if (loaderConfig == null) { loaderConfig = new QFontLoaderConfiguration(); } TransformViewport?transToVp = null; float fontScale = 1f; if (loaderConfig.TransformToCurrentOrthogProjection) { transToVp = OrthogonalTransform(out fontScale); } fontData = Builder.LoadQFontDataFromFile(filePath, downSampleFactor * fontScale, loaderConfig); fontData.scaleDueToTransformToViewport = fontScale; if (loaderConfig.ShadowConfig != null) { Options.DropShadowActive = true; } if (transToVp != null) { Options.TransformToViewport = transToVp; } }
public static QFont FromQFontAndBitmap(List <Bitmap> pages, byte[] qfontdata, float downSampleFactor, QFontLoaderConfiguration loaderConfig) { if (loaderConfig == null) { loaderConfig = new QFontLoaderConfiguration(); } TransformViewport?transToVp = null; float fontScale = 1f; if (loaderConfig.TransformToCurrentOrthogProjection) { transToVp = OrthogonalTransform(out fontScale); } QFont qfont = new QFont(); qfont.fontData = Builder.LoadQFontDataFromFile(pages, qfontdata, downSampleFactor * fontScale, loaderConfig); if (loaderConfig.ShadowConfig != null) { qfont.Options.DropShadowActive = true; } if (transToVp != null) { qfont.Options.TransformToViewport = transToVp; } qfont.InitVBOs(); return(qfont); }
public static QFont FromQFontFile(string filePath, float downSampleFactor, QFontLoaderConfiguration loaderConfig) { if (loaderConfig == null) { loaderConfig = new QFontLoaderConfiguration(); } TransformViewport?transToVp = null; float fontScale = 1f; if (loaderConfig.TransformToCurrentOrthogProjection) { transToVp = OrthogonalTransform(out fontScale); } QFont qfont = new QFont(); 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); }
/// <summary> /// Initialise QFont from a .qfont file /// </summary> /// <param name="qfontPath">The .qfont file to load</param> /// <param name="loaderConfig">The loader configuration</param> /// <param name="downSampleFactor">The downsampling factor</param> public QFont(string qfontPath, QFontConfiguration loaderConfig, float downSampleFactor = 1.0f) { float fontScale = 1f; InitialiseQFont(null, new QFontBuilderConfiguration(loaderConfig), Builder.LoadQFontDataFromFile(qfontPath, downSampleFactor * fontScale, loaderConfig)); FontName = qfontPath; }
public static QFont FromQFontFile(string filePath, float downSampleFactor, QFontShadowConfiguration shadowConfig) { QFont qfont = new QFont(); qfont.fontData = Builder.LoadQFontDataFromFile(filePath, downSampleFactor, shadowConfig); if (shadowConfig != null) { qfont.options.DropShadowActive = true; } return(qfont); }
/// <summary> /// Initialise QFont from a .qfont file /// </summary> /// <param name="qfontPath">The .qfont file to load</param> /// <param name="loaderConfig"></param> /// <param name="downSampleFactor"></param> /// <param name="currentProjectionMatrix">The current projection matrix to create a font pixel perfect, for.</param> public QFont(string qfontPath, QFontConfiguration loaderConfig, float downSampleFactor = 1.0f, Matrix4 currentProjectionMatrix = default(Matrix4)) { Viewport?transToVp = null; float fontScale = 1f; if (loaderConfig.TransformToCurrentOrthogProjection) { transToVp = OrthogonalTransform(out fontScale, currentProjectionMatrix); } InitialiseGlFont(null, new QFontBuilderConfiguration(loaderConfig), Builder.LoadQFontDataFromFile(qfontPath, downSampleFactor * fontScale, loaderConfig)); _fontName = qfontPath; ViewportHelper.CurrentViewport.ToString(); // TODO: What to do with transToVp? Property:Matrix4 and use in QFontDrawing? //if (transToVp != null) // Options.TransformToViewport = transToVp; }