Image croppen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Applicatie ontwikkelaar Java

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving We verwachten van je,

Bekijk vacature »

Developer Angular & Kotlin

Dit ga je doen Het (door)ontwikkelen van mobiele apps en webapplicaties; Het opstellen van technisch ontwerp en het bespreken van ontwerpen met de software architect; Het uitvoeren van werkzaamheden op het gebied van technisch testen; Het in de gaten houden van nieuwe ontwikkelingen op jouw vakgebied en het adviseren van de organisatie hierover. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze organisatie is van oorsprong een familiebedrijf, er wordt hard gewerkt, er heerst een no nonsense en doeners mentaliteit, een informele sfeer en er is een mix van

Bekijk vacature »

C#.NET developer

Functie Het development team bestaat momenteel uit vijf backend C#/.NET ontwikkelaars. Op dit moment zit één ontwikkelaar dedicated op de mobiele applicatie. Als team werk je samen aan het zelf ontwikkelde software platform. Dit bestaat uit zowel apps als websites. Om het systeem door meer dan honderdduizenden gebruikers wordt gebruikt is het bijna vanzelfsprekend dat de kwaliteit van het product hoog moet liggen. Het systeem bestaat uit drie projecten. Je werkt dus aan deze drie projecten waarbij de focus op z’n tijd verschuift. De technieken die worden toegepast zijn o.a. .NET Core, Xamarin, C# en MVC. Je zal dus met

Bekijk vacature »

Java Developer

Java Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Full stack developer

Wat ga je doen als Full stack .NET developer Microsoft 365? Je stelt je op als sparringpartner voor het team en PO over toekomstige functionaliteiten, architectuur en mogelijke nieuwe producten. Je bent mede-verantwoordelijk voor het vertalen en omzetten van een user story in een passend technisch design. Je implementeert functionaliteiten op basis van een technisch design en user story. Je bent mede-verantwoordelijk voor het beheer van Azure DevOps, waaronder het beheer van GIT, Build Pipelines, Release Pipelines en geautomatiseerde testen. Hier herken jij jezelf in Hbo werk- en denkniveau of hoger aangevuld met relevante certificeringen en/of cursussen; Minimaal 3 jaar

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij kort geleden je MBO of HBO ICT in ontvangst mogen nemen? Of ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een uitdagende werkgever in de regio van Tilburg zijn wij op zoek naar een ambitieuze back-end programmeur met affiniteit met MS Acess. Samen met een enthousiast team ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL, Maar affiniteit met MS Acess is nog belangrijker. Je bent sociaal naar klanten en flexibel ingesteld. Je denkt altijd in kansen en gaat graag de uitdaging aan. Verder

Bekijk vacature »

Software Programmeur

Functie omschrijving Voor onze opdrachtgever in omgeving Rotterdam zijn wij opzoek naar een software programmeur die goed kan schrijven in de talen C of C++ en die het leuk vind om te werken met Linux! Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed verloopt. Je zult klanten ondersteunen. Verder zul je technische ontwerpen en gebruikersdocumentaties schrijven en deze onderhouden. Bedrijfsprofiel Dit bedrijf wil de klanten een volledige oplossing kunnen bieden, waarbij ze een

Bekijk vacature »

.NET software developer

Functie omschrijving Voor een gewilde werkgever in omgeving Roosendaal zijn wij op zoek naar een back-end software developer met een aantal jaar werkervaring. Je krijgt een plekje in het workflow team en je zal betrokken worden bij het bouwen van nieuwe software, en het optimaliseren van bestaande code. Je werkt bij dit bedrijf in een Scrum team waarin je soms klantcontact hebt. Jouw werkzaamheden zullen er als volgt uit zien: Je krijgt een plekje op de in-house IT afdeling. Deze afdeling bestaat uit zo'n 12 collega's, verdeeld over verschillende specialisaties (BI, Beheer, Business software & workflow). De vacature staat open

Bekijk vacature »

Senior Node.js developer Digital Agency

