Initial Commit
This commit is contained in:
parent
53eb92e9af
commit
270ab7d11f
15341 changed files with 700234 additions and 0 deletions
|
@ -0,0 +1,115 @@
|
|||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections;
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
|
||||
namespace TMPro.EditorUtilities
|
||||
{
|
||||
/*
|
||||
public class TMPro_FontPlugin
|
||||
{
|
||||
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
|
||||
private delegate void DebugLog(string log);
|
||||
private static readonly DebugLog debugLog = DebugWrapper;
|
||||
private static readonly IntPtr functionPointer = Marshal.GetFunctionPointerForDelegate(debugLog);
|
||||
|
||||
private static void DebugWrapper(string log)
|
||||
{
|
||||
Debug.Log(log);
|
||||
}
|
||||
|
||||
public static void LinkDebugLog()
|
||||
{
|
||||
LinkDebug(functionPointer);
|
||||
}
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
private static extern void LinkDebug([MarshalAs(UnmanagedType.FunctionPtr)]IntPtr debugCall);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int Initialize_FontEngine();
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int Destroy_FontEngine();
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int Load_TrueType_Font(string fontPath);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int FT_Size_Font(int fontSize);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int Render_Character(byte[] buffer_fill, byte[] buffer_edge, int buffer_width, int buffer_height, int offset, int asc, FaceStyles style, float thickness, RenderModes rasterMode, ref FT_GlyphInfo glyphInfo);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int Render_Characters(byte[] buffer, int buffer_width, int buffer_height, int character_padding, int[] asc_set, int char_count, FaceStyles style, float style_mod, bool autoSize, RenderModes renderMode, int method, ref FT_FaceInfo fontData, FT_GlyphInfo[] Output);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
int FT_GetKerningPairs(string fontPath, int[] characterSet, int setCount, FT_KerningPair[] kerningPairs);
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
public static extern
|
||||
float Check_RenderProgress();
|
||||
|
||||
[DllImport("TMPro_Plugin")]
|
||||
internal static extern
|
||||
void SendCancellationRequest(CancellationRequestType request);
|
||||
}
|
||||
|
||||
public enum FaceStyles { Normal, Bold, Italic, Bold_Italic, Outline, Bold_Sim };
|
||||
public enum RenderModes { HintedSmooth = 0, Smooth = 1, RasterHinted = 2, Raster = 3, DistanceField16 = 6, DistanceField32 = 7 }; // SignedDistanceField64 = 8
|
||||
|
||||
internal enum CancellationRequestType : byte { None = 0x0, CancelInProgess = 0x1, WindowClosed = 0x2 };
|
||||
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public struct FT_KerningPair
|
||||
{
|
||||
public int ascII_Left;
|
||||
public int ascII_Right;
|
||||
public float xAdvanceOffset;
|
||||
}
|
||||
|
||||
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public struct FT_GlyphInfo
|
||||
{
|
||||
public int id;
|
||||
public float x;
|
||||
public float y;
|
||||
public float width;
|
||||
public float height;
|
||||
public float xOffset;
|
||||
public float yOffset;
|
||||
public float xAdvance;
|
||||
}
|
||||
|
||||
|
||||
[StructLayout(LayoutKind.Sequential)]
|
||||
public struct FT_FaceInfo
|
||||
{
|
||||
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)]
|
||||
public string name;
|
||||
public int pointSize;
|
||||
public int padding;
|
||||
public float lineHeight;
|
||||
public float baseline;
|
||||
public float ascender;
|
||||
public float descender;
|
||||
public float centerLine;
|
||||
public float underline;
|
||||
public float underlineThickness;
|
||||
public int characterCount;
|
||||
public int atlasWidth;
|
||||
public int atlasHeight;
|
||||
}
|
||||
*/
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue