php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #79763 imagefilledarc fails with odd arc sizes
Submitted: 2020-07-01 10:23 UTC Modified: 2020-07-01 10:48 UTC
From: greg at subaqua dot co dot uk Assigned: cmb (profile)
Status: Not a bug Package: GD related
PHP Version: 7.2.31 OS: Ubuntu 18.04
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem:
36 - 30 = ?
Subscribe to this entry?

 
 [2020-07-01 10:23 UTC] greg at subaqua dot co dot uk
Description:
------------
When the arc size is specified as an ODD number of pixels, the arc angles are calculated incorrectly.

When specified as an EVEN number of pixels, it works OK.

See https://imgur.com/a/QCdscXj

The problem seems to be a combination of PHP version and GD version.

Fails: Ubuntu 18.04
PHP:7.2.24-0ubuntu0.18.04.6
GD: 2.2.5

Works: Redhat 7
PHP: 7.1.33
GD: 2.3


Test script:
---------------
<?php
$image_size = 400;
$arc_size   = $_GET['r'] ?? 275;

$image = imagecreate($image_size, $image_size);

$c1 = imagecolorallocate($image, 255, 255, 255);
$c2 = imagecolorallocate($image, 0, 255, 0);
$c3 = imagecolorallocate($image, 0, 0, 255);

imagefilledrectangle($image, 0, 0, $image_size, $image_size, $c1);

imagefilledarc($image, $image_size/2, $image_size/2, $arc_size, $arc_size, 135, 270, $c3, IMG_ARC_PIE);
imagefilledarc($image, $image_size/2, $image_size/2, $arc_size, $arc_size, 270, 405, $c2, IMG_ARC_PIE);

header('Content-type: image/png');
imagepng($image);
imagedestroy($image);



Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2020-07-01 10:48 UTC] cmb@php.net
-Status: Open +Status: Not a bug -Assigned To: +Assigned To: cmb
 [2020-07-01 10:48 UTC] cmb@php.net
With regard to PHP this is a duplicate of bug #73614.

With regard to libgd this is a duplicate of
<https://github.com/libgd/libgd/issues/351> which is fixed as of
libgd 2.3.0.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 26 11:01:31 2024 UTC