<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" />
<head itemscope itemtype="http://schema.org/Article">
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta itemprop="name" content="Stiahnuť Apache OpenOffice" />
  <meta itemprop="description" content="Pridajte sa k OpenOffice revolúcii, slobodný kancelársky balík stiahnutý viac ako 125 miliónov-krát." />
  <meta itemprop="image" content="http://www.openoffice.org/images/aoo-logo-100x100.png" />
  <meta property="og:title" content="Stiahnuť Apache OpenOffice" />
  <meta property="og:description" content="Pridajte sa k OpenOffice revolúcii, slobodný kancelársky balík stiahnutý viac ako 125 miliónov-krát." />
  <meta property="og:image" content="http://www.openoffice.org/images/aoo-logo-100x100.png" />
  <meta name="description" content="Oficiálna stránka pre stiahnutie Apache OpenOffice. Pridajte sa k OpenOffice revolúcii, slobodný kancelársky balík stiahnutý viac ako 125 miliónov-krát." />
  <title>Stiahnuť Apache OpenOffice - Oficiálna stránka</title>
  <script type="text/javascript" src="../../download/globalvars.js"></script>
  <script type="text/javascript" src="msg_prop_l10n_sk.js"></script>
  <script type="text/javascript" src="../../download/languages.js"></script>
  <script type="text/javascript" src="../../download/release_matrix.js"></script>
  <script type="text/javascript" src="../../download/boxed_download.js"></script>
  <script type="text/javascript" src="../../download/download.js"></script>
  <style type="text/css">
  /* <![CDATA[ */
  /*-------------------- Exceptions on standard css -----------------------*/
  @import "../../download/styles.css";
  @import "../../download/exceptions.css";
  /* ]]> */
  </style>
  <script>
    if ( window.document.referrer.indexOf( "shell.windows.com" ) != -1 ) {
       location.href = "/why/why_odf.html";
    }

    function share( platform ) {
      // _gaq.push( ['_trackEvent', 'social', 'shareDownload', platform] ); 

      if ( platform == 'apacheblog' ) {
        window.open( 'http://blogs.apache.org/OOo/', '_blank' );
      } else if ( platform == 'facebook' ) {
        window.open( 'http://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.openoffice.org%2Fsk%2Fdownload%2F', '_blank', 'toolbar=0, status=0, width=580, height=325' );
      } else if ( platform == 'twitter' ) {
        window.open( 'http://twitter.com/intent/tweet?url=http%3A%2F%2Fwww.openoffice.org%2Fsk%2Fdownload%2F&text=Join+the+OpenOffice+revolution%2C+the+free+office+productivity+suite+with+over+100+million+trusted+downloads.', '_blank', 'toolbar=0, status=0, width=580, height=325' );
      } else if ( platform == 'google+' ) {
        window.open( 'http://plus.google.com/share?url=http%3A%2F%2Fwww.openoffice.org%2Fsk%2Fdownload%2F', '_blank', 'toolbar=0, status=0, width=580, height=325' );
      }
    }
  </script>
</head>

<body>

