Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.
McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.
Byla vydána (𝕏) červnová aktualizace aneb nová verze 1.102 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.102 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.
Byla vydána nová verze 2.4.64 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 8 bezpečnostních chyb.
Společnost xAI na síti 𝕏 představila Grok 4, tj. novou verzi svého AI LLM modelu Grok.
Ministerstvo vnitra odhalilo závažný kyberincident v IT systému resortu. Systém, do kterého se dostal útočník bez oprávnění, byl odpojen a nedošlo k odcizení dat [𝕏].
Před rokem byla streamovací služba HBO Max přejmenována na Max. Dle managementu slovo HBO v názvu nebylo důležité. Včera byl Max přejmenován zpět na HBO Max. Kolik milionů dolarů to stálo? 😂
Byla vydána nová major verze 8.0.0 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata (Wikipedie). Přehled novinek v oficiálním oznámení a v aktualizované dokumentaci.
Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.4. Přehled novinek s náhledy a videi v oznámení na blogu.
Instituce státní správy nebudou smět využívat produkty, aplikace, řešení, webové stránky a webové služby poskytované čínskou společností DeepSeek. Na doporučení Národního úřadu pro kybernetickou a informační bezpečnost rozhodla o jejich zákazu vláda Petra Fialy na jednání ve středu 9. července 2025.
function transform_image( Imagick $image, $width ){
$xSize = $image->getImageWidth();
$ySize = $image->getImageHeight();
$imgWidth = $width*0.8;
$ratio = (float)$xSize / (float) $imgWidth;
$imgHeight = $ySize / $ratio;
$image->scaleImage( $imgWidth, $imgHeight );
$image->setImageFormat( "png" );
$draw = new ImagickDraw();
//obrázek "maska"
$maska = new Imagick();
// průsvitná bílá, nyní jen pro barvu pozadí nového maskovacího obrázku
$maska->newImage( $imgWidth, $imgHeight, new ImagickPixel("rgba( 100%, 100%, 100%, 0 )"), 'png' );
//trocha počítání ....
//počet kroků a "tloušťka" rozpliznutí
$step=2; $steps = 20;
//rozplizávací čáru trochu tlustší
$draw->setStrokeWidth( $step +2 );
//střed obrázku
$icx = $imgWidth/2;
$icy = $imgHeight/2;
//parametry centrální elipsy, která označí oblast 100% viditelnosti a nechá prostor pro rozpliznutí
$iw = $imgWidth-(2*$steps*$step);
$ih = $imgHeight-(2*$steps*$step);
//poloměry centrální elipsy
$iw2 = $iw/2;
$ih2 = $ih/2;
// setFillOpacity na elipsu nefunguje
$draw->setFillColor( new ImagickPixel( "rgba( 0%, 10%, 10%, 0 )" ) );
//elipsy tvořím od kraje "dovnitř"
for($i=$steps; $i>0 ;$i-- ){
$o = 1-(float)($i/$steps) ;
$draw->setStrokeColor( new ImagickPixel("rgba( 0%, 0%, 0%, $o )") );
$draw->ellipse( $icx, $icy, $iw2+$i*$step, $ih2+$i*$step, 0, 360 );
}
//a poslední "plnou" elipsu uvnitř
$strokecolor->setColor( "rgba( 0%, 0%, 0%, 1 )" );
$draw->setStrokeColor( $strokecolor );
//$draw->setFillOpacity( 1 ); setFillOpacity pro elipsu nefunguje (?), musí se nastavit v setFillColor
$draw->setFillColor( new ImagickPixel( 'black' ) );
$draw->ellipse( $icx, $icy, $iw2, $ih2, 0, 360 );
//vykreslíme masku - vznikne elipsa s rozplizlými okraji
$maska->drawImage( $draw );
// a na původní obrázek naneseme masku průhlednosti --- neptejte se mně jak to funguje, byl to google - pokus - omyl pořád dokolečka, až se povedlo
$image->compositeImage( $maska,Imagick::COMPOSITE_COPYOPACITY, 0, 0 );
// a šup s nim ven
header('Content-Type: image/'.$image->getImageFormat());
$a = $image->getImageBlob(); //přímý výstup nefungoval, nevím proč .. obrázek měl vždy 0 B
//trigger_error( 'Dělka obrázku: '.strlen( $a ) );
echo $a;
die();
}
Tiskni
Sdílej:
Takovéto věci CSS nikdy neuděláCo, inset box-shadow nebo border-radius?
<span class="blur-img"> <img src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/72/Ear-Spot_Squirrel.jpg/1200px-Ear-Spot_Squirrel.jpg"> </span>
.blur-img { box-sizing: border-box; display: block; width: 50%; margin: 10% auto; border-radius: 50%; box-shadow: inset 0px 0px 20px 20px #fff, inset 0px 0px 20px 20px #fff; overflow: hidden; position: relative; } .blur-img img { box-sizing: border-box; width: 100%; display: block; border-radius: 50%; border: 2px solid #fff; position: relative; z-index: -1; }Výsledek: https://jsfiddle.net/09maztw7/ Na komplikovanější věci by se asi dalo použít SVG. Případně CSS filtry. Stejně ale musí na serveru pořešit zmenšení obrázku na správnou velikost. Přikreslení rámečku už je drobnost.
Jak vyříznout z obrázku elipsoid a rozpliznout tomu okraje - pokusCo tak pouzit Cairo? Priklady ako vlastne kniznica logika jednoducho funguje. A verzia pre PHP.
$draw->setFillColor( new ImagickPixel( "rgba( 0%, 0%, 0%, 1 )" ) );
$draw->ellipse( $icx, $icy, $iw2, $ih2, 0, 360 );
$maska->drawImage( $draw );
$maska->blurImage( $step*$steps, $steps );
dostávám to rozostření krásně hladké.
Masku ještě uložím do souboru a pak jen načtu a přeškáluji na potřebný rozměr a aplikuji. Celé generování trvá 0.24s, což už je schůdné.
Ten blur totiž docela trvá, a pokud jsem u prvního parametru odhadl "co a jak" ten druhý jsem prostě jen náhodně nastavil, nevím, jaký má přesně účel. Asi "sílu" rozmazání, nevím.
Díky za popostrčení.
tak vono ten imagick umi to stejny co browser a asi i vice, spis je otazka jestli to fakt resit. Chce to na web tak, bych na to pouzil fakt to css
https://css-tricks.com/clipping-masking-css/
https://codepen.io/chriscoyier/pen/41d6e36ac584ee0401064d1cdb88fc67
^ jen si pohrej s rx="45%" u masky a mas dost podobnej efekt tomu cemu se snazis docilit