<?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/ru/tag/image-rotation/</link>
    <description>Recent content in image rotation on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>ru</language>
    <lastBuildDate>Wed, 07 Oct 2026 17:53:30 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/ru/tag/image-rotation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Поворот изображения в Java</title>
      <link>https://blog-qa.conholdate.com/ru/total/rotate-image-in-java/</link>
      <pubDate>Wed, 07 Oct 2026 17:53:30 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/ru/total/rotate-image-in-java/</guid>
      <description>Узнайте, как вращать PNG и JPG изображения в Java с помощью Conholdate.Total for Java. Это руководство охватывает настройку, пример кода и варианты вращения.</description>
      <content:encoded><![CDATA[<p>Поворот изображений программно — частая необходимость при создании генераторов превью, фоторедакторов или документооборотов. <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> предоставляет мощный SDK, который упрощает работу с изображениями в Java‑приложениях. В этом руководстве вы узнаете, как поворачивать файлы <a href="https://docs.fileformat.com/image/png/">PNG</a> и <a href="https://docs.fileformat.com/image/jpg/">JPG</a>, настраивать параметры вращения и сохранять метаданные, при этом поддерживая высокое качество изображения.</p>
<h2 id="подготовка-среды--предпосылки-и-настройка">Подготовка среды — Предпосылки и настройка</h2>
<p>Прежде чем начать, убедитесь, что у вас есть следующее:</p>
<ul>
<li>Установлен Java 17 или новее.</li>
<li>IDE, такая как IntelliJ IDEA или Eclipse.</li>
<li>Maven для управления зависимостями.</li>
</ul>
<p>Добавьте Conholdate Maven repository и зависимость SDK в ваш <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>Скачайте последние бинарные файлы SDK с официальной страницы загрузки: <a href="https://releases.conholdate.com/total/java/">Conholdate.Total for Java Скачать</a>. После того как зависимости будут разрешены, вы готовы писать код, который вращает изображения.</p>
<h2 id="поворот-изображения-в-java-пошаговое-руководство">Поворот изображения в Java: пошаговое руководство</h2>
<h3 id="шаг-1-загрузка-исходного-и-целевого-путей">Шаг 1: Загрузка исходного и целевого путей</h3>
<p>Определите расположения входного и выходного файлов. SDK работает с форматами PNG и 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="шаг-2-инициализация-обработчика-конвертации-и-параметров">Шаг 2: Инициализация обработчика конвертации и параметров</h3>
<p>Создайте основные объекты, управляющие процессом конвертации.</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="шаг-3-установить-угол-поворота-и-цвет-фона">Шаг 3: Установить угол поворота и цвет фона</h3>
<p>Укажите, на сколько градусов вращать изображение и цвет заливки для пустых углов.</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="шаг-4-настройка-дополнительных-параметров">Шаг 4: Настройка дополнительных параметров</h3>
<p>Сохраните оригинальные метаданные и задайте качество <a href="https://docs.fileformat.com/image/jpeg/">JPEG</a> при выводе в формате 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="шаг-5-выполнить-вращение">Шаг 5: Выполнить вращение</h3>
<p>Вызовите метод <code>convert</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-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>Для получения более подробной информации о классе <code>ConversionHandler</code> см. <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/ConversionHandler.html">официальную справочную документацию API</a>.</p>
<h2 id="полный-пример-кода-поворот-изображения-в-java-с-использованием-conholdatetotal">Полный пример кода: Поворот изображения в Java с использованием Conholdate.Total</h2>
<p>Следующий пример демонстрирует полный процесс вращения файла изображения.</p>
<p>В этом примере демонстрируется, как повернуть изображение JPG на 90 градусов и сохранить результат.</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>Примечание:</strong> Этот пример кода демонстрирует базовую функциональность. Прежде чем использовать его в вашем проекте, убедитесь, что обновили все пути к файлам и значения конфигурации в соответствии с вашей реальной средой, проверьте, что все необходимые зависимости правильно установлены, и тщательно протестируйте в вашей среде разработки. Если возникнут проблемы, обратитесь к <a href="https://docs.conholdate.com/java/">официальной документации</a> или свяжитесь с <a href="https://forum.conholdate.com/c/total/5">службой поддержки</a> для получения помощи.</p>
</blockquote>
<h2 id="параметры-вращения-варианты-и-настройки">Параметры вращения: варианты и настройки</h2>
<p>SDK предлагает несколько вариантов настройки процесса вращения.</p>
<ul>
<li><strong>Rotate Angle</strong> - Определяет, на сколько градусов поворачивается изображение. Положительные значения вращают по часовой стрелке.</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> - Устанавливает цвет заливки для пустых углов, которые появляются после вращения. Используйте любое значение <code>java.awt.Color</code>.</p>
</li>
<li>
<p><strong>Сохранить метаданные</strong> - Когда включено, данные <a href="https://docs.fileformat.com/image/exif/">EXIF</a> и DPI, а также другие метаданные сохраняются в выходном файле. См. <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/options/convert/ImageConvertOptions.html">ImageConvertOptions API</a> для получения более подробной информации.</p>
</li>
<li>
<p><strong>Quality</strong> - Управляет качеством сжатия JPEG (0‑100). Более высокие значения сохраняют больше деталей, но увеличивают размер файла.</p>
</li>
</ul>
<p>Настройте эти параметры в соответствии с требованиями вашего приложения, будь то без потерь PNG‑вывод или высококачественные JPG‑результаты.</p>
<h2 id="заключение">Заключение</h2>
<p>Поворот изображений в Java прост, когда вы используете <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a>. Это руководство проведет вас через необходимую настройку, подробную пошаговую реализацию и ключевые параметры конфигурации, позволяющие управлять углом, фоном, сохранением метаданных и качеством вывода. Не забудьте приобрести соответствующую лицензию для производственных развертываний; вы можете изучить варианты ценообразования по адресу <a href="https://purchase.conholdate.com/pricing/total/family/">https://purchase.conholdate.com/pricing/total/family/</a> или получить временную лицензию для тестирования по адресу <a href="https://purchase.conholdate.com/temporary-license/">https://purchase.conholdate.com/temporary-license/</a>. После интеграции SDK вы сможете добавить надёжный поворот изображений в любой Java‑ориентированный рабочий процесс.</p>
<h2 id="часто-задаваемые-вопросы">Часто задаваемые вопросы</h2>
<ul>
<li>
<p><strong>Как вращать файл изображения в Java с использованием Conholdate.Total?</strong><br>
Используйте класс <code>ImageConvertOptions</code>, чтобы задать нужный угол вращения, а затем вызовите <code>handler.convert(inputPath, outputPath, options)</code>, как показано в примерах выше.</p>
</li>
<li>
<p><strong>Могу ли я вращать как PNG, так и JPG изображения с помощью одного и того же кода?</strong><br>
Да, SDK автоматически определяет исходный формат. Укажите правильное расширение файла в пути ввода, и тот же код будет работать как с PNG, так и с JPG.</p>
</li>
<li>
<p><strong>Какие параметры доступны для настройки процесса вращения?</strong><br>
Вы можете настроить угол вращения, цвет фона, качество вывода и выбрать, сохранять ли метаданные. Смотрите <a href="https://reference.conholdate.com/java/com/groupdocs/conversion/options/convert/ImageConvertOptions.html">ImageConvertOptions API</a> для полного списка.</p>
</li>
<li>
<p><strong>Нужна ли лицензия для использования этой функции в продакшн?</strong><br>
Для использования в продакшн требуется действующая лицензия. Получите временную лицензию для оценки по адресу <a href="https://purchase.conholdate.com/temporary-license/">https://purchase.conholdate.com/temporary-license/</a> или просмотрите полные сведения о ценах по адресу <a href="https://purchase.conholdate.com/pricing/total/family/">https://purchase.conholdate.com/pricing/total/family/</a>.</p>
</li>
</ul>
<h2 id="читать-далее">Читать далее</h2>
<ul>
<li><a href="https://blog.conholdate.com/ru/total/convert-onenote-to-image-in-java/">Конвертировать OneNote в изображение на Java</a></li>
<li><a href="https://blog.conholdate.com/ru/total/convert-excel-to-image-in-java/">Конвертировать Excel в изображение на Java</a></li>
<li><a href="https://blog.conholdate.com/ru/total/convert-word-to-image-in-java/">Конвертировать Word в изображение на Java</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
