abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:00 | Komunita

    Fedora zve na dvoudenní testování (2. a 3. prosince), během kterého si můžete vyzkoušet nové webové uživatelské rozhraní (WebUI) projektu FreeIPA. Pomozte vychytat veškeré chyby a vylepšit uživatelskou zkušenost ještě předtím, než se tato verze dostane k uživatelům Fedory a celého linuxového ekosystému.

    Ladislav Hagara | Komentářů: 1
    dnes 13:22 | IT novinky

    Eben Upton oznámil zdražení počítačů Raspberry Pi, kvůli růstu cen pamětí, a představil 1GB verzi Raspberry Pi 5 za 45 dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Humor

    Linus Torvalds na YouTube kanálu Linus Tech Tips staví dokonalý linuxový počítač.

    Ladislav Hagara | Komentářů: 6
    dnes 04:11 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.17 oznámil Linus Torvalds vydání Linuxu 6.18. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Vypíchnout lze například podporu protokolu PSP (PSP Security Protocol, PSP encryption of TCP connections).

    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | Nová verze

    Byla vydána nová stabilní verze 25.11 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Xantusia. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

    Ladislav Hagara | Komentářů: 0
    dnes 03:22 | Komunita

    Richard Hughes na Mastodonu oznámil, že se společnost Framework Computer stala sponzorem služby LVFS (Linux Vendor Firmware Service) umožňující aktualizovat firmware zařízení na počítačích s Linuxem.

    Ladislav Hagara | Komentářů: 0
    28.11. 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 18
    28.11. 12:44 | Zajímavý software

    Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.

    Ladislav Hagara | Komentářů: 13
    28.11. 12:00 | Nová verze

    Glen MacArthur vydal AV Linux (AVL) a MX Moksha (MXM) 25. S linuxovým jádrem Liquorix. AV Linux (Wikipedie) je linuxová distribuce optimalizována pro tvůrce audio a video obsahu. Nejnovější AV Linux vychází z MX Linuxu 25 a Debianu 13 Trixie. AV Linux přichází s desktopovým prostředím Enlightenment 0.27.1 a MX Moksha s prostředím Moksha 0.4.1 (fork Enlightenmentu).

    Ladislav Hagara | Komentářů: 0
    27.11. 17:55 | Nová verze

    Ubuntu pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 423 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: Zmenseni obrazku - Java

    8.8.2009 08:58 Kahler
    Zmenseni obrazku - Java
    Přečteno: 669×

    Dobry den, ve sve aplikaci zobrazuji na panel obrazky (jpg, png), pokud je obrazek tak velky, ze by se nevlezl na monitor snazim se ho zmensit timto kodem:

    source = source.getScaledInstance(300, 200, Image.SCALE_SMOOTH);
    

    Problem vsak je, ze pak se obrazek nezobrazi vubec. Hned za radkem vyse nasleduje

    int width = source.getWidth(null);
    int height = source.getHeight(null);
    

    Coz vypise

    -1
    -1
    

    Nikde jsem nenasel zadny funkci postup, vsude uvadeji tento pomoci getScaledInstance, nevite prosim kde muze byt chyba?

    Odpovědi

    kouby avatar 8.8.2009 10:51 kouby | skóre: 27 | blog: init | Praha
    Rozbalit Rozbalit vše Re: Zmenseni obrazku - Java

    Z vašeho popisu mi není moc jasné jak přesně se snažíte obrázek vyrenderovat. Zde je odkaz na návod, jak správně užít getScaledInstance(). today.java.net/pub/a/today/2007/04/03/perils-of-image-getscaledinstance.html, třeba vám to v něčem pomůže.

    That's thirty minutes away. I'll be there in ten.
    8.8.2009 11:05 Kahler
    Rozbalit Rozbalit vše Re: Zmenseni obrazku - Java

    Takze novy poznatek. Kod:

    ImageIcon imageIcon = new ImageIcon(getClass().getResource("test.jpg"));
    Image source = imageIcon.getImage();
    source = source.getScaledInstance(50, 50, Image.SCALE_SMOOTH);
    
    int width = source.getWidth(null);
    int height = source.getHeight(null);
    
    System.out.println(width);
    System.out.println(height);
    
    jButton1.setIcon(new ImageIcon(source));
    

    Tento kod, relativne funguje, obrazek se nacte, zmensi se na velikost 50x50px a zobrazi se na buttonu. Problem vsak delaji funkce getWidth a getHeight, protoze pro zmenseny obrazek vrati misto rozmeru 50 a 50 to co jsem psal vyse -1 a -1. V mem programu totiz nedavam obrazek na button tak jednoduse, ale vytvarim urcity vyrez prave na zaklade promennych width a height a jelikoz se nastavi obe na -1, je v tom pak chaos. Netusite proc tyto metody nevrati korektni rozmery?

    kouby avatar 8.8.2009 11:36 kouby | skóre: 27 | blog: init | Praha
    Rozbalit Rozbalit vše Re: Zmenseni obrazku - Java

    Obecně metoda getScaledInstance je dosti pomalá. Je možné, že v době volání těchto metod nejsou rozměry zmenšeného obrázku ještě známy.

    Můžete do kódu přidat cyklus, který bude iterovat do doby dokud nebudou rozměry známy. Například takto:

    int width = -1;
    int height = -1;
    while (width == -1 || height == -1) {
      width = image.getWidth(null);
      height = image.getHeight(null);
    }

    Samozřejmě, že toto řešení není příliš elegantní. Ale mohlo by fungovat. Ještě by možná bylo vhodné cyklus

    korektně ukončit, pokud se šířku a výšku nepodaří zjistit.

     

    That's thirty minutes away. I'll be there in ten.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.