CSharpMath 0.1.0-rc.0
See the version list below for details.
dotnet add package CSharpMath --version 0.1.0-rc.0
NuGet\Install-Package CSharpMath -Version 0.1.0-rc.0
<PackageReference Include="CSharpMath" Version="0.1.0-rc.0" />
paket add CSharpMath --version 0.1.0-rc.0
#r "nuget: CSharpMath, 0.1.0-rc.0"
// Install CSharpMath as a Cake Addin #addin nuget:?package=CSharpMath&version=0.1.0-rc.0&prerelease // Install CSharpMath as a Cake Tool #tool nuget:?package=CSharpMath&version=0.1.0-rc.0&prerelease
Version: 0.1.0
CSharpMath.Rendering
Full name: CSharpMath.Rendering.MathPainter``2
Definitions:
public abstract class Painter<TCanvas, TSource, TColor> : ICanvasPainter<TCanvas, TSource, TColor> where TSource : struct, ISource
public abstract class MathPainter<TCanvas, TColor> : Painter<TCanvas, MathSource, TColor>
Color: TColor
CSharpMath.SkiaSharp
Full name: CSharpMath.SkiaSharp.MathPainter
Definition:
public class MathPainter : MathPainter<SKCanvas, SKColor>, ICanvasPainter<SKCanvas, MathSource, SKColor>
Color: SkiaSharp.SKColor
CSharpMath.Forms
Full name: CSharpMath.Forms.MathView
Definition:
[XamlCompilation(XamlCompilationOptions.Compile), ContentProperty(nameof(LaTeX))]
public class MathView : BaseView<MathPainter, MathSource>, IPainter<MathSource, Color>
Color: Xamarin.Forms.Color
Common APIs
Content
Source
Type: CSharpMath.Rendering.MathSource
Settable? ✔️
Default: new MathSource()
The source of content to display. If it remains as the default, then nothing will be displayed.
Notes: MathSource
is a readonly struct
and should not be mutated even though you can do so with its MathList
property as that list will not be regenerated after the creation of the MathSource
. You can cache MathSource
s for reuse so LaTeX parsing need not be done every time.
Since version: 0.1.0
LaTeX
Type: System.String
Settable? ✔️
Default: null
The LaTeX to be displayed. Will set the ErrorMessage
property if the set value contains a syntax error. Do not set this to null
. Basically a convenience property to Source.LaTeX
.
Since version: 0.1.0
MathList
Type: CSharpMath.Interfaces.IMathList
Settable? ✔️
Default: null
The list of math atoms to be displayed. Do not set this to null
. Bascially a convenience property to Source.MathList
. Please do not mutate this property with the same rationale behind the one in Source
.
Since version: 0.1.0
Shapes
LocalTypefaces
Type: System.Collections.Generic.List<Typogaphy.OpenFont.Typeface>
Settable? ✔️
Default: new List<Typeface>()
The list of typefaces that are local to this instance. If glyphs from different typefaces in this list are of the same Unicode codepoint, the glyph from the first typeface from the start of the list shadows later typefaces. Glyphs from typefaces from this list also shadows those from the global typeface list (CSharpMath.Rendering.MathFonts.GlobalTypefaces
).
Notes: The global typeface list allows indices from -128 to 127, where 0 is the default typeface (Latin Modern Math). When the glyph finder searches the list, it scans from index -128 to 127 sequentially, returning if found. (The previous sentence describes the same thing with local typefaces.) The default typeface cannot be changed without using reflection or recompilation or memory edits, silently failing on all attempts to mutate the zeroth item of the global typeface list, so as to always keep at least one typeface loaded at all times.
Since version: 0.1.0
LineStyle
Type: CSharpMath.Enumerations.LineStyle
Settable? ✔️
Default: LineStyle.Display
Commonly you would want to set this to either LineStyle.Display
or LineStyle.Text
for display mode or text mode respectively (aka display mode maths and inline mode maths respectively). May be overridden by the \displaystyle
and \textstyle
LaTeX commands. You could set this to LineStyle.Script
or LineStyle.ScriptScript
to set everything to be scripted (not superscript nor subscript, but rather 'mid'-script, so everything is like extra-small), to find bugs that otherwise would only occur in superscript or subscript context. Thanks in advance for reporting them.
Since version: 0.1.0
FontSize
Type: System.Float
Settable? ✔️
Default: 20
The font size in points to display the content in.
Since version: 0.1.0
Drawing
BackgroundColor
Type: Color (see above)
Settable? ✔️
Default: Transparent (#00000000)
The background color displayed behind the entire drawing area.
Since version: 0.1.0
TextColor
Type: Color (see above)
Settable? ✔️
Default: Black (#000000)
The color to display content in. May be overridden by the \color
LaTeX command.
Since version: 0.1.0
PaintStyle
Type: CSharpMath.Rendering.PaintStyle
Settable? ✔️
Default: PaintStyle.Fill
Whether to only draw the outline of the content or also fill the content. Normally you would want to use PaintStyle.Fill
, but you can also create great neon styles with PaintStyle.Stroke
.
Since version: 0.1.0
GlyphBoxColor
Spacing
Bounds, Padding, TextAlignment, DrawSize
Error handling
ErrorMessage
Type: System.String
Settable? ❌
Default: null
The error message if the previously set LaTeX contains a syntax error, and null
if not. Basically a convenience property to Source.Error
.
Since version: 0.1.0
DisplayErrorInline
Type: System.Boolean
Settable: ✔️
Default: true
Whether to display ErrorMessage
in place of ordinary content if the previously set LaTeX contains a syntax error. If not, then the content will not change from the previously correctly parsed content.
Since version: 0.1.0
ErrorColor
Type: Color (see above)
Settable: ✔️
Default: Red (#FF0000)
The color to display ErrorMessage
in when it is displayed. Only relevant if DisplayErrorInline
is true
.
Since version: 0.1.0
ErrorFontSize
Type: System.Nullable<System.Float>
Settable: ✔️
Default: null
The font size in points to display ErrorMessage
in. If set to null
, then FontSize
will be used. Only relevant if DisplayErrorInline
is true
.
Since version: 0.1.0
Gestures
ScrollX, ScrollY, Magnification
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp1.0 was computed. netcoreapp1.1 was computed. netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard1.1 is compatible. netstandard1.2 was computed. netstandard1.3 was computed. netstandard1.4 was computed. netstandard1.5 was computed. netstandard1.6 was computed. netstandard2.0 was computed. netstandard2.1 was computed. |
.NET Framework | net45 was computed. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen30 was computed. tizen40 was computed. tizen60 was computed. |
Universal Windows Platform | uap was computed. uap10.0 was computed. |
Windows Phone | wpa81 was computed. |
Windows Store | netcore was computed. netcore45 was computed. netcore451 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 1.1
- NETStandard.Library (>= 1.6.1)
- System.Drawing.Primitives (>= 4.3.0)
- System.ValueTuple (>= 4.5.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on CSharpMath:
Package | Downloads |
---|---|
CSharpMath.Editor
The base code for a What You See Is What You Get math editor. |
|
CSharpMath.Ios
The iOS front end for CSharpMath. |
|
CSharpMath.Evaluation
Can convert CSharpMath.Atom.MathList parsed from LaTeX with CSharpMath.Atom.LaTeXParser into actual mathematical expressions that are evaluatable with AngouriMath. Supports arithmetic, trigonometry, symbolic simplification and expansion, as well as matrices, sets, and equation solving. |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on CSharpMath:
Repository | Stars |
---|---|
lennart-finke/GodoTeX
Rendering LaTeX in Godot.
|
Version | Downloads | Last updated |
---|---|---|
0.5.1 | 53,891 | 5/5/2021 |
0.5.0 | 1,686 | 4/20/2021 |
0.5.0-beta | 5,475 | 11/1/2020 |
0.5.0-alpha4 | 5,947 | 8/3/2020 |
0.5.0-alpha3 | 831 | 8/3/2020 |
0.5.0-alpha2.2 | 274 | 8/2/2020 |
0.5.0-alpha2.1 | 246 | 8/2/2020 |
0.5.0-alpha | 538 | 8/2/2020 |
0.4.2 | 12,138 | 4/15/2020 |
0.4.1 | 1,439 | 4/14/2020 |
0.4.0 | 4,238 | 4/10/2020 |
0.4.0-beta | 1,000 | 4/3/2020 |
0.4.0-alpha | 825 | 3/18/2020 |
0.3.0 | 1,974 | 12/19/2019 |
0.3.0-beta3 | 1,048 | 11/8/2019 |
0.3.0-beta2 | 800 | 11/4/2019 |
0.3.0-beta | 919 | 9/8/2019 |
0.3.0-alpha | 826 | 8/23/2019 |
0.2.0 | 4,201 | 1/22/2019 |
0.2.0-beta1 | 1,124 | 1/5/2019 |
0.2.0-alpha3 | 1,132 | 11/24/2018 |
0.2.0-alpha2 | 1,000 | 11/17/2018 |
0.2.0-alpha | 997 | 11/6/2018 |
0.1.5 | 1,483 | 1/1/2019 |
0.1.4 | 1,415 | 12/5/2018 |
0.1.3 | 1,389 | 11/11/2018 |
0.1.2 | 1,446 | 10/21/2018 |
0.1.1 | 1,433 | 10/13/2018 |
0.1.0 | 1,492 | 10/6/2018 |
0.1.0-rc.3 | 1,311 | 10/1/2018 |
0.1.0-rc.2 | 600 | 9/21/2018 |
0.1.0-rc.1 | 570 | 9/19/2018 |
0.1.0-rc.0 | 607 | 9/14/2018 |
0.1.0-pre8 | 1,389 | 8/26/2018 |
0.1.0-pre7 | 1,120 | 8/16/2018 |
0.1.0-pre6 | 1,054 | 8/8/2018 |
0.1.0-pre5 | 1,073 | 7/27/2018 |
0.1.0-pre4 | 1,112 | 7/20/2018 |
0.1.0-pre3 | 1,177 | 7/17/2018 |
0.1.0-pre2 | 1,091 | 7/14/2018 |
0.1.0-pre10 | 1,126 | 9/6/2018 |
0.1.0-pre1 | 1,122 | 6/28/2018 |
0.0.0 | 1,124 | 12/29/2017 |
The 0.1.0 SkiaSharp Update brings the SkiaSharp and Xamarin.Forms front ends to CSharpMath.