<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>image rotation on Conholdate Blog</title>
    <link>https://blog-qa.conholdate.com/pl/tag/image-rotation/</link>
    <description>Recent content in image rotation on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>pl</language>
    <lastBuildDate>Wed, 07 Oct 2026 17:53:30 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/pl/tag/image-rotation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Obróć obraz w Javie</title>
      <link>https://blog-qa.conholdate.com/pl/total/rotate-image-in-java/</link>
      <pubDate>Wed, 07 Oct 2026 17:53:30 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/pl/total/rotate-image-in-java/</guid>
      <description>Dowiedz się, jak obracać obrazy PNG i JPG w Javie przy użyciu Conholdate.Total for Java. Ten przewodnik przeprowadza przez konfigurację, przykład kodu i opcje obrotu.</description>
      <content:encoded><![CDATA[<p>Programowe obracanie obrazów jest częstą potrzebą przy tworzeniu generatorów podglądu, edytorów zdjęć lub przepływów pracy z dokumentami. <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> zapewnia solidny SDK, który ułatwia manipulację obrazami w aplikacjach Java. W tym przewodniku dowiesz się, jak obracać pliki <a href="https://docs.fileformat.com/image/png/">PNG</a> i <a href="https://docs.fileformat.com/image/jpg/">JPG</a>, konfigurować parametry obrotu oraz zachować metadane, jednocześnie utrzymując wysoką jakość obrazu.</p>
<h2 id="przygotowanie-środowiska---wymagania-wstępne-i-konfiguracja">Przygotowanie środowiska - Wymagania wstępne i konfiguracja</h2>
<p>Zanim rozpoczniesz, upewnij się, że masz następujące:</p>
<ul>
<li>Zainstalowany Java 17 lub nowszy.</li>
<li>IDE, takie jak IntelliJ IDEA lub Eclipse.</li>
<li>Maven do zarządzania zależnościami.</li>
</ul>
<p>Dodaj repozytorium Maven Conholdate oraz zależność SDK do swojego <code>pom.xml</code>:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#f92672">&lt;repositories&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;repository&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;id&gt;</span>conholdate-repo<span style="color:#f92672">&lt;/id&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;name&gt;</span>Conholdate Maven Repository<span style="color:#f92672">&lt;/name&gt;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">&lt;url&gt;</span>https://repository.conholdate.com/repo/<span style="color:#f92672">&lt;/url&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;/repository&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/repositories&gt;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;dependency&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;groupId&gt;</span>com.conholdate<span style="color:#f92672">&lt;/groupId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;artifactId&gt;</span>conholdate-total<span style="color:#f92672">&lt;/artifactId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;version&gt;</span>24.9<span style="color:#f92672">&lt;/version&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;type&gt;</span>pom<span style="color:#f92672">&lt;/type&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/dependency&gt;</span>
</span></span></code></pre></div><p>Pobierz najnowsze pliki binarne SDK ze strony oficjalnej pobierania: <a href="https://releases.conholdate.com/total/java/">Conholdate.Total for Java Download</a>. Po rozwiązaniu zależności jesteś gotowy napisać kod, który obraca obrazy.</p>
<h2 id="obrócenie-obrazu-w-javie-krok-po-kroku">Obrócenie obrazu w Javie: krok po kroku</h2>
<h3 id="krok-1-załaduj-ścieżki-źródłowe-i-docelowe">Krok 1: Załaduj ścieżki źródłowe i docelowe</h3>
<p>Zdefiniuj lokalizacje plików wejściowych i wyjściowych. SDK obsługuje zarówno formaty PNG, jak i JPG.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>String inputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.jpg&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>String outputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output_rotated.jpg&#34;</span><span style="color:#f92672">;</span>
</span></span></code></pre></div><h3 id="krok-2-inicjalizacja-obsługi-konwersji-i-opcji">Krok 2: Inicjalizacja obsługi konwersji i opcji</h3>
<p>Utwórz podstawowe obiekty, które sterują procesem konwersji.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>ConversionHandler handler <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ConversionHandler<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>ImageConvertOptions options <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ImageConvertOptions<span style="color:#f92672">();</span>
</span></span></code></pre></div><h3 id="krok-3-ustaw-kąt-obrotu-i-kolor-tła">Krok 3: Ustaw kąt obrotu i kolor tła</h3>
<p>Określ, o ile stopni obrócić obraz oraz kolor wypełnienia pustych narożników.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>options<span style="color:#f92672">.</span><span style="color:#a6e22e">setRotateAngle</span><span style="color:#f92672">(</span>90<span style="color:#f92672">);</span>               <span style="color:#75715e">// Rotate 90 degrees clockwise
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>options<span style="color:#f92672">.</span><span style="color:#a6e22e">setBackgroundColor</span><span style="color:#f92672">(</span>Color<span style="color:#f92672">.</span><span style="color:#a6e22e">WHITE</span><span style="color:#f92672">);</span>  <span style="color:#75715e">// Fill empty space with white
</span></span></span></code></pre></div><h3 id="krok-4-skonfiguruj-dodatkowe-parametry">Krok 4: Skonfiguruj dodatkowe parametry</h3>
<p>Zachowaj oryginalne metadane i określ jakość <a href="https://docs.fileformat.com/image/jpeg/">JPEG</a> gdy wyjściem jest JPG.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>options<span style="color:#f92672">.</span><span style="color:#a6e22e">setPreserveMetadata</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>options<span style="color:#f92672">.</span><span style="color:#a6e22e">setQuality</span><span style="color:#f92672">(</span>90<span style="color:#f92672">);</span> <span style="color:#75715e">// JPEG quality (0‑100)
</span></span></span></code></pre></div><h3 id="krok-5-wykonaj-rotację">Krok 5: Wykonaj rotację</h3>
<p>Wywołaj metodę <code>convert</code>, aby zastosować rotację i zapisać wynik.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>handler<span style="color:#f92672">.</span><span style="color:#a6e22e">convert</span><span style="color:#f92672">(</span>inputPath<span style="color:#f92672">,</span> outputPath<span style="color:#f92672">,</span> options<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>System<span style="color:#f92672">.</span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Image rotated successfully: &#34;</span> <span style="color:#f92672">+</span> outputPath<span style="color:#f92672">);</span>
</span></span></code></pre></div><p>Aby uzyskać więcej informacji na temat klasy <code>ConversionHandler</code>, odwołaj się do <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/ConversionHandler.html">oficjalnej dokumentacji API</a>.</p>
<h2 id="pełny-przykład-kodu-obrócenie-obrazu-w-javie-przy-użyciu-conholdatetotal">Pełny przykład kodu: Obrócenie obrazu w Javie przy użyciu Conholdate.Total</h2>
<p>Poniższy przykład demonstruje pełny przepływ pracy dla obracania pliku obrazu.</p>
<p>Ten przykład pokazuje, jak obrócić obraz JPG o 90 stopni i zapisać wynik.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.conversion.ConversionHandler<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.conversion.options.convert.ImageConvertOptions<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.awt.Color<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">RotateImageExample</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">public</span> <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">main</span><span style="color:#f92672">(</span>String<span style="color:#f92672">[]</span> args<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        String inputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.jpg&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>        String outputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output_rotated.jpg&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">try</span> <span style="color:#f92672">(</span>ConversionHandler handler <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ConversionHandler<span style="color:#f92672">())</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            ImageConvertOptions options <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ImageConvertOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Rotation angle in degrees (positive = clockwise)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            options<span style="color:#f92672">.</span><span style="color:#a6e22e">setRotateAngle</span><span style="color:#f92672">(</span>90<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Background color for empty areas after rotation
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            options<span style="color:#f92672">.</span><span style="color:#a6e22e">setBackgroundColor</span><span style="color:#f92672">(</span>Color<span style="color:#f92672">.</span><span style="color:#a6e22e">WHITE</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Preserve original metadata (EXIF, DPI, etc.)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            options<span style="color:#f92672">.</span><span style="color:#a6e22e">setPreserveMetadata</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Optional: for large images you can limit memory usage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            options<span style="color:#f92672">.</span><span style="color:#a6e22e">setQuality</span><span style="color:#f92672">(</span>90<span style="color:#f92672">);</span> <span style="color:#75715e">// JPEG quality (0-100)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span>handler<span style="color:#f92672">.</span><span style="color:#a6e22e">convert</span><span style="color:#f92672">(</span>inputPath<span style="color:#f92672">,</span> outputPath<span style="color:#f92672">,</span> options<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            System<span style="color:#f92672">.</span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Image rotated successfully: &#34;</span> <span style="color:#f92672">+</span> outputPath<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span> <span style="color:#66d9ef">catch</span> <span style="color:#f92672">(</span>Exception e<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            System<span style="color:#f92672">.</span><span style="color:#a6e22e">err</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Error during image rotation:&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            e<span style="color:#f92672">.</span><span style="color:#a6e22e">printStackTrace</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><blockquote>
<p><strong>Uwaga:</strong> Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś wszystkie ścieżki plików i wartości konfiguracyjne, aby odpowiadały rzeczywistemu środowisku, sprawdź, czy wszystkie wymagane zależności są prawidłowo zainstalowane, oraz dokładnie przetestuj w środowisku deweloperskim. Jeśli napotkasz jakiekolwiek problemy, odwołaj się do <a href="https://docs.conholdate.com/java/">oficjalnej dokumentacji</a> lub skontaktuj się z <a href="https://forum.conholdate.com/c/total/5">zespołem wsparcia</a> w celu uzyskania pomocy.</p>
</blockquote>
<h2 id="parametry-obrotu-opcje-i-ustawienia">Parametry obrotu: Opcje i ustawienia</h2>
<p>SDK oferuje kilka opcji, aby precyzyjnie dostroić proces rotacji.</p>
<ul>
<li><strong>Rotate Angle</strong> - Określa, o ile stopni obraz jest obrócony. Dodatnie wartości obracają zgodnie z ruchem wskazówek zegara.</li>
</ul>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>options<span style="color:#f92672">.</span><span style="color:#a6e22e">setRotateAngle</span><span style="color:#f92672">(</span>90<span style="color:#f92672">);</span>
</span></span></code></pre></div><ul>
<li>
<p><strong>Background Color</strong> - Ustawia kolor wypełnienia dla pustych narożników, które pojawiają się po obróceniu. Użyj dowolnej wartości <code>java.awt.Color</code>.</p>
</li>
<li>
<p><strong>Zachowaj metadane</strong> - Gdy włączone, dane <a href="https://docs.fileformat.com/image/exif/">EXIF</a> , DPI i inne metadane są zachowywane w pliku wyjściowym. Zobacz <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/options/convert/ImageConvertOptions.html">ImageConvertOptions API</a> po więcej szczegółów.</p>
</li>
<li>
<p><strong>Quality</strong> - Kontroluje jakość kompresji JPEG (0‑100). Wyższe wartości zachowują więcej szczegółów, ale zwiększają rozmiar pliku.</p>
</li>
</ul>
<p>Dostosuj te ustawienia do wymagań swojej aplikacji, niezależnie od tego, czy potrzebujesz bezstratnego wyjścia PNG, czy wysokiej jakości wyników JPG.</p>
<h2 id="podsumowanie">Podsumowanie</h2>
<p>Obracanie obrazów w Javie jest proste, gdy używasz Conholdate.Total for Java. Ten przewodnik poprowadził Cię przez niezbędną konfigurację, szczegółową implementację krok po kroku oraz kluczowe opcje konfiguracyjne, które pozwalają kontrolować kąt, tło, zachowanie metadanych i jakość wyjścia. Pamiętaj, aby uzyskać odpowiednią licencję do wdrożeń produkcyjnych; możesz zapoznać się z opcjami cenowymi pod adresem <a href="https://purchase.conholdate.com/pricing/total/family/">https://purchase.conholdate.com/pricing/total/family/</a> lub uzyskać tymczasową licencję do testów pod adresem <a href="https://purchase.conholdate.com/temporary-license/">https://purchase.conholdate.com/temporary-license/</a>. Po zintegrowaniu SDK możesz dodać niezawodne obracanie obrazów do dowolnego przepływu pracy opartego na Javie.</p>
<h2 id="najczęściej-zadawane-pytania">Najczęściej zadawane pytania</h2>
<ul>
<li>
<p><strong>Jak obrócić plik obrazu w Javie przy użyciu Conholdate.Total?</strong><br>
Użyj klasy <code>ImageConvertOptions</code>, aby ustawić żądany kąt obrotu, a następnie wywołaj <code>handler.convert(inputPath, outputPath, options)</code> tak, jak pokazano w powyższych przykładach.</p>
</li>
<li>
<p><strong>Czy mogę obracać zarówno obrazy PNG, jak i JPG tym samym kodem?</strong><br>
Tak, SDK automatycznie wykrywa format źródłowy. Podaj prawidłowe rozszerzenie pliku w ścieżce wejściowej, a ten sam kod będzie działał zarówno dla PNG, jak i JPG.</p>
</li>
<li>
<p><strong>Jakie opcje są dostępne do dostosowania procesu rotacji?</strong><br>
Możesz dostosować kąt obrotu, kolor tła, jakość wyjścia oraz wybrać, czy zachować metadane. Zapoznaj się z <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/options/convert/ImageConvertOptions.html">ImageConvertOptions API</a>, aby zobaczyć pełną listę.</p>
</li>
<li>
<p><strong>Czy potrzebuję licencji, aby używać tej funkcji w produkcji?</strong><br>
Ważna licencja jest wymagana do użytku produkcyjnego. Uzyskaj tymczasową licencję do oceny pod adresem <a href="https://purchase.conholdate.com/temporary-license/">https://purchase.conholdate.com/temporary-license/</a> lub zobacz pełne informacje o cenach pod adresem <a href="https://purchase.conholdate.com/pricing/total/family/">https://purchase.conholdate.com/pricing/total/family/</a>.</p>
</li>
</ul>
<h2 id="czytaj-więcej">Czytaj więcej</h2>
<ul>
<li><a href="https://blog.conholdate.com/pl/total/convert-onenote-to-image-in-java/">Konwertuj Onenote na obraz w Javie</a></li>
<li><a href="https://blog.conholdate.com/pl/total/convert-excel-to-image-in-java/">Konwertuj Excel na obraz w Javie</a></li>
<li><a href="https://blog.conholdate.com/pl/total/convert-word-to-image-in-java/">Konwertuj Word na obraz w Javie</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