Functie Door de groei van de organisatie zijn ze op zoek naar een Tech Lead. Als tech lead ben jij verantwoordelijk Als Back end Node.js developer kom je terecht in een van de 8 multidisciplinaire teams in het projectenhuis. Afhankelijk van jouw interesses, wensen en capaciteiten word je bij projecten en onderwerpen naar keuze betrokken. Als ervaren ontwikkelaar zul jij vaak leiding nemen in de projecten en in het team een aanvoerder zijn van technische discussies. Uiteindelijk wil jij natuurlijk de klantwensen zo goed mogelijk vertalen naar robuuste code. De projecten kunnen varieren van langlopende- tot kleinschalige trajecten. Voorheen werkte

Bekijk vacature »

Back-End Web Developer

Als Back-End Web Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn. Wat doe je als Back-End Web Developer bij Coolblue? Als Back-End Web Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Als backend developer weet je de weg in PHP, kan je in Typescript een microservice op zetten of ben je bereid om dit te leren. Ook Web Backend Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen PHP

Bekijk vacature »

Software Developer C++ en Perl

Ben je een slimme en enthousiaste universitair opgeleide bèta die graag bij een relatief klein softwarebedrijf wil werken waar de sfeer goed is en eigen inbreng gewaardeerd wordt? Wij, IntelliMagic in Leiden, ontwikkelen technisch hoogwaardige software op het gebied van IT infrastructuur performance analytics. Het type software zorgt voor intellectueel interessante uitdagingen. We ontwerpen de producten zelf en verkopen deze als off-the-shelf software aan grote bedrijven in Europa en de VS. Wij zoeken een ervaren C++ software engineer met kennis van Perl voor een van onze ontwikkelteams. Werkzaamheden Samen met de andere ontwikkelaars specificeren, ontwerpen en implementeren van nieuwe functionaliteit

Bekijk vacature »

Frontend Developer

Dit ga je doen Door ontwikkelen van het online platform Deel uitmaken van verschillende ontwikkelteams Meedenken over UI/UX vraagstukken Uitdragen van Front-end binnen de organisatie Hier ga je werken Deze organisatie, gevestigd in de omgeving van Amsterdam, is een grote onderwijs instelling met meerdere vestigingen en een groot aantal studenten. Zo telt deze organisatie +/- 35.000 gebruikers. Bij deze organisatie staat jouw ontwikkeling centraal en is er veel ruimte voor eigen initiatieven. In samenwerking met jouw team ga jij de online omgeving verder ontwikkelen. In de rol van Front end Developer zal jij 50% van jouw tijd werken in het

Bekijk vacature »

