FPDF en logo, te lage kwaliteit

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Chris -

Chris -

01/12/2010 16:29:03
Quote Anchor link
Zijn er mensen die werken met FPDF? Ik ben bezig met het maken van een PDF en daarin moet een logo worden geplaatst. Dat logo wordt eerst verkleind als deze te groot is, en vervolgens wordt deze in de PDF gezet.

Waar het fout gaat is, is het moment dat de logo in het PDF-je wordt gezet. Het originele plaatje ziet er goed uit, maar zodra die in de PDF staat ziet het er niet meer netjes uit. Het is gewoon echt slecht te noemen..

De compressie van FPDF staat op false, daar heb ik al naar gekeken ;-)

Alvast bedankt!
 
PHP hulp

PHP hulp

23/11/2024 10:29:47
 
Jelmer -

Jelmer -

01/12/2010 16:49:33
Quote Anchor link
Heb je een voorbeeldje van een plaatje en van een gegenereerd pdfje met dat plaatje daarin? En hoe roep je FPDF::Image aan? Bij mij zet hij het lossless in m'n pdfje.
 
- Ricardo -

- Ricardo -

01/12/2010 18:51:04
Quote Anchor link
Ook ooit mee lopen kloten, en toen het na een paar uur nog niet lukte overgestapt op DomPDF
Gewijzigd op 01/12/2010 18:51:33 door - Ricardo -
 
Elwin - Fratsloos

Elwin - Fratsloos

01/12/2010 19:35:40
Quote Anchor link
Heeft de afbeelding wel een goede kwaliteit?

Mijn ervaring met FPDF is dat je de afbeelding beter groter plaatst en dar FPSF de afbeelding op maat maakt. Dan is de kwaliteit veel beter.

Toevallig de laatste weken vaak bezig met FPDF voor het genereren van een dynamische folder op basis van standaard PDF-bestanden (verschillende covers, algemene informatie, tussenblad per serie, etc) in combinatie met een online product-database.

De afbeeldingen van die producten worden op 540*500px geüpload. Door middel van PHPthumb() worden afbeeldingen bewerkt naar 300*300px (PHPthumb houdt zelf aspect ratio in de gaten). Deze worden vervolgens op 21*21mm in de PDF geplaatst.
 
Chris -

Chris -

02/12/2010 08:59:50
Quote Anchor link
Ik heb inderdaad ook een aantal producten die er in worden gezet, die worden op "originele grootte" (hoog aantal pixels) erin verwerkt. Die zien er netjes uit. Echter, een logo kan nog wel eens kleiner zijn dan 100px hoog en 250px breed. Ik kan niet vragen of ze het logo willen uploaden die minimaal 250 pixels hoog is...

@Jelmer: Sorry, ik kan een PDF hier niet plaatsen. Ik kan wel de code geven die dat gedeelte doet, zodat je kan zien hoe ik het aanroep:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
//$width = imagesx($image);
            //$height = imagesy($image);
            //parent::Image('uploads/logo/'.$details['image'], 30, 20, $width, $height, $ext);
            parent::Image('uploads/logo/'.$details['image'], 30, 20);


Ik heb het op beide manieren geprobeerd maar dat maakt niets uit.. Het plaatje zelf is van goede kwaliteit, als je die in de browser zou laten zien ziet die er gewoon "mooi" uit.

@Elwin, lijkt erop dat we aan een soortgelijk project bezig zijn ;-)

Het is overigens de bedoeling om de PDF te maken in een bepaalde opmaak, die is aangeleverd in PDF (PSD aanwezig). Daarom is gekozen voor fPDF omdat die een pagina kan importeren. Bij die DomPDF kon ik die optie niet 1-2-3 vinden, of het moet nog een beetje vroeg zijn..
Gewijzigd op 02/12/2010 09:04:15 door Chris -
 
Elwin - Fratsloos

Elwin - Fratsloos

02/12/2010 12:31:47
Quote Anchor link
Daar lijkt het inderdaad op dan! :) Die van mij komt denk ik nog net dit jaar online (nog maar twee weken werken! jeuj! :)). Ik moet nog een paar dingen er aan doen en dan moeten er nog een paar bron-PDF's gewijzigd worden. Helaas is de optie straks alleen maar bereikbaar voor ingelogde gebruikers (monteurs, verkopers), dus ik kan hem dan niet laten zien.

Ook in mijn project wordt er een logo van het bedrijf/de klant geplaatst. Die kunnen de gebruikers zelf inloggen, maar ik heb daarbij wel aangegeven dat het logo van goede kwaliteit moet zijn. PDF/drukwerk is nou eenmaal anders dan web. Ik sla te kleine logo's niet op, middelmatige en goede wel. Bij de middelmatige komt vervolgens wel een waarschuwing. Op dit moment bereken ik dat nog aan het aantal px dat de afbeelding breed is. Misschien dat we dat nog veranderen, mocht blijken dat er te vaak te kleine logo's worden geplaatst.

Om het toch nog een beetje op te vangen wordt het logo ingeladen via PHPthumb, deze zorgt ervoor dat ik altijd een afbeelding van 500*500px krijg waarin het logo, al dan niet verkleind, maar nooit vergroot, altijd linksboven uitgelijnd is (wat een kleine aanpassing in PHPthumb vereist).

Je kan ook nog eens spelen met het aangeven van de hoogte en breedte van de afbeelding in FPDF. Maar die moet je dan wel goed uitrekenen (van px naar de eenheid die je in FPDF gebruikt).
 
Chris -

Chris -

02/12/2010 13:13:12
Quote Anchor link
Ik gebruik points, dus dat is pixels * 0.75 als ik het handmatig meegeef (in de code die ik gaf staat dit niet, maar dat doe ik wel). Echter, het resultaat is dan beduidend slechter dan wanneer ik dit niet meegeef.

Het is toch raar in dat opzicht dat grote plaatjes geen probleem zijn, maar op het moment dat er een klein plaatje staat hij dat plaatje gaat verpesten?
 
Elwin - Fratsloos

Elwin - Fratsloos

03/12/2010 12:38:57
Quote Anchor link
Het is inderdaad vreemd, maar ik denk dat het te maken heeft met het feit dat FPDF de afbeeldingen omzet naar 72 DPI. Misschien dat iemand met wat meer drukwerk-ervaring hier iets over kan boeren?

De oplossing, of work-a-round, lijkt me toch om grotere afbeeldingen af te dwingen: óf bij het uploaden, óf bij het plaatsen in de PDF, óf allebei.
 
Chris -

Chris -

03/12/2010 12:54:10
Quote Anchor link
We hebben gekeken naar andere projecten die de klant in het verleden heeft gevraagd met PDF's, het is een algemeen probleem. Het houd dus op voor ons, anders gaan we er te veel uren aan zitten. Wordt nu inderdaad een groter logo, en als je een kleiner logo upload laat hij hem ook kleiner zien.

Toch bedankt voor je hulp Elwin, en succes met jouw project ;-)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.