imagejpeg

&gd.image.output;

&reftitle.description; `bool` `imagejpeg` `GdImage` `image` ``resource``string``null```file`&null; `int` `quality`-1

`imagejpeg` creates a JPEG file from the given `image`.

&reftitle.parameters;

&gd.image.description;

`file`

- &gd.image.path;

`quality`

- `quality` is optional, and ranges from 0 (worst quality, smaller file) to 100 (best quality, biggest file). The default (`-1`) uses the default IJG quality value (about 75).

&reftitle.returnvalues;

&return.success;

&gd.return.trueonerror;
&reftitle.changelog;

&Version; | &Description;
&gd.changelog.image-param;

&reftitle.examples;

### Outputting a JPEG image to the browser

    <?php
    // Create a blank image and add some text
    $im = imagecreatetruecolor(120, 20);
    $text_color = imagecolorallocate($im, 233, 14, 91);
    imagestring($im, 1, 5, 5,  'A Simple Text String', $text_color);

    // Set the content type header - in this case image/jpeg
    header('Content-Type: image/jpeg');

    // Output the image
    imagejpeg($im);

    // Free up memory
    imagedestroy($im);
    ?>

&example.outputs.similar; Output of example : Outputting a JPEG image

### Saving a JPEG image to a file

    <?php
    // Create a blank image and add some text
    $im = imagecreatetruecolor(120, 20);
    $text_color = imagecolorallocate($im, 233, 14, 91);
    imagestring($im, 1, 5, 5,  'A Simple Text String', $text_color);

    // Save the image as 'simpletext.jpg'
    imagejpeg($im, 'simpletext.jpg');

    // Free up memory
    imagedestroy($im);
    ?>

### Outputting the image at 75% quality to the browser

    <?php
    // Create a blank image and add some text
    $im = imagecreatetruecolor(120, 20);
    $text_color = imagecolorallocate($im, 233, 14, 91);
    imagestring($im, 1, 5, 5,  'A Simple Text String', $text_color);

    // Set the content type header - in this case image/jpeg
    header('Content-Type: image/jpeg');

    // Skip the file parameter using NULL, then set the quality to 75%
    imagejpeg($im, NULL, 75);

    // Free up memory
    imagedestroy($im);
    ?>

&reftitle.notes;

If you want to output Progressive JPEGs, you need to set interlacing on with `imageinterlace`.

&reftitle.seealso;

- `imagepng`
- `imagegif`
- `imagewbmp`
- `imageinterlace`
- `imagetypes`