Search the Community
Showing results for tags 'gd'.
-
https://github.com/jurchiks/YAIL Uztaisīju pa svētdienu, jo tā klase, kura bija pieejama darbā, bija baigais spageti un galīgi neparocīga (piemēram, lai resaizotu bildi, tev bija jāuztaisa 1 objekts ar patreizējo bildi, otrs ar tukšu bildi, un tad jākopē pirmo virsū otrajai, ar roku norādot koordinātes). Nedaudz idejas pakopēju no WideImage bibliotēkas (loadFromFile/loadFromResource metožu nosaukumi), pārējais vai nu no nulles rakstīts, vai kopēts no iepriekšējās bibliotēkas ar savām izmaiņām (unsharp mask). Basic usage: require_once 'Image.class.php'; try { Image::loadFromFile('/path/to/image') ->resize(400, 400, true/* exact size */, true /* center */) // ja exact, tad bilde tiek "iefitota" 400x400 attēlā vai nu pa vidu (ja center=true), vai sākot no top left stūra. Ja nav exact, tad bilde tiek resaizota proporcionāli, lai ielīstu 400x400 rāmī ->unsharp() // uz lielām bildēm neiesaku, baigi sūdīgs performance, jo loopo cauri katram pikselim ->toJpegFile('/path/to/destination/file.jpg', 90); // alt: toPngFile() } catch (Exception $e) { error_log('image error, ' . $e->getMessage()); } Ja toJpegFile() pirmo parametru padod null, tad outputo browserī (vajag "header('Content-type: image/jpeg')", citādi izmet kā tekstu). Feedback is welcome, ja atrodat kādus bagus, būtu ļoti labi, ja pateiktu man.