Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.
V pátek 6. a sobotu 7. března proběhl v pražském sídle Nejvyššího kontrolního úřadu (NKÚ) Hackathon veřejné správy 7.1. Publikovány byly vytvořené aplikace. V kategorii projektů rozvíjených z krajského kola zvítězil tým „Mackokládi“. Čtyři středoškoláci ze Dvora Králové uspěli s aplikací KompaZ. Jde o digitálního průvodce, který pomůže s rychlou a srozumitelnou orientací v životních i krizových situacích „krok za krokem“. Aplikace
… více »QGIS, svobodný desktopový GIS, byl vydán v nové hlavní verzi 4.0. Změny zahrnují několik nových analytických a editačních funkcí, rozšíření podpory 3D, více možností úprav uživatelského rozhraní či mnoho dalších zlepšení použitelnosti. Řada 3.44 má aktualizace plánovány do září.
Dan Blanchard vydal knihovnu pro Python chardet v nové verzi 7.0.0. S novou verzí byla knihovna přelicencována z LGPL na MIT. Souhlasili s tím všichni přispěvatelé? Dan Blanchard souhlasy vůbec neřešil. Zaúkoloval umělou inteligenci (Claude), aby knihovnu zcela přepsala a výslovně jí nařídil, aby nepoužila žádný LGPL kód. Dan Blanchard tvrdí, že se jedná o clean room design. Protistrana argumentuje, že umělá inteligence byla trénována
… více »Andy Nguyen si na svou herní konzoli PlayStation 5 (PS5) pomocí exploitu Byepervisor nainstaloval Linux (Ubuntu). V Linuxu si spustil Steam a PS5 tak proměnil v Steam Machine. Na PS5 může hrát hry, které jsou vydané pouze pro PC a jsou na Steamu [Tom's Hardware].
Správce sbírky fotografií digiKam byl vydán ve verzi 9.0.0. Jedná se o větší vydání provázené aktualizacemi knihoven. Mnoho dílčích změn se vedle oprav chyb týká uživatelského rozhraní, mj. editace metadat.
Byla vydána verze 2026 distribuce programu pro počítačovou sazbu TeX s názvem TeX Live (Wikipedie). Přehled novinek v oficiální dokumentaci.
Jihokorejská Národní daňová služba (NTS) zabavila kryptoměnu Pre-retogeum (PRTG) v hodnotě 5,6 milionu dolarů. Pochlubila se v tiskové zprávě, do které vložila fotografii zabavených USB flash disků s kryptoměnovými peněženkami spolu se souvisejícími ručně napsanými mnemotechnickými obnovovacími frázemi. Krátce na to byla kryptoměna v hodnotě 4,8 milionu dolarů odcizena. O několik hodin ale vrácena, jelikož PRTG je extrémně nelikvidní, s denním objemem obchodování kolem 332 dolarů a zalistováním na jediné burze, MEXC [Bitcoin.com].
Komunita kolem Linuxu From Scratch (LFS) vydala nové verze knih s návody na instalaci vlastního linuxového systému ze zdrojových kódů Linux From Scratch 13.0 a Beyond Linux From Scratch 13.0. Pouze se systemd.
Byla vydána nová stabilní major verze 25.12 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Jedná se o nástupce předchozí major verze 24.10. Přehled novinek v poznámkách k vydání. Podporováno je více než 2200 zařízení.
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