public static extern int ScriptPlaceOpenType( IntPtr hdc, ref IntPtr psc, ref SCRIPT_ANALYSIS psa, uint tagScript, uint tagLangSys, [In] int[] rcRangeChars, ref IntPtr rpRangeProperties, int cRanges, [In] [MarshalAs(UnmanagedType.LPWStr)] string pwcChars, [In] ushort[] pwLogClust, [In] script_charprop[] pCharProps, int cChars, [In] ushort[] pwGlyphs, ref script_glyphprop pGlyphProps, int cGlyphs, [In] int[] piAdvance, [Out] tagGOFFSET[] pGoffset, out ABC pABC);
public static extern int ScriptApplyLogicalWidth( [In] int[] piDx, int cChars, int cGlyphs, [In] ushort[] pwLogClust, ref SCRIPT_VISATTR psva, [In] int[] piAdvance, ref SCRIPT_ANALYSIS psa, ref ABC pABC, [Out] int[] piJustify);
public static extern int ScriptShapeOpenType( IntPtr hdc, ref IntPtr psc, ref SCRIPT_ANALYSIS psa, uint tagScript, uint tagLangSys, [In] int[] rcRangeChars, ref IntPtr rpRangeProperties, int cRanges, [In] [MarshalAs(UnmanagedType.LPWStr)] string pwcChars, int cChars, int cMaxGlyphs, [Out] ushort[] pwLogClust, [Out] script_charprop[] pCharProps, [Out] ushort[] pwOutGlyphs, [Out] script_glyphprop[] pOutGlyphProps, out int pcGlyphs);
public static extern int ScriptXtoCP( int iX, int cChars, int cGlyphs, [In] ushort[] pwLogClust, [In] SCRIPT_VISATTR[] psva, [In] int[] piAdvance, ref SCRIPT_ANALYSIS psa, [Out] int[] piCP, [Out] int[] piTrailing);
public static extern int ScriptGetLogicalWidths( ref SCRIPT_ANALYSIS psa, int cChars, int cGlyphs, [In] int[] piGlyphWidth, [In] ushort[] pwLogClust, ref SCRIPT_VISATTR psva, [Out] int[] piDx);
public static extern int ScriptCPtoX( int iCP, [MarshalAs(UnmanagedType.Bool)] bool fTrailing, int cChars, int cGlyphs, [In] ushort[] pwLogClust, [In] SCRIPT_VISATTR[] psva, [In] int[] piAdvance, ref SCRIPT_ANALYSIS psa, [Out] int[] piX);
public static extern int ScriptBreak( [In] [MarshalAs(UnmanagedType.LPWStr)] string pwcChars, int cChars, ref SCRIPT_ANALYSIS psa, [Out] SCRIPT_LOGATTR[] psla);
public static extern int ScriptTextOut( IntPtr hdc, ref IntPtr psc, int x, int y, uint fuOptions, [In] tagRECT[] lprc, ref SCRIPT_ANALYSIS psa, [In] [MarshalAs(UnmanagedType.LPWStr)] string pwcReserved, int iReserved, [In] ushort[] pwGlyphs, int cGlyphs, [In] int[] piAdvance, [In] int[] piJustify, ref tagGOFFSET pGoffset);
public static extern int ScriptPlace( IntPtr hdc, ref IntPtr psc, ushort[] pwGlyphs, int cGlyphs, SCRIPT_VISATTR[] psva, ref SCRIPT_ANALYSIS psa, [Out] int[] piAdvance, [Out] tagGOFFSET[] pGoffset, ref ABC pABC);
public static extern int ScriptShape( IntPtr hdc, ref IntPtr psc, [In] [MarshalAs(UnmanagedType.LPWStr)] string pwcChars, int cChars, int cMaxGlyphs, ref SCRIPT_ANALYSIS psa, [Out] ushort[] pwOutGlyphs, [Out] ushort[] pwLogClust, [Out] SCRIPT_VISATTR[] psva, out int pcGlyphs);