<div class="optionset">

  <!-- Green: Stable release -->
  <!-- Text above the first colored box -->
  <script type="text/javascript">
  <!--
  // The text in the H1 tag is intentionally shown as "display: none" (do not display).
  // This is to please accessibility tools like a screen reader.
  document.write( "<h1 style='display: none;'>" + l10n.dl_headline_text + "</h1>" );
  //-->
  </script>

  <!-- Download via select boxes -->
  <script type="text/javascript">
  <!--

  // Set a specific language ISO code to force to assemble a certain localized build as download link.
  // Changed: The variable can now be found in the "msg_prop_l10n_<ISO_code>.js".

  // Get the download box from a separate file.
  DL.createDownloadBox();

  // Fill the select boxes and wait for the user's choice.
  DL.init( 1 );

    //  entourage.initialize();

  //-->
  </script>

  <!-- Green: Stable release: No JavaScript enabled -->
  <noscript>
  <div class="first button green-sel" id="optionitem2">
    <div class="green-sel-icon"></div>
    <h2>
      <a>Stiahnuť Apache OpenOffice</a>
    </h2>
    <p>
      <a href="http://www.apache.org/dyn/aoo-closer.cgi/openoffice/"
        title="Vyberte si z všetkých platforiem, jazykov, jazykových balíčkov dostupných na stiahnutie">Vyzerá, že váš
        prehliadač nepovoľuje JavaScript na webstránkach. Na tejto stránke je tento spôsob použitý pre poskytnutie
        odkazu na stiahnutie. Ak si chcete stiahnuť Apache OpenOffice, kliknite sem na prechod na stránku
        alternatívneho spôsobu stiahnutia a preskočíte túto stránku.
        Ospravedlňujeme sa pre vzniknuté nepríjemnosti.
      </a>
    </p>
  </div>
  <div class="sub-green-sel">
    <p>
      <a href="../../../porting/index.html"
        title="Získať Apache OpenOffice softvér ako prenosnú USB verziu alebo ako porty tretích strán">
        <b>Prenosné USB verzie</b> a porty tretích strán
      </a> |
      <a href="../../../development/releases/index.html" title="Čo je nové a čo bolo zlepšené v Apache OpenOffice?">
        <b>Poznámky k vydaniu</b>
      </a> |
      <br />
      <a href="../../download/other-341.html" title="Získať starú verziu Apache OpenOffice">Starý Apache OpenOffice</a> |
      <a href="../../downlaod/legacy/index.html" title="Získať zastaralú verziu OpenOffice.org">
        Zastaralý OpenOffice.org
      </a>
    </p>
  </div>
  </noscript>

  <!-- Light Blue: Share download with social networks -->
  <div class="button lightblue" id="optionitem4">
    <div class="lightblue-icon"></div>
    <h2><a style="cursor: default;" title="Pomôžte šíriť Apache OpenOffice a povedzte o ňom svojím priateľom">
    Pomôžte šíriť</a></h2>
    <p style="cursor: default;" id="ShareDownloadLinks">
    <a style="cursor: default;" title="Pomôžte šíriť Apache OpenOffice a povedzte o ňom svojím priateľom">
    Prosím povedzte svojím priateľom o Apache OpenOffice.</a>
    <a style="display: inline; padding: 0 5px 0 30px;" href="javascript:share( \"facebook\" )"
    title="Prosím povedzte svojím priateľom o Apache OpenOffice cez Facebook">
    <img src="../../images/logo-facebook-32.png" alt="Prosím povedzte svojím priateľom o Apache OpenOffice cez Facebook" /></a>
    <a style="display: inline; padding: 0 5px;" href="javascript:share( \"twitter\" )"
    title="Prosím povedzte svojím priateľom o Apache OpenOffice cez Twitter">
    <img src="../../images/logo-twitter-32.png" alt="Prosím povedzte svojím priateľom o Apache OpenOffice cez Twitter" /></a>
    <a style="display: inline; padding: 0 5px;" href="javascript:share( \"google+\" )"
    title="Prosím povedzte svojím priateľom o Apache OpenOffice cez Google+">
    <img src="../../images/logo-googleplus-32.png" alt="Prosím povedzte svojím priateľom o Apache OpenOffice cez Google+" /></a>
    </p>
  </div>

  <!-- Blue: Extensions -->
  <div class="button blue" id="optionitem5" onclick="openItem('optionitem3','http://extensions.openoffice.org');
    return false;">
    <div class="blue-icon"></div>
    <h2><a href="http://extensions.openoffice.org"
    title="Vyberte si zo širokej škály prídavných a originálnych funkcií">
    Získať Apache OpenOffice rozšírenia a slovníky</a></h2>
    <p><a href="http://extensions.openoffice.org"
    title="Vyberte si zo širokej škály prídavných a originálnych funkcií">
    Rozšírte funkcie svojho Apache OpenOffice s veľkou a stále sa rozrastajúcou knižnicou rozšírení a slovníkov od ostatných používateľov.</a></p>
  </div>

  <!-- Blue: Templates -->
  <div class="button blue" id="optionitem6" onclick="openItem('optionitem3_1','http://templates.openoffice.org');
    return false;">
    <div class="blue-icon"></div>
    <h2><a href="http://templates.openoffice.org"
    title="Vyberte si zo širokej škály prídavných a originálnych dokumentov">
    Získať Apache OpenOffice šablóny</a></h2>
    <p><a href="http://templates.openoffice.org"
    title="Vyberte si zo širokej škály prídavných a originálnych dokumentov">
    Rozšírte kreativitu svojho Apache OpenOffice s veľkou a stále sa rozrastajúcou knižnicou šablón od ostatných používateľov.</a></p>
  </div>

</div><!-- class "optionset" -->

