Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
github.com/layoutfarm/typography
While developing the PixelFarm Rendering library,
I figured that the way to render a glyph from a font may be useful for other libraries.
So, I spinned off the way to render a glyph from a font to here, the Typography library.
Sov_Thanamas font from https://www.f0nt.com/release/sov_thanamas/
The Typography library is a cross-platform library and does NOT need the PixelFarm Rendering library.
You can use the library to read font files (.ttf, .otf, .ttc, .otc, .woff, .woff2) and
The core modules (Typography.OpenFont, Typography.GlyphLayout) do NOT provide a glyph rendering implementation. But as you are able to access and read all glyphs, it is easy to render them provided the exact position of each glyph.
Below are some screenshots of projects that use Typography to read each glyph from font files and render using their rendering engine.
1. MatterHackers/agg-sharp, 2. CSharpMath/SkiaSharp, Xamarin.Forms, 3. emoji.wpf/wpf, 4. zwcloud's ImGui/GL,GLES
The core modules are Typography.OpenFont and Typography.GlyphLayout.
Typography.OpenFont
Typography.GlyphLayout
Since the GlyphLayout engine is not stable and quite complex, I separated this from the OpenFont core project.
1) CoreModules, 2) Typography.One: a more easy-to-use than core module
See more detail about the 2 modules and others here : https://github.com/LayoutFarm/Typography/issues/99
Since the core library does not provide a glyph rendering implementation, You can learn how to do it from the example repositories above, or you may learn it from my implementation => PixelFarm.Typography.
PixelFarm.Typography links the core Typography library to the PixelFarm Rendering library. You can learn how to implement string drawing, how to implement text-layout services, and how to cache glyph shapes, so you can apply this to your own library.
HtmlRenderer on GLES2 surface, text are rendered with the PixelFarm.Typography
The project is based on multiple open-sourced projects (listed below) all using permissive licenses.
A license for a whole project is MIT.
But if you copy source code directly, please check each source file's header for the licensing info if available.
Font
Apache2, 2014-2016, Samuel Carlsson, Big thanks for https://github.com/vidstige/NRasterizer
MIT, 2015, Michael Popoloski, https://github.com/MikePopoloski/SharpFont
The FreeType Project LICENSE (3-clauses BSD style),2003-2016, David Turner, Robert Wilhelm, and Werner Lemberg and others, https://www.freetype.org/
Apache2, 2018, Apache/PDFBox Authors, https://github.com/apache/pdfbox
Apache2, 2020, Adobe Font Development Kit for OpenType (AFDKO), https://github.com/adobe-type-tools/afdko
Text Processing
Unicode (BSD style), 2020, UNICODE, INC, https://www.unicode.org/license.html
Apache2, 2014 , Muhammad Tayyab Akram, https://sheenbidi.codeplex.com/ , https://github.com/Tehreer
Geometry
BSD, 2002-2005, Maxim Shemanarev, Anti-Grain Geometry - Version 2.4 http://www.antigrain.com
BSD, 2007-2014, Lars Brubaker, agg-sharp, https://github.com/MatterHackers/agg-sharp
MIT, 2016, Viktor Chlumsky, https://github.com/Chlumsky/msdfgen
BSD, 2009-2010, Poly2Tri Contributors, https://github.com/PaintLab/poly2tri-cs
Apache2, 2016-2017, WinterDev, https://github.com/PaintLab/PixelFarm
Platforms
MIT, 2015-2015, Xamarin, Inc., https://github.com/mono/SkiaSharp
MIT, 2006-2009, Stefanos Apostolopoulos and other Open Tool Kit Contributors, https://github.com/opentk/opentk
MIT, 2013, Antonie Blom, https://github.com/andykorth/Pencil.Gaming
MIT, 2004, 2007, Novell Inc., for System.Drawing
Unpack, Zlib,Brotli
MIT, 2018, SharpZipLib, https://github.com/icsharpcode/SharpZipLib
MIT, 2009, 2010, 2013-2016 by the Brotli Authors., https://github.com/google/brotli
MIT, 2017, brezza92 (C# port from original code, by hand), https://github.com/brezza92/brotli
MIT, 2019, master131, https://github.com/master131/BrotliSharpLib
Demo
MIT, 2017, Zou Wei, https://github.com/zwcloud, see more Zou Wei's GUI works at here and here
MIT, 2020, brezza92 (https://github.com/brezza92), MathML layout engine
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.