Back-end Developer (Permanent position with the em

Bedrijfsomschrijving Dutch specialist in technical installation materials. Functieomschrijving Purpose of the position: Our client is looking for a Back-end Developer who, together with the rest of the energetic and dynamic team, is responsible for the development and management of the website. This not only concerns the development and management of the current website, but also the development of a new Headless Commerce Platform to keep the customer's website Future proof. Within the IT department, there is a real DevOps culture and the commerce team is at the forefront and tries to implement continuous improvements. Most important tasks: ï‚· Designing and

Bekijk vacature »

Laravel Developer

Functie omschrijving Voor een gave organisatie in de buurt van Den Bosch zoek ik een PHP developer. Het is van belang dat je kennis/ervaring hebt met het framework Laravel. Jij gaat in deze functie software applicaties ontwikkelen. Deze software projecten zijn heel divers, en deze organisatie maakt software, van A tot Z. Klanten kunnen in elke sector werkzaam zijn, van profit tot non-profit. Andere taken zijn onder andere: documentatie schrijven over applicaties/uitleg geven over software en applicaties/ klantcontact over bestaande applicaties/applicaties optimaliseren. Bedrijfsprofiel Deze organisatie zit in de regio van Den Bosch en is een klein bedrijf. Er werken circa

Bekijk vacature »
Mathijs van der Hurk

Mathijs van der Hurk

28/06/2010 10:32:16
Quote Anchor link
Hallo,

Ik ben al een eeuwigheid aan 't prusten, maar ik wil een plaatje wat mijn server staat via PHP croppen en dan opnieuw opslaan.

Anders uitgelegd:

Plaatje heeft afmeting 120x90 pixels. Uiteindelijk moet het plaatje 120x66 pixels worden, zonder dat de verhoudingen veranderen. De bovenste 12 en onderste 12 moeten er af, en het midden moet over blijven.

Hoe krijg ik dit voor elkaar?

Groet
Mathijs
 
PHP hulp

PHP hulp

08/05/2024 11:53:54
 
TJVB tvb

TJVB tvb

28/06/2010 10:34:50
Quote Anchor link
Wat heb je al en wat is daarvan het resultaat?
 
Jan Koehoorn

Jan Koehoorn

28/06/2010 10:36:05
Quote Anchor link
Dit is een memberfunctie van mijn image-class. Die kun je zo ombouwen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
public function crop ($dst_w, $dst_h) {
    if ($dst_w > $this->w) {
        $this->set_err ('<p>Geef een breedte op, kleiner dan ' . $this->w . '</p>');
        return false;
    }

    if ($dst_h > $this->h) {
        $this->set_err ('<p>Geef een hoogte op, kleiner dan ' . $this->h . '</p>');
        return false;
    }

    if ($dst_w == $this->w && $dst_h == $this->h) {
        $this->set_err ('<p>Er valt niets te croppen, want je hebt <strong>precies</strong> de breedte en de hoogte van het plaatje opgegeven.</p>');
        return false;
    }


    $src = imagecreatefromjpeg ($this->path);
    $dst = imagecreatetruecolor ($dst_w, $dst_h);
    $src_x = ceil (($this->w - $dst_w) / 2);
    $src_y = ceil (($this->h - $dst_h) / 2);
    imagecopy ($dst, $src, 0, 0, $src_x, $src_y, $dst_w, $dst_h);
    imagejpeg ($dst, $this->path, $this->jpg_quality);
    imagedestroy ($src);
    imagedestroy ($dst);
    // membervariabelen updaten na een resize
    $this->w = $dst_w;
    $this->h = $dst_h;
    $this->set_filesize ();
}

?>
 
Niels K

Niels K

28/06/2010 10:36:16
 
Mathijs van der Hurk

Mathijs van der Hurk

28/06/2010 10:41:41
Quote Anchor link
Ik heb 't al geprobeerd met:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?
$img
= "thumbs/".$_GET['img'];

// Content type
header('Content-type: image/jpeg');

// Get new sizes
list($width, $height) = getimagesize($filename);
$newwidth = 120;
$newheight = 66;

// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($img);

// Resize
imagecopyresized($thumb, $source, 0, 33, 0, 33, $newwidth, $newheight, $width, $height);

// Output
imagejpeg($thumb);

?>


Maar dan krijg ik een keurig vraagtekentje te zien.
 
Niels K

Niels K

28/06/2010 10:43:36
Quote Anchor link
De inhoud van de link, waar ik je naar toe wees....

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php

# eigenschappen van de foto achterhalen                            
list ($Breedte, $Hoogte, $ImageType) = getimagesize ($FotoNaam);
                
# bepaald de verhouding tussen hoogte en breedte                
$ImageRatio = $Breedte / $Hoogte;
                    
    # bereken op basis van de ratio de nieuwe hoogte            
    if ($ImageRatio > 1)
    {

                                        
        $TnBreedte = $ThumbSize;
        $TnHoogte = $ThumbSize / $ImageRatio;
                                        
    }

    else
    {
                                        
        $TnHoogte = $ThumbSize;
        $TnBreedte = $ThumbSize * $ImageRatio;
                                        
    }

        
    # Lege thumbnail in het geheuge schrijven                        
    $Thumb = imagecreatetruecolor ($TnBreedte, $TnHoogte);
        
        # Afhankelijk van het type een thumbnail maken                
        switch ($ImageType)
        {
                                        
            case
IMAGETYPE_GIF:
                                            
                $Source = imagecreatefromgif ($FotoNaam);
                            
            break;
                                
            case
IMAGETYPE_JPEG:
                                            
                $Source = imagecreatefromjpeg ($FotoNaam);
                                            
            break;
                                            
            case
IMAGETYPE_PNG:
                                            
                $Source = imagecreatefrompng ($FotoNaam);
                                                
            break;
                                            
                                                            default:

                                            
                $Source = imagecreatefromgif ($FotoNaam);
                                            
            break;
                                            
        }

        
        # De foto verkleinen en kopiëren naar de thumbnail                
        imagecopyresampled ($Thumb, $Source, 0, 0, 0, 0, $TnBreedte, $TnHoogte, $Breedte, $Hoogte);
        
        # Naam van de thumbnail samenstellen                        
        $Thumbname = $UploadMap . 'thumbnails/' . 'tn_' . $_FILES['foto']['name'];
            
            # tot slot de thumbnail opslaan opnieuw afhankelijk van het type    
            switch ($ImageType)
            {
                                        
                case
IMAGETYPE_GIF:
                                            
                    imagegif ($Thumb, $Thumbname);
                                        
                break;
                                            
                case
IMAGETYPE_JPEG:
                                            
                    imagejpeg ($Thumb, $Thumbname, 100);
                                            
                break;
                                            
                case
IMAGETYPE_PNG:
                                            
                    imagepng ($Thumb, $Thumbname);
                                                
                break;
                                            
            }

                                        
                $Bericht[]  = 'Uw foto is succesvol opgeslagen in het fotoalbum!';
                                    
        }

