-
SynPdf
Iemand ervaring met SynPdf?
Gebruikende de TPdfDocumentGDI probeer ik een WicImage of PNG op het VCLCanvas te tekenen, maar WicImage doet niets en PngImage wordt niet transparant.
Met een metafile werkt de WicImage wel correct, maar PNGImage wordt ook niet transparant.
Ik gebruik Canvas.StretchDraw(x, y, Graphic).
Op internet heb ik tot mijn verbazing niets gevonden.
-
Ik heb met TPdfDocumentGDI gewerkt, en heb anders best wel grondig met PDF's al gewerkt, en wat PNG betreft heb je mogelijk net de moeilijkste kruising van de twee werelden te pakken. In de kern is PDF gebaseerd op PostScript, en werkt het eigenlijk heel hard op basis van vector-tekeningen. Historisch was er vanalles voorzien voor beeldmateriaal, en dat is heel hard gaan overlappen met JPG in de jaren 90 en de vroege jaren 2000, maar PNG is van een tijdperk daarna. Als je echt wil 'tekenen' met complexe 'doorzichtgheid' zoals je bij PNG zomaar cadeau krijgt, dan moet je wat PDF betreft jammer genoeg aan de slag met color spaces en functies die op basis van allerhande de kleur berekent om zo het gewenste resultaat te verkrijgen, iets wat SynPDF denk ik niet zomaar voor je gaat samenpuzzelen door GDI-calls te doen om een PNG op een canvas te zetten.
Wat misschien een uitweg kan bieden, is zelf eerst op een TBitmap de PNG zoals gewenst neerzetten en dat daarna in je PDF zetten.
-
Dank voor de info. Ja ik heb er iets van meegekregen.
Vreemde is wanneer ik de Microsoft Print to PDF gebruik (dus printercanvas gebruik) het wel mooi werkt.
Ik zie ook dat in SynPdf de EMR_ALPHABLEND niet afgehandeld wordt bij een WicImage en dat alleen pixelformat pf24Bit wordt afgehandeld, zelfs geforceerd.
Een PNG 24 bits werkt ook, maar dan wordt de achtergrond zwart. pf32Bit bitmaps doen het ook niet :-)
Ik vermoed dat ik transparantie voorlopig moet vergeten.
-
Ben je zeker dat je met PDF goed zit? Een tijd terug heb ik iets gedaan met HTML en in CSS alle afmetingen in millimeter ("mm") en gaf verbazend goed resultaat
-
Tuurlijk. Dat is een bestand, printbaar, goed bewaarbaar, goed mailbaar, altijd goede layout.
Heb het probleem opgelost met een 24 bits bitmap als tussenbuffer.