Core PHP

Built-in Antialiased Lines with GD

This GD example program demonstrates the code for an example program that demonstrates how to draw built-in antialiased lines with GD and create a png image.

BuiltinAntialiasedLines.php

<?php
// Create an anti-aliased image and a normal image
$qImageAA		= ImageCreateTrueColor(400, 100);
$qImageNormal	= ImageCreateTrueColor(200, 100);

// Switch antialiasing on for one image
ImageAntialias($qImageAA, true);

// Allocate a red color for each image
$qRedAA			= ImageColorAllocate($qImageAA, 255, 0, 0);
$qRedNormal		= ImageColorAllocate($qImageNormal, 255, 0, 0);

// Draw several pairs of lines, with AA and without
ImageLine($qImageAA, 0, 0, 200, 10, $qRedAA);
ImageLine($qImageAA, 0, 0, 200, 30, $qRedAA);
ImageLine($qImageAA, 0, 0, 200, 50, $qRedAA);
ImageLine($qImageAA, 0, 0, 200, 70, $qRedAA);
ImageLine($qImageAA, 0, 0, 200, 100, $qRedAA);
ImageLine($qImageAA, 0, 0, 150, 100, $qRedAA);
ImageLine($qImageAA, 0, 0, 100, 100, $qRedAA);
ImageLine($qImageAA, 0, 0, 50, 100, $qRedAA);
ImageLine($qImageAA, 0, 0, 30, 100, $qRedAA);
ImageLine($qImageAA, 0, 0, 10, 100, $qRedAA);
ImageLine($qImageNormal, 0, 0, 200, 10, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 200, 30, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 200, 50, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 200, 70, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 200, 100, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 150, 100, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 100, 100, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 50, 100, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 30, 100, $qRedNormal);
ImageLine($qImageNormal, 0, 0, 10, 100, $qRedNormal);

// Merge the two images side by side for output (AA: left, Normal: Right)
ImageCopyMerge($qImageAA, $qImageNormal, 200, 0, 0, 0, 200, 100, 100);

// Output image
Header('Content-type: image/png');

ImagePNG($qImageAA);
ImageDestroy($qImageAA);
ImageDestroy($qImageNormal);
?>
 

Output

 
 

© 2007–2024 XoaX.net LLC. All rights reserved.