Door
j opla
op 16-02-2017 13:09
gewijzigd op 17-02-2017 15:33
3.347 views
Hallo,
Eigenlijk misschien al meer een gevorderd vraagje dan een beginners vraag, maar is er ergens een nederlandstalige handleiding wat om plaatjes te maken met php.
Ik zie in de documentatie verschillende mogelijkheden om met php plaatjes te manipuleren. Ik zou willen weten of het mogelijk is om een functie te schrijven die van één van de plaatjes de voorgrond kleur aan past en dan een ander plaatje er overheen zetten?
Of om nog duidelijker te zijn wil ik markers maken om met leaflet op een OSM kaart te zetten. De markers moeten verschillende kleuren kunnen krijgen en er moet een symbooltje op de marker te maken zijn. Het symbooltje is in feite een ander .png bestandje.
Als je zoekt naar bijvoorbeeld impose image in PHP of watermark in PHP, dan vind je verschillende oplossingen. De meeste gebruiken een variant die hier wordt uitgelegd:
Hoeveel kleuren heb je? Is die bijvoorbeeld door de gebruiker in te stellen?
Als je een beperkt aantal standaardkleuren hebt, zou ik voor elke kleur een aparte PNG maken. Dan krijg je de natuurlijkste kleuren en kleurovergangen.
Maar met een monochrome bitmap zou je inderdaad zelf ook de voorgrondkleur moeten kunnen veranderen. Bitmaps gebruiken namelijk een kleurindex: in het beeld staat "deze pixel heeft kleur x" en in de index staat vervolgens "kleur x is deze kleur rood". Je hoeft daarom alleen de index te wijzigen. Hoe weet ik niet precies, maar je moet de oplossing in die richting zoeken.
ik wil een stuk of 20 verschillende kleuren markers (.png) maken met (voorlopig) 5 verschillende plaatjes er op. Dat zou neer komen op het maken van 100 plaatjes. Dus alles wat het flexibeler maakt is welkom.
[size=xsmall]Toevoeging op 16/02/2017 15:32:14:[/size]
hmmm, de eerste test is niet erg veelbelovend. Ik heb de code uit de documentatie over genomen:
Ik zou eerst een de header op lijn 10 even tijdelijk weghalen/web-commentariseren, als het goed is zie je dan een foutmelding in de vorm van een 'Headers already sent by....'. ;-)
Een plaatje is immers niet voorzien van HTML, dus dan zou je alle HTML dus moeten strippen. Je wilt een plaatje genereren, dus die zul je dan ook met de img-tag in HTML moeten aanroepen.