Beispiel #1
0
        /// <summary>
        /// Generates PDF by specifed HTML content.
        /// </summary>
        /// <param name="html">HTML content.</param>
        /// <param name="htmlEncoding">HTML content encoding.</param>
        /// <param name="settings">Conversion settings.</param>
        /// <returns></returns>
        public byte[] ConvertToPdf(string html, Encoding htmlEncoding, ConversionSettings settings)
        {
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            if (string.IsNullOrEmpty(html))
            {
                html = string.Empty;
            }
            byte[] result;
            using (var inputStream = new MemoryStream(htmlEncoding.GetBytes(html)))
                using (var outputStream = new MemoryStream())
                {
                    ConvertToPdf(inputStream, outputStream, settings);
                    result = outputStream.ToArray();
                }
            return(result);
        }
Beispiel #2
0
        /// <summary>
        /// Generate PDF into specified output <see cref="Stream" />.
        /// </summary>
        /// <param name="inputStream">HTML content input stream.</param>
        /// <param name="outputStream">PDF file output stream.</param>
        /// <param name="settings">Conversion settings.</param>
        public void ConvertToPdf(
            Stream inputStream,
            Stream outputStream,
            ConversionSettings settings)
        {
            if (inputStream == null)
            {
                throw new ArgumentNullException(nameof(inputStream));
            }
            if (outputStream == null)
            {
                throw new ArgumentNullException(nameof(outputStream));
            }
            if (settings == null)
            {
                throw new ArgumentNullException(nameof(settings));
            }

            ConvertToPdfInternal(inputStream, outputStream, settings.ToString().Trim(), settings.ExecutionTimeout);
        }
Beispiel #3
0
 /// <summary>
 /// Generates PDF by specifed HTML content.
 /// </summary>
 /// <param name="html">HTML content.</param>
 /// <returns></returns>
 public byte[] ConvertToPdf(string html)
 {
     return(ConvertToPdf(html, Encoding.UTF8, ConversionSettings.Default()));
 }