… | |
… | |
660 | ? scale_pixbuf $stone, $size, $size, INTERP_HYPER |
660 | ? scale_pixbuf $stone, $size, $size, INTERP_HYPER |
661 | : new_pixbuf $size, $size, 1; |
661 | : new_pixbuf $size, $size, 1; |
662 | |
662 | |
663 | if ($mark & (MARK_GRAY_B | MARK_GRAY_W)) { |
663 | if ($mark & (MARK_GRAY_B | MARK_GRAY_W)) { |
664 | # make transparent by stippling :( |
664 | # make transparent by stippling :( |
665 | # #d# |
665 | # fix this to use compositing if/when we have full compositing support |
|
|
666 | # in kgsueme |
|
|
667 | my @row = ( |
|
|
668 | "\xff\xff\xff\xff\x00\x00\x00\x00" x ($size / 2 + 1), |
|
|
669 | "\x00\x00\x00\x00\xff\xff\xff\xff" x ($size / 2 + 1), |
|
|
670 | ); |
|
|
671 | $base->put_pixels ($base->get_pixels ($_) & $row[$_ & 1], $_, 0) |
|
|
672 | for 0 .. $size - 1; |
666 | } |
673 | } |
667 | |
674 | |
668 | for ([MARK_SMALL_B, $::black_img[int rand @::black_img]], |
675 | for ([MARK_SMALL_B, $::black_img[int rand @::black_img]], |
669 | [MARK_SMALL_W, $::white_img[int rand @::white_img]]) { |
676 | [MARK_SMALL_W, $::white_img[int rand @::white_img]]) { |
670 | my ($mask, $img) = @$_; |
677 | my ($mask, $img) = @$_; |
671 | if ($mark & $mask) { |
678 | if ($mark & $mask) { |
672 | $img->composite ( |
679 | $img->composite ( |
673 | $base, ($size / 3) x 6, |
680 | $base, ($size / 4) x2, (int ($size / 2 + 0.5)) x2, ($size / 4) x 2, |
674 | ($size - 1) / ($img->get_width - 1) / 3, ($size - 1) / ($img->get_height - 1) / 3, |
681 | $size / $img->get_width / 2, $size / $img->get_height / 2, |
675 | INTERP_HYPER, 255 |
682 | INTERP_HYPER, 192 |
676 | ); |
683 | ); |
677 | } |
684 | } |
678 | } |
685 | } |
679 | |
686 | |
680 | my $dark_bg = ! ! ($mark & (MARK_B | MARK_GRAY_B)); |
687 | my $dark_bg = ! ! ($mark & (MARK_B | MARK_GRAY_B)); |