Jump to content
php.lv forumi

gMagick jpeg quality


hmnc

Recommended Posts

Sveiki,

mēģinu pāriet no gd2 uz GraphicsMagick. (kāpēc ne imagemagick - kaudze ar dependencies, smags, lēnāks, bet tas ir pavisam cits stāsts, ne šoreiz :) )

php pusē lietoju PECL gMagick (http://php.net/manual/en/book.gmagick.php), bet problēma - nekādīgi nevaru uzlikt jpeg kvalitāti, kas man ir par zemu (defaultā stāv 5, ja skatās Gmagick::COMPRESSION_JPEG). funkcijas gmagickam nav (vai neredzu), predefinēto klases constanti nomainīt nemāku (ja to var izdarīt). hardcoded configos uz servera arī īsti neatradu pašam graphicsmagickam kur var nomainīt (bet nu tas tāds ekstrēms variants, vajadzētu tomēr kaut kā kontrolēt to pasākumu caur php skriptu). gmagick izstrādātājs uz meiliem neatbild, googlē atrast nevarēju (varbūt nemācēju). varbūt kāds ir saskāries ar šādu problēmu un varētu izlīdzēt?

 

paldies!

Link to comment
Share on other sites

par gd2 daudzas reizes ātrāks vismaz uz manas sistēmas. bet nomaiņa notika tāpēc, ka gd2 (svaigākais) nez kāpēc mainīja png krāsu tonalitāti - ļoti ļoti minimāli (praktiski nepamanāmi), bet man tas bija galēji svarīgi. ar gmagick nekas tāds nav novērots. tagad ir doma pāriet vispār uz gmagick, bet redzies - problēma ar jpg...

Link to comment
Share on other sites

Paskatījos sourcē, php modulis tādu fīču nepiedāvā (ja ir luste un C iemaņas, nevajadzētu būt baisi grūti to pielikt - skat GraphicsMagick sourcē attributes f-ijas) - defaultā kvalitāte 75. Vēl tur redzēju kaut-kādu f-iju EstimateJPEGQuality, tip pie seivošanas jams tur kaut-ko pats mēģina izrēķināt.

Link to comment
Share on other sites

nav diemžēl C iemaņu..to estimatequality cik lasīju tad viņš pats kaut kā aprēķina labākai kvalitātes/performances attiecībai. bet nu par īsu man tie 75 (pietam itkā to konstanti skatoties kvalitāte ir 5. bildes izskatās vairāk uz 5 nekā 75). gd2 izmantojot lietoju 90 (faila svars ir OK un kvalitāte arī apmierinoša. zemāku liekot redzami artefaki). varbūt kaut kur pašam graphicsmagickam var hardcoded to defaulto kvalitāti pamainīt? cik skatījos ir viņam xml konfigurācijas faili, bet nekas saistīts ar jpeg kvalitāti.

 

paldies, ka iedziļinājies :)

Link to comment
Share on other sites

*) GraphicsMagick-1.3.12\coders\jpg.c

Var paprovēt EstimateJPEGQuality pašā augšā pielikt return 90; :D Vienīgi, šī f-ija tiek arī izmantota ielādējot JPEG, bet, iespējams, tas neko diži nemaina.

 

*) GraphicsMagick-1.3.12\magick\image.c

DefaultCompressionQuality = 75;

 

Tiesa gan, tik dziļi neiedziļinājos, lai pateiktu, ka šis DefaultCompressionQuality arī tiek izmantots priekš jpeg.

 

*) (void) SetImageAttribute(image,"JPEG-Quality",attribute);

Šo var pamēģināt izexportēt php modulī ;)

Edited by marrtins
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...