Beispiel #1
0
        public byte[] GetConversionResult(IntPtr converter)
        {
            IntPtr resultPointer;

            int length = WkHtmlToXBindings.wkhtmltopdf_get_output(converter, out resultPointer);
            var result = new byte[length];

            Marshal.Copy(resultPointer, result, 0, length);

            return(result);
        }
Beispiel #2
0
        public unsafe string GetObjectSetting(IntPtr settings, string name)
        {
            //default const char * size is 2048 bytes
            byte[] buffer = new byte[2048];

            fixed(byte *tempBuffer = buffer)
            {
                WkHtmlToXBindings.wkhtmltopdf_get_object_setting(settings, name, tempBuffer, buffer.Length);
            }

            return(GetString(buffer));
        }
Beispiel #3
0
        public void Load()
        {
            if (IsLoaded)
            {
                return;
            }

            if (WkHtmlToXBindings.wkhtmltopdf_init(0) == 1)
            {
                IsLoaded = true;
            }
        }
Beispiel #4
0
        private bool disposedValue = false; // To detect redundant calls

        void Dispose(bool disposing)
        {
            if (!disposedValue)
            {
                if (disposing)
                {
                    // TODO: dispose managed state (managed objects).
                }

                //free unmanaged resources (unmanaged objects) and override a finalizer below.
                WkHtmlToXBindings.wkhtmltopdf_deinit();
                // TODO: set large fields to null.

                disposedValue = true;
            }
        }
Beispiel #5
0
        public int wkhtmltopdf_get_object_setting(IntPtr settings,
                                                  [MarshalAs((short)CustomUnmanagedType.LPUTF8Str)]
                                                  string name,
                                                  byte[] array)
        {
            int    size = Marshal.SizeOf(array[0]) * array.Length;
            IntPtr pnt  = Marshal.AllocHGlobal(size);

            try
            {
                // Copy the array to unmanaged memory.
                Marshal.Copy(array, 0, pnt, array.Length);

                return(WkHtmlToXBindings.wkhtmltopdf_get_object_setting(settings, name, pnt, size));
            }
            finally
            {
                // Free the unmanaged memory.
                Marshal.FreeHGlobal(pnt);
            }
        }
Beispiel #6
0
 public int wkhtmltopdf_set_progress_changed_callback(IntPtr converter, [MarshalAs(UnmanagedType.FunctionPtr)] VoidCallback callback) => WkHtmlToXBindings.wkhtmltopdf_set_progress_changed_callback(converter, callback);
Beispiel #7
0
 public void wkhtmltopdf_destroy_converter(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_destroy_converter(converter);
Beispiel #8
0
 public bool wkhtmltopdf_convert(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_convert(converter);
Beispiel #9
0
 public void wkhtmltopdf_add_object(IntPtr converter,
                                    IntPtr objectSettings,
                                    byte[] data) => WkHtmlToXBindings.wkhtmltopdf_add_object(converter, objectSettings, data);
Beispiel #10
0
 public int wkhtmltopdf_destroy_object_settings(IntPtr settings) => WkHtmlToXBindings.wkhtmltopdf_destroy_object_settings(settings);
Beispiel #11
0
 public int wkhtmltopdf_phase_count(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_phase_count(converter);
Beispiel #12
0
 public int wkhtmltopdf_set_warning_callback(IntPtr converter, [MarshalAs(UnmanagedType.FunctionPtr)] StringCallback callback) => WkHtmlToXBindings.wkhtmltopdf_set_warning_callback(converter, callback);
Beispiel #13
0
 public IntPtr CreateConverter(IntPtr globalSettings)
 {
     return(WkHtmlToXBindings.wkhtmltopdf_create_converter(globalSettings));
 }
Beispiel #14
0
 public void DestroyObjectSetting(IntPtr settings)
 {
     WkHtmlToXBindings.wkhtmltopdf_destroy_object_settings(settings);
 }
Beispiel #15
0
 public int SetObjectSetting(IntPtr settings, string name, string value)
 {
     return(WkHtmlToXBindings.wkhtmltopdf_set_object_setting(settings, name, value));
 }
Beispiel #16
0
 public IntPtr wkhtmltopdf_create_object_settings() => WkHtmlToXBindings.wkhtmltopdf_create_object_settings();
Beispiel #17
0
 public int wkhtmltopdf_set_object_setting(IntPtr settings,
                                           [MarshalAs((short)CustomUnmanagedType.LPUTF8Str)]
                                           string name,
                                           [MarshalAs((short)CustomUnmanagedType.LPUTF8Str)]
                                           string value) => WkHtmlToXBindings.wkhtmltopdf_set_object_setting(settings, name, value);
Beispiel #18
0
 public int wkhtmltopdf_current_phase(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_current_phase(converter);
Beispiel #19
0
 public int wkhtmltopdf_extended_qt() => WkHtmlToXBindings.wkhtmltopdf_extended_qt();
Beispiel #20
0
 public IntPtr wkhtmltopdf_phase_description(IntPtr converter, int phase) => WkHtmlToXBindings.wkhtmltopdf_phase_description(converter, phase);
Beispiel #21
0
 public IntPtr wkhtmltopdf_create_converter(IntPtr globalSettings) => WkHtmlToXBindings.wkhtmltopdf_create_converter(globalSettings);
Beispiel #22
0
 public int wkhtmltopdf_init(int useGraphics) => WkHtmlToXBindings.wkhtmltopdf_init(useGraphics);
Beispiel #23
0
 public void wkhtmltopdf_add_object(IntPtr converter,
                                    IntPtr objectSettings,
                                    [MarshalAs((short)CustomUnmanagedType.LPUTF8Str)] string data) => WkHtmlToXBindings.wkhtmltopdf_add_object(converter, objectSettings, data);
Beispiel #24
0
 public IntPtr wkhtmltopdf_progress_string(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_progress_string(converter);
Beispiel #25
0
 public IntPtr wkhtmltopdf_version() => WkHtmlToXBindings.wkhtmltopdf_version();
Beispiel #26
0
 public int wkhtmltopdf_http_error_code(IntPtr converter) => WkHtmlToXBindings.wkhtmltopdf_http_error_code(converter);
Beispiel #27
0
 public int wkhtmltopdf_get_output(IntPtr converter, out IntPtr data) => WkHtmlToXBindings.wkhtmltopdf_get_output(converter, out data);
Beispiel #28
0
 public int wkhtmltopdf_deinit() => WkHtmlToXBindings.wkhtmltopdf_deinit();
Beispiel #29
0
 public int wkhtmltopdf_set_finished_callback(IntPtr converter, [MarshalAs(UnmanagedType.FunctionPtr)] IntCallback callback) => WkHtmlToXBindings.wkhtmltopdf_set_finished_callback(converter, callback);
Beispiel #30
0
 public IntPtr wkhtmltopdf_create_global_settings() => WkHtmlToXBindings.wkhtmltopdf_create_global_settings();