?>


Wel even aanpassen naar je eigen zin natuurlijk
 
Mathijs van der Hurk

Mathijs van der Hurk

28/06/2010 10:47:26
Quote Anchor link
Niels Kieviet op 28/06/2010 10:43:36:
De inhoud van de link, waar ik je naar toe wees....


Wel even aanpassen naar je eigen zin natuurlijk


Het gaat me niet om uploaden, bestand staat al op de server. Het gaat me meer om dat ik de bovenste 12 en onderste 12 pixels er af knip en een nieuwe afbeelding over hou met de middelste 66.

Als ik een standaard resize gebruik, dan kan hij de afbeelding mooi verkleinen maar verdwijnen de pixels niet :-)
 
Joakim Broden

Joakim Broden

28/06/2010 10:53:05
Quote Anchor link
Ik heb de code zo niet bij de hand maar zoiets zou het kunnen zijn?:

Je maakt met PHP een afbeelding van 120*66 pixels, daar leg je de te croppen afbeeling op, precies int het midden (dmv getimagesize etc en dan height en margin etc)en dan opslaan met een formaat van 120*66 pixels? Misschien dat ik je nu op juiste spoor zet waardoor je de code nu zelf in elkaar kunt zetten?
Gewijzigd op 28/06/2010 10:54:32 door Joakim Broden
 
Niels K

Niels K

28/06/2010 10:53:50
Quote Anchor link
@Mathijs

Sorry, dan heb ik je vraag verkeerd begrepen.
 
Mathijs van der Hurk

Mathijs van der Hurk

28/06/2010 11:16:11
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?
header('Content-type: image/jpeg');

$src_image = "thumbs/".$_GET['img'];

$dst_x = 0;
$dst_y = 0;
$src_x = 0;
$src_y = 12;
$dst_w = 120;
$dst_h = 66;
$src_w = 120;
$src_h = 90;


// Bron krijgen
$dst_image = imagecreatetruecolor($dst_w,$dst_h);
$source = imagecreatefromjpeg($src_image);

imagecopyresized ($dst_image, $source, $dst_x , $dst_y , $src_x , $src_y , $dst_w , $dst_h , $src_w , $src_h );

// Output
imagejpeg($dst_image);

?>


Dit haalt in ieder geval de bovenste 12 er af.
Maar de onderste 12 laat hij zitten, en dan drukt hij het plaatje iets samen.

Hoe kan ik er voor zorgen dat die er ook af gaan?
 
Piet Verhagen

Piet Verhagen

28/06/2010 13:30:25
Quote Anchor link
Ja das een kwestie van goed je hersens erbij houden :) En als je er niet helemaal uit komt gewoon wat proberen ...

Ik gok dat $src_h 12+66 moet zijn.
 



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.