Avatar billede leif Seniormester
24. september 2005 - 14:22 Der er 5 kommentarer og
1 løsning

Create image med gdlib

Hej,

En der kan opfriske min hukommelse lidt, hvordan er det jeg får php til at lave et billede med følgende tekst:
Hej,
Dette er en test.
Fra
Mig

På forhånd tak

/Leif
Avatar billede jakobdo Ekspert
25. september 2005 - 09:55 #1
Det er ikke en pæn løsning, men:

<?php
header("Content-type: image/png");
$im = @imagecreate(100, 100) or die("Cannot Initialize new GD image stream");
$background_color = imagecolorallocate($im, 255, 255, 255);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5,  "Hej,", $text_color);
imagestring($im, 1, 5, 15,  "Dette er en test.", $text_color);
imagestring($im, 1, 5, 25,  "Fra", $text_color);
imagestring($im, 1, 5, 35,  "Mig,", $text_color);
imagepng($im);
imagedestroy($im);
?>

Det bør evt kodes så den tager højde for fontsize, og ikke som her hvor jeg "bare" øger Y med 10.
Avatar billede leif Seniormester
25. september 2005 - 12:23 #2
Ja, okay, det kunne man sikkert banke en txt fil ind i dvs. jeg åbner txt filen læser den linie for linie, og laver billedet !
Avatar billede jakobdo Ekspert
25. september 2005 - 12:34 #3
F.eks. ja!
Dog kan du også løbe ind i linier som er længere end billedet, så der bør du evt kigge på denne funktion: function ImageStringWrap($image, $font, $x, $y, $text, $color, $maxwidth)
{
  $fontwidth = ImageFontWidth($font);
  $fontheight = ImageFontHeight($font);
  if ($maxwidth != NULL) {
      $maxcharsperline = floor($maxwidth / $fontwidth);
      $text = wordwrap($text, $maxcharsperline, "\n", 1);
    }
  $lines = explode("\n", $text);
  while (list($numl, $line) = each($lines)) {
      ImageString($image, $font, $x, $y, $line, $color);
      $y += $fontheight;
    }
}


Fundet på: www.php.net/imagestring
Avatar billede leif Seniormester
02. oktober 2005 - 19:50 #4
Her pt. droppet projektet, men smid et svar.
Avatar billede jakobdo Ekspert
03. oktober 2005 - 08:08 #5
Svar!
Avatar billede jakobdo Ekspert
03. oktober 2005 - 18:05 #6
Takker for point!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester