EVO HTML to PDF Converter

Set Images Scaling and JPEG Compression Level

EVO PDF Client for .NET Documentation

EVO HTML to PDF Converter allows you to control the quality of the images in PDF. You can set the JPEG compression level of images in PDF using the PdfDocumentOptionsJpegCompressionLevel property. An object of PdfDocumentOptions type is exposed by the HtmlToPdfConverterPdfDocumentOptions property. A higher compression level of the images leads to a smaller PDF document size and to a lower images quality. The Document class has the similar DocumentJpegCompressionLevel property.

Images Scaling is another parameter which enables the converter to scale the images used in HTML down to their display size in HTML before rendering them in PDF. This can lead to smaller memory consumption during conversion and to a smaller PDF document size but the images quality in PDF can be lower. You can enable the images scaling using the PdfDocumentOptionsImagesScalingEnabled property.

Code Sample - Set Images Scaling and JPEG Compression Level

C#
protected void convertToPdf()
{
    // Get the server IP and port
    String serverIP = textBoxServerIP.Text;
    uint serverPort = uint.Parse(textBoxServerPort.Text);

    // Create a HTML to PDF converter object
    HtmlToPdfConverter htmlToPdfConverter = null;
    if (radioButtonUseTcpService.Checked)
        htmlToPdfConverter = new HtmlToPdfConverter(serverIP, serverPort);
    else
        htmlToPdfConverter = new HtmlToPdfConverter(true, textBoxWebServiceUrl.Text);

    // Set optional service password
    if (textBoxServicePassword.Text.Length > 0)
        htmlToPdfConverter.ServicePassword = textBoxServicePassword.Text;

    // Set license key received after purchase to use the converter in licensed mode
    // Leave it not set to use the converter in demo mode
    htmlToPdfConverter.LicenseKey = "4W9+bn19bn5ue2B+bn1/YH98YHd3d3c=";

    // Set an adddional delay in seconds to wait for JavaScript or AJAX calls after page load completed
    // Set this property to 0 if you don't need to wait for such asynchcronous operations to finish
    htmlToPdfConverter.ConversionDelay = 2;

    // Set the JPEG Compression Level
    // A higher compression level produces smaller PDF documents but lower quality images in PDF
    // Leave it not set for a default compression level
    htmlToPdfConverter.PdfDocumentOptions.JpegCompressionLevel = int.Parse(jpegCompressionLevelTextBox.Text);

    // Set images scaling before rendering to PDF
    // This option enables the converter to scale the images used in HTML down to their display size in HTML before rendering them in PDF. 
    // This can lead to smaller memory consumption during conversion and to a smaller PDF document size but the images quality in PDF can be lower
    htmlToPdfConverter.PdfDocumentOptions.ImagesScalingEnabled = imagesScalingCheckBox.Checked;

    // Convert the HTML page to a PDF document in a memory buffer
    byte[] outPdfBuffer = htmlToPdfConverter.ConvertUrl(urlTextBox.Text);
}