<div class="additionalinformation">

  <h2>Ďalšie informácie</h2>
  <ul>
    <li><a href="../../license.html"
    title="Apache OpenOffice Licencia">Licencia</a></li>
    <li><a href="../../download/other.html#source"
    title="Pre vývojárov a profesionálov: Získať zdrojový kód Apache OpenOffice a skompilovať ho od nuly.">Zdrojový kód</a>
    <li><a href="http://wiki.openoffice.org/wiki/Documentation/Building_Guide_AOO"
    title="Pre vývojárov a profesionálov: Príručka ako skomilovať Apache OpenOffice od nuly.">Príručka ku kompilácii</a></li>
    <li><a href="../../stats/index.html"
    title="Štatistiky o stiahnutiach a inom">Štatistiky stiahnutí</a></li>
  </ul>

  <h3>Dokumentácia</h3>
  <ul>
    <li><a href="https://cwiki.apache.org/confluence/display/OOOUSERS/Releases"
    title="Kedy sú plánované nové vydania?">Aktuálny plán vydaní</a></li>
    <li><a href="http://wiki.services.openoffice.org/wiki/Product_Release"
    title="Kedy boli naplánované staré vydania?">Historický plán vydaní</a></li>
    <li><a href="../../development/releases/index.html"
    title="Čo je nové, čo bolo zlepšené v Apache OpenOffice?">Poznámky k vydaniu</a></li>
    <li><a href="../../download/checksums.html"
    title="Ako overiť stiahnutý súbor pomocou podpisov a odtlačkov?">Overiť stiahnutý súbor</a></li>
    <li><a href="../product/index.html"
    title="Prehliadka všetkých Apache OpenOffice aplikácií">Informácie o produkte</a></li>
    <li><a href="../../dev_docs/source/sys_reqs_aoo40.html"
    title="HDD: voľných ~300MB - RAM pamäť: &gt;128MB - Procesor: &gt;500MHz - OS: Win, Linux, Mac OS, Solaris, FreeBSD...">
    Systémové požiadavky</a></li>
    <li><a href="../../download/common/instructions.html"
    title="Inštrukcie pre inštaláciu Apache OpenOffice na Windows, Linux a Mac OS strojoch">Inštalačná príručka</a> a
    <a href="../../documentation/index.html"
    title="Rozsiahly používateľský manuál pre každodenné použitie">Používateľská príručka</a></li>
    <li><a href="../../development/releases/eol.html"
    title="Informácie o vydaniach, ktoré dosiahly stav End-Of-Life">End-Of-Life informácie</a></li>
    <li><a href="../../support/index.html"
    title="Ak vám vyššie uvedené informácie nedali odpoveď na vašu otázku: Podpora platená aj zadarmo!">Podpora</a></li>
    <li><a href="../../download/common/java.html"
    title="Vysvetluje prečo použiť Java a čo to je">Java a Apache OpenOffice</a></li>
    <!--<li><a href="http://java.com/en/download/manual_v6.jsp"
    title="Get the Java Runtime Environment (JRE 1.6)">Get the Java Runtime Environment (JRE 1.6)</a></li>-->
  </ul>

  <h3>Ďalšie zdroje</h3>
  <ul>
    <li><a href="http://extensions.openoffice.org/en/search?query=dictionaries"
    title="Pridajte podporu ďalšieho jazyka do vašej Apache OpenOffice inštalácie">Slovníky</a></li>
    <li><a href="http://templates.openoffice.org"
    title="Získajte náskok s Apache OpenOffice">Šablóny</a></li>
    <li><a href="http://extensions.openoffice.org"
    title="Vyberte si zo širokej škály prídavných a originálnych funkcií">Rozšírenia</a></li>
    <li><a href="http://openoffice.apache.org/native-lang.html"
    title="Informácie a podpora vo vašom obľúbenom jazyku">Lokalizácie</a></li>
    <li><a href="../../download/sdk/index.html"
    title="Pre vývojárov: Software Development Kit">Software Development Kit (SDK)</a></li>
    <!--
    <li><a href="../distribution/index.html"
    title="FAQ for distributions ">Distributions FAQ</a></li>
    <li><a href="../distribution/cdrom/iso_download.html"
    title="Download OpenOffice.org as ISO file and burn it yourself on CD-ROM">ISO images</a> and
    <a href="../distribution/cdrom/index.html#cdrom"
    title="If you cannot download OpenOffice.org, order a CD-ROM">Order CD-ROM</a>
    <li><a href="../distribution/mirrors#mirrors"
    title="To get alternative download locations">All Mirror Server</a><br /></li>
    -->
    <li><a href="http://www.apache.org/dyn/closer.lua/openoffice/"
    title="Použiť Apache zrkadlá na stiahnutie Apache OpenOffice">Alternatívne zrkadlá pre stiahnutie</a><br /></li>
    <li><a href="../../download/archive.html"
    title="Stiahnuť zastaralé a archivované vydania">Archivované a zastaralé vydania</a><br /></li>
  </ul>

  <div id="SupportedAndSupporters">
    <p>&nbsp;</p>
    <a href="http://validator.w3.org/check?uri=referer" target="_blank"
    title="W3C Markup Validation Service - Check the markup (HTML, XHTML, ...) of Web documents">
    <img src="../../images/valid-xhtml10-blue.png"
    alt="W3C Markup Validation Service - Check the markup (HTML, XHTML, ...) of Web documents" /></a>
  </div>
</div> <!-- class: additionalinformation -->

</body>
</html>

