<?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/fa/tag/image-rotation/</link>
    <description>Recent content in image rotation on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>fa</language>
    <lastBuildDate>Wed, 07 Oct 2026 17:53:30 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/fa/tag/image-rotation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>چرخاندن تصویر در جاوا</title>
      <link>https://blog-qa.conholdate.com/fa/total/rotate-image-in-java/</link>
      <pubDate>Wed, 07 Oct 2026 17:53:30 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/fa/total/rotate-image-in-java/</guid>
      <description>نحوه چرخاندن تصاویر PNG و JPG در جاوا با Conholdate.Total for Java را بیاموزید. این راهنما مراحل راه‌اندازی، مثال کد و گزینه‌های چرخش را مرور می‌کند.</description>
      <content:encoded><![CDATA[<p>چرخاندن تصاویر به‌صورت برنامه‌نویسی یک نیاز مکرر هنگام ساخت تولیدکنندگان پیش‌نمایش، ویرایشگرهای عکس یا گردش‌های کاری اسناد است. <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> یک SDK قدرتمند ارائه می‌دهد که دستکاری تصویر را در برنامه‌های جاوا به‌صورت ساده انجام می‌دهد. در این راهنما خواهید آموخت که چگونه فایل‌های <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>مخزن Maven Conholdate و وابستگی 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="چرخاندن-تصویر-در-جاوا-راهنمای-گام-به-گام">چرخاندن تصویر در جاوا: راهنمای گام به گام</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="مرحله-۲-مقداردهی-اولیه-پردازشگر-تبدیل-و-گزینهها">مرحله ۲: مقداردهی اولیه پردازشگر تبدیل و گزینه‌ها</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="مرحله-۳-تنظیم-زاویه-چرخش-و-رنگ-پسزمینه">مرحله ۳: تنظیم زاویه چرخش و رنگ پس‌زمینه</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="مثال-کامل-کد-چرخاندن-تصویر-در-جاوا-با-استفاده-از-conholdatetotal">مثال کامل کد: چرخاندن تصویر در جاوا با استفاده از 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>کیفیت</strong> - کیفیت فشرده‌سازی JPEG را کنترل می‌کند (0‑100). مقادیر بالاتر جزئیات بیشتری را حفظ می‌کنند اما حجم فایل را افزایش می‌دهند.</p>
</li>
</ul>
<p>این تنظیمات را طوری تنظیم کنید که با نیازهای برنامه شما مطابقت داشته باشد، چه برای خروجی PNG بدون فقدان یا نتایج JPG با کیفیت بالا.</p>
<h2 id="نتیجهگیری">نتیجه‌گیری</h2>
<p>چرخاندن تصاویر در جاوا ساده است وقتی از <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، می‌توانید چرخاندن تصویر قابل اعتماد را به هر جریان کاری مبتنی بر جاوا اضافه کنید.</p>
<h2 id="سوالات-متداول">سوالات متداول</h2>
<ul>
<li>
<p><strong>چگونه می‌توانم یک فایل تصویر را در جاوا با استفاده از 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/fa/total/convert-onenote-to-image-in-java/">تبدیل Onenote به تصویر در Java</a></li>
<li><a href="https://blog.conholdate.com/fa/total/convert-excel-to-image-in-java/">تبدیل Excel به تصویر در Java</a></li>
<li><a href="https://blog.conholdate.com/fa/total/convert-word-to-image-in-java/">تبدیل Word به تصویر در Java</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
