[PHP] [FPDF] Static google maps inlezen in FPDF

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Kaplan
  • Registratie: November 2003
  • Niet online
Na een paar uur proberen en googlen kom ik er niet uit. Ik hoop dat iemand hier me kan helpen.

Ik gebruik FPDF om PDF brochures te genereren.

Alles gaat perfect, maar ik wil in de brochure een statische Google Map integreren en krijg dat niet voor elkaar.

Bij gebruik van de $pdf->Image functie, volgt foutmelding:

FPDF error: Unsupported image type: 568453788757324&key=HIERSTAATDANDEKEY

Iemand dit al eens bij de hand gehad? Tip, suggesties, zijn van harte welkom!

Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
- Wat is de link van het image dat je erin probeert te stoppen en wat is het formaat (type, kleurendiepte etc.)?
- Heb je al geprobeerd andere plaatjes in je PDF te stoppen. Ook van hetzelfde type en kleurendiepte?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Kwastie
  • Registratie: April 2005
  • Laatst online: 17-09 13:58

Kwastie

Awesomeness

Zonder relevante code kunnen er geen conclusie worden getrokken, dan word het gissen naar het probleem. Overigens de error "FPDF error: Unsupported image type:" suggereert dat je een type image moet opgeven terwijl het lijkt op een gedeelte van een URL wat je meegeeft.

[ Voor 12% gewijzigd door Kwastie op 27-11-2009 11:57 ]

When I get sad i stop being sad and be awesome instead


Acties:
  • 0 Henk 'm!

  • BBrunekreeft
  • Registratie: Mei 2004
  • Laatst online: 17:25

BBrunekreeft

Dus...

Zie: http://www.fpdf.org/en/doc/image.htm
Je moet het bestandformaat als parameter meegeven (de 6e parameter).
FPDF probeert het bestandsformaat te raden a.d.h.v. de bestandsextentie. Maar een URL heeft die niet.

Je aanroep wordt dan zoiets als:

code:
1
$pdf->Image('http://maps.google.com/enderest', $x, $y, $width, $height, 'jpg');

Acties:
  • 0 Henk 'm!

  • Kaplan
  • Registratie: November 2003
  • Niet online
Klopt allemaal:

- 'Normale' afbeeldingen (die gewoon op de eigen webserver staan) staan er prima in.

PHP:
1
2
3
4
5
$locatiekaart = "http://maps.google.com/staticmap?zoom=11&size=580x300&markers=51.46193199543172,3.568453788757324&key=KEY";
                        
$locatiekaart=urlencode($locatiekaart);
            
$pdf->Image($locatiekaart,20,20,80);


Het lijkt er dus op dat hij bij de komma tussen de lat en lon de fout in gaat. Maar die komma heb ik ook al met "‚" (<-- hier stond dus & s b q u o ; maar dan zonder spaties...) geprobeerd, maar dat helpt ook niet...

[ Voor 7% gewijzigd door Kaplan op 27-11-2009 12:03 ]


Acties:
  • 0 Henk 'm!

  • steffex
  • Registratie: Augustus 2003
  • Laatst online: 12-08 00:24
je kunt ook even de url via fopen oproepen en in een temp image opslaan, zodat je met de FPDF een bestand kan toevoegen...

Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Kaplan schreef op vrijdag 27 november 2009 @ 12:00:
Klopt allemaal:

- 'Normale' afbeeldingen (die gewoon op de eigen webserver staan) staan er prima in.

PHP:
1
2
3
4
5
$locatiekaart = "http://maps.google.com/staticmap?zoom=11&size=580x300&markers=51.46193199543172,3.568453788757324&key=KEY";
                        
$locatiekaart=urlencode($locatiekaart);
            
$pdf->Image($locatiekaart,20,20,80);


Het lijkt er dus op dat hij bij de komma tussen de lat en lon de fout in gaat. Maar die komma heb ik ook al met "‚" (<-- hier stond dus & s b q u o ; maar dan zonder spaties...) geprobeerd, maar dat helpt ook niet...
Maar je geeft nog steeds geen image-type mee toch?

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Kaplan
  • Registratie: November 2003
  • Niet online
Nee, maar dat hoeft ook niet (kan zelfs niet eens). Herkent hij vanzelf.

Ik heb nu:

PHP:
1
2
3
4
5
$handle = fopen($locatiekaart, "r");
            file_put_contents("test.gif",$handle);
            $pdf->Image('test.gif',20,20,250);
            fclose($handle);
            unlink("test.gif");


En dit werkt. Op een of andere manier lijkt het me niet zo'n nette manier zo. Klopt dat?

Acties:
  • 0 Henk 'm!

  • BBrunekreeft
  • Registratie: Mei 2004
  • Laatst online: 17:25

BBrunekreeft

Dus...

Kaplan schreef op vrijdag 27 november 2009 @ 12:12:
Nee, maar dat hoeft ook niet (kan zelfs niet eens). Herkent hij vanzelf.
Ehm.. nog eens lezen dan: Zie: http://www.fpdf.org/en/doc/image.htm

Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Kaplan schreef op vrijdag 27 november 2009 @ 12:12:
Nee, maar dat hoeft ook niet (kan zelfs niet eens). Herkent hij vanzelf.
Nou, dat herkennen lukt dus niet blijkbaar en volgens de docs:
Image(string file [, float x [, float y [, float w [, float h [, string type [, mixed link]]]]]])
kan je prima een type meegeven!? Waarom probeer je het niet even?

En volgens de manual en zoals eerder gezegd:
$type
Image format. Possible values are (case insensitive): JPG, JPEG, PNG and GIF. If not specified, the type is inferred from the file extension.
Een URL heeft geen file extension....

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Kaplan
  • Registratie: November 2003
  • Niet online
Potverdikkie zeg... Zit ik daar twee uur naar te zoeken....

Tsja, dat was 'm dus. Gewoon even meegeven dat het een GIFje is...

Volgende keer beter lezen... Haastige spoed....

Bedankt allemaal!

Acties:
  • 0 Henk 'm!

  • Tharulerz
  • Registratie: April 2009
  • Laatst online: 10-04 05:16
8)7 8)7

Het antwoord op je probleem wordt in de 3e reply gepost, en toch slaag je erin om het pas op te lossen 10 replies later. Waarom vraag je om hulp als je hem toch niet leest?

Acties:
  • 0 Henk 'm!

  • armageddon_2k1
  • Registratie: September 2001
  • Laatst online: 27-07 10:18
Ja, dat had ik ook een beetje.

Engineering is like Tetris. Succes disappears and errors accumulate.


Acties:
  • 0 Henk 'm!

  • Kaplan
  • Registratie: November 2003
  • Niet online
Tsja, sorry die zie ik nu ook. Maar als je de tijden bekijkt, zul je zien dat ik toen net een reactie op die reply daarvoor zat te typen. Heeft mekaar gekruisd en ik keek steeds onderaan het topic of er nog reacties waren.

Excuses, zal volgende keer een bril opzetten... B)
Pagina: 1