Exemplo n.º 1
0
        public void XToIndex(string text, Pango.Analysis analysis, int x_pos, out int index_, out int trailing)
        {
            IntPtr native_analysis = GLib.Marshaller.StructureToPtrAlloc(analysis);

            pango_glyph_string_x_to_index(Handle, GLib.Marshaller.StringToPtrGStrdup(text), System.Text.Encoding.UTF8.GetByteCount(text), native_analysis, x_pos, out index_, out trailing);
            Marshal.FreeHGlobal(native_analysis);
        }
Exemplo n.º 2
0
        public int IndexToX(string text, Pango.Analysis analysis, int index_, bool trailing)
        {
            int    x_pos;
            IntPtr native_analysis = GLib.Marshaller.StructureToPtrAlloc(analysis);

            pango_glyph_string_index_to_x(Handle, GLib.Marshaller.StringToPtrGStrdup(text), System.Text.Encoding.UTF8.GetByteCount(text), native_analysis, index_, trailing, out x_pos);
            Marshal.FreeHGlobal(native_analysis);
            return(x_pos);
        }
Exemplo n.º 3
0
        public static void ShapeFull(string item_text, string paragraph_text, Pango.Analysis analysis, Pango.GlyphString glyphs)
        {
            IntPtr native_item_text      = GLib.Marshaller.StringToPtrGStrdup(item_text);
            IntPtr native_paragraph_text = GLib.Marshaller.StringToPtrGStrdup(paragraph_text);
            IntPtr native_analysis       = GLib.Marshaller.StructureToPtrAlloc(analysis);

            pango_shape_full(native_item_text, System.Text.Encoding.UTF8.GetByteCount(item_text), native_paragraph_text, System.Text.Encoding.UTF8.GetByteCount(paragraph_text), native_analysis, glyphs == null ? IntPtr.Zero : glyphs.Handle);
            GLib.Marshaller.Free(native_item_text);
            GLib.Marshaller.Free(native_paragraph_text);
            Marshal.FreeHGlobal(native_analysis);
        }