Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/editor/common/config/fontInfoFromSettings.ts
5285 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { EditorOption, EditorOptions } from './editorOptions.js';
7
import { IValidatedEditorOptions, BareFontInfo } from './fontInfo.js';
8
9
export function createBareFontInfoFromValidatedSettings(options: IValidatedEditorOptions, pixelRatio: number, ignoreEditorZoom: boolean): BareFontInfo {
10
const fontFamily = options.get(EditorOption.fontFamily);
11
const fontWeight = options.get(EditorOption.fontWeight);
12
const fontSize = options.get(EditorOption.fontSize);
13
const fontFeatureSettings = options.get(EditorOption.fontLigatures);
14
const fontVariationSettings = options.get(EditorOption.fontVariations);
15
const lineHeight = options.get(EditorOption.lineHeight);
16
const letterSpacing = options.get(EditorOption.letterSpacing);
17
return BareFontInfo._create(fontFamily, fontWeight, fontSize, fontFeatureSettings, fontVariationSettings, lineHeight, letterSpacing, pixelRatio, ignoreEditorZoom);
18
}
19
20
export function createBareFontInfoFromRawSettings(opts: {
21
fontFamily?: unknown;
22
fontWeight?: unknown;
23
fontSize?: unknown;
24
fontLigatures?: unknown;
25
fontVariations?: unknown;
26
lineHeight?: unknown;
27
letterSpacing?: unknown;
28
}, pixelRatio: number, ignoreEditorZoom: boolean = false): BareFontInfo {
29
const fontFamily = EditorOptions.fontFamily.validate(opts.fontFamily);
30
const fontWeight = EditorOptions.fontWeight.validate(opts.fontWeight);
31
const fontSize = EditorOptions.fontSize.validate(opts.fontSize);
32
const fontFeatureSettings = EditorOptions.fontLigatures2.validate(opts.fontLigatures);
33
const fontVariationSettings = EditorOptions.fontVariations.validate(opts.fontVariations);
34
const lineHeight = EditorOptions.lineHeight.validate(opts.lineHeight);
35
const letterSpacing = EditorOptions.letterSpacing.validate(opts.letterSpacing);
36
return BareFontInfo._create(fontFamily, fontWeight, fontSize, fontFeatureSettings, fontVariationSettings, lineHeight, letterSpacing, pixelRatio, ignoreEditorZoom);
37
}
38
39