示例#1
0
        public unsafe void GetDisplayGlyphMetrics(
            ushort *pGlyphIndices,
            uint glyphCount,
            GlyphMetrics *glyphMetrics,
            float emSize,
            bool useDisplayNatural,
            bool isSideways,
            float pixelsPerDip)
        {
            var GetGdiCompatibleGlyphMetricsFn = GetFunctionFromVTable <Delegate_GetGdiCompatibleGlyphMetrics>(17);
            int hr = GetGdiCompatibleGlyphMetricsFn(_fontFace,
                                                    emSize,
                                                    pixelsPerDip,      //FLOAT pixelsPerDip,
                                                    IntPtr.Zero,
                                                    useDisplayNatural, //BOOL useGdiNatural,
                                                    pGlyphIndices,     //__in_ecount(glyphCount) UINT16 const* glyphIndices,
                                                    glyphCount,        //UINT32 glyphCount,
                                                    glyphMetrics,      //__out_ecount(glyphCount) DWRITE_GLYPH_METRICS* glyphMetrics
                                                    isSideways         //BOOL isSideways,
                                                    );

            Marshal.ThrowExceptionForHR(hr);
        }
示例#2
0
 internal unsafe void GetDisplayGlyphMetrics(ushort *pGlyphIndices, uint glyphCount, GlyphMetrics *pGlyphMetrics, float emSize, [MarshalAs(UnmanagedType.U1)] bool useDisplayNatural, [MarshalAs(UnmanagedType.U1)] bool isSideways, float pixelsPerDip)
 {
 }
示例#3
0
 internal unsafe void GetDesignGlyphMetrics(ushort *pGlyphIndices, uint glyphCount, GlyphMetrics *pGlyphMetrics)
 {
 }
示例#4
0
        public unsafe void GetDesignGlyphMetrics(ushort *pGlyphIndices, uint glyphCount, GlyphMetrics *glyphMetrics)
        {
            var GetDesignGlyphMetricsFn = GetFunctionFromVTable <Delegate_GetDesignGlyphMetrics>(10);
            int hr = GetDesignGlyphMetricsFn(_fontFace, pGlyphIndices, glyphCount, glyphMetrics, false);

            Marshal.ThrowExceptionForHR(hr);
        }