<?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>java text styling on Conholdate Blog</title>
    <link>https://blog-qa.conholdate.com/th/tag/java-text-styling/</link>
    <description>Recent content in java text styling on Conholdate Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>th</language>
    <lastBuildDate>Wed, 14 Oct 2026 17:04:45 +0000</lastBuildDate><atom:link href="https://blog-qa.conholdate.com/th/tag/java-text-styling/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ข้อความขีดฆ่าใน Java</title>
      <link>https://blog-qa.conholdate.com/th/total/strikethrough-text-in-java/</link>
      <pubDate>Wed, 14 Oct 2026 17:04:45 +0000</pubDate>
      
      <guid>https://blog-qa.conholdate.com/th/total/strikethrough-text-in-java/</guid>
      <description>เรียนรู้วิธีเพิ่มข้อความขีดทับใน Java โดยใช้ Conholdate.Total for Java คู่มือนี้แสดงการตั้งค่า การเดินผ่านโค้ด การกำหนดค่าที่สำคัญและเคล็ดลับด้านประสิทธิภาพ</description>
      <content:encoded><![CDATA[<p>การจัดรูปแบบขีดทับมักจำเป็นเพื่อระบุการลบ การแก้ไข หรือภารกิจที่เสร็จสมบูรณ์ในเอกสารที่สร้างขึ้น <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a> มี SDK ที่แข็งแกร่งที่ช่วยให้คุณจัดการเอกสาร Word อย่างโปรแกรมเมติก ในคู่มือนี้คุณจะได้เรียนรู้วิธีเพิ่มข้อความขีดทับใน Java สำรวจตัวเลือกการกำหนดค่า ดูแนวปฏิบัติที่ดีที่สุดด้านประสิทธิภาพ และรันตัวอย่างครบถ้วนที่คุณสามารถปรับใช้กับโครงการของคุณเองได้</p>
<h2 id="กอนทคณจะเรม-ขอกำหนดเบองตนและการตดตง">ก่อนที่คุณจะเริ่ม: ข้อกำหนดเบื้องต้นและการติดตั้ง</h2>
<p>เพื่อทำตามบทแนะนำนี้คุณต้องมี:</p>
<ul>
<li>Java 17 หรือใหม่กว่า ที่ติดตั้งบนเครื่องพัฒนาของคุณ.</li>
<li>Maven 3.6+ สำหรับการจัดการ dependencies.</li>
<li>IDE เช่น IntelliJ IDEA หรือ Eclipse.</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/">หน้าดาวน์โหลด</a> หากคุณต้องการตั้งค่าด้วยตนเอง เมื่อการพึ่งพาถูกแก้ไขแล้ว คุณพร้อมที่จะเริ่มเขียนโค้ด ส่วนต่อไปจะอธิบายขั้นตอนแต่ละขั้นของการเพิ่มข้อความขีดฆ่าใน Java.</p>
<h2 id="คมอขนตอนการทำขอความขดฆาใน-java">คู่มือขั้นตอนการทำข้อความขีดฆ่าใน Java</h2>
<h3 id="ขนตอนท-1-โหลดเอกสารตนทาง">ขั้นตอนที่ 1: โหลดเอกสารต้นทาง</h3>
<p>ขั้นแรก ให้สร้างอินสแตนซ์ของ <code>Document</code>. หากไฟล์อินพุตมีอยู่ SDK จะโหลดไฟล์นั้น; หากไม่มีจะสร้างเอกสารเปล่าใหม่.</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.docx&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>Document doc<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>File inputFile <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> File<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">if</span> <span style="color:#f92672">(</span>inputFile<span style="color:#f92672">.</span><span style="color:#a6e22e">exists</span><span style="color:#f92672">())</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">);</span> <span style="color:#75715e">// loads existing DOCX
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#f92672">}</span> <span style="color:#66d9ef">else</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">();</span>          <span style="color:#75715e">// creates a new blank document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    doc<span style="color:#f92672">.</span><span style="color:#a6e22e">removeAllChildren</span><span style="color:#f92672">();</span>       <span style="color:#75715e">// ensure it&#39;s empty
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#f92672">}</span>
</span></span></code></pre></div><p>คลาส <code>Document</code> ถูกอธิบายไว้ใน <a href="https://reference.conholdate.com/java/">เอกสารอ้างอิง API</a></p>
<h3 id="ขนตอน-2-เขยนยอหนาปกต">ขั้นตอน 2: เขียนย่อหน้าปกติ</h3>
<p>ใช้ <code>DocumentBuilder</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>DocumentBuilder builder <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> DocumentBuilder<span style="color:#f92672">(</span>doc<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">moveToDocumentEnd</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">writeln</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;This is a normal paragraph.&#34;</span><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>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">writeln</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;This text is rendered with strikethrough.&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</span><span style="color:#f92672">(</span><span style="color:#66d9ef">false</span><span style="color:#f92672">);</span> <span style="color:#75715e">// reset for subsequent text
</span></span></span></code></pre></div><h3 id="ขนตอนท-4-คนหาและใชการขดฆาแบบมเงอนไข">ขั้นตอนที่ 4: ค้นหาและใช้การขีดฆ่าแบบมีเงื่อนไข</h3>
<p>วนซ้ำผ่านอ็อบเจ็กต์ <code>Run</code> ทั้งหมด, ค้นหาคำ &ldquo;strike&rdquo; และใช้การจัดรูปแบบโดยโปรแกรม</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:#66d9ef">for</span> <span style="color:#f92672">(</span>Paragraph para <span style="color:#f92672">:</span> <span style="color:#f92672">(</span>Iterable<span style="color:#f92672">&lt;</span>Paragraph<span style="color:#f92672">&gt;)</span> doc<span style="color:#f92672">.</span><span style="color:#a6e22e">getChildNodes</span><span style="color:#f92672">(</span>NodeType<span style="color:#f92672">.</span><span style="color:#a6e22e">PARAGRAPH</span><span style="color:#f92672">,</span> <span style="color:#66d9ef">true</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">for</span> <span style="color:#f92672">(</span>Run run <span style="color:#f92672">:</span> <span style="color:#f92672">(</span>Iterable<span style="color:#f92672">&lt;</span>Run<span style="color:#f92672">&gt;)</span> para<span style="color:#f92672">.</span><span style="color:#a6e22e">getChildNodes</span><span style="color:#f92672">(</span>NodeType<span style="color:#f92672">.</span><span style="color:#a6e22e">RUN</span><span style="color:#f92672">,</span> <span style="color:#66d9ef">true</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        String text <span style="color:#f92672">=</span> run<span style="color:#f92672">.</span><span style="color:#a6e22e">getText</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">if</span> <span style="color:#f92672">(</span>text <span style="color:#f92672">!=</span> <span style="color:#66d9ef">null</span> <span style="color:#f92672">&amp;&amp;</span> text<span style="color:#f92672">.</span><span style="color:#a6e22e">toLowerCase</span><span style="color:#f92672">().</span><span style="color:#a6e22e">contains</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;strike&#34;</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            run<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</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:#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><h3 id="ขนตอน-5-บนทกเอกสาร">ขั้นตอน 5: บันทึกเอกสาร</h3>
<p>สุดท้าย ให้เขียนเอกสารที่แก้ไขแล้วลงดิสก์ในรูปแบบ <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a></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 outputPath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output.docx&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>doc<span style="color:#f92672">.</span><span style="color:#a6e22e">save</span><span style="color:#f92672">(</span>outputPath<span style="color:#f92672">,</span> SaveFormat<span style="color:#f92672">.</span><span style="color:#a6e22e">DOCX</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><p>เมื่อบันทึกเอกสารแล้ว คุณสามารถเปิด <code>output.docx</code> เพื่อตรวจสอบว่าการจัดรูปแบบขีดทับปรากฏตามที่คาดหวัง.</p>
<h2 id="ตวอยางการทำงานเตมสำหรบขอความขดเสนทบ-ตวอยาง-java">ตัวอย่างการทำงานเต็มสำหรับข้อความขีดเส้นทับ ตัวอย่าง Java</h2>
<p>โค้ดต่อไปนี้แสดงขั้นตอนการทำงานทั้งหมดสำหรับการเพิ่มข้อความขีดฆ่าใน Java โดยใช้ Conholdate.Total.</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.aspose.words.*<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.io.File<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">StrikethroughExample</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.docx&#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.docx&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>Document doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">null</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">try</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            File inputFile <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> File<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">if</span> <span style="color:#f92672">(</span>inputFile<span style="color:#f92672">.</span><span style="color:#a6e22e">exists</span><span style="color:#f92672">())</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">(</span>inputPath<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">}</span> <span style="color:#66d9ef">else</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Document<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>                doc<span style="color:#f92672">.</span><span style="color:#a6e22e">removeAllChildren</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></span><span style="display:flex;"><span>DocumentBuilder builder <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> DocumentBuilder<span style="color:#f92672">(</span>doc<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            builder<span style="color:#f92672">.</span><span style="color:#a6e22e">moveToDocumentEnd</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">writeln</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;This is a normal paragraph.&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            builder<span style="color:#f92672">.</span><span style="color:#a6e22e">writeln</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;This text is rendered with strikethrough.&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</span><span style="color:#f92672">(</span><span style="color:#66d9ef">false</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">for</span> <span style="color:#f92672">(</span>Paragraph para <span style="color:#f92672">:</span> <span style="color:#f92672">(</span>Iterable<span style="color:#f92672">&lt;</span>Paragraph<span style="color:#f92672">&gt;)</span> doc<span style="color:#f92672">.</span><span style="color:#a6e22e">getChildNodes</span><span style="color:#f92672">(</span>NodeType<span style="color:#f92672">.</span><span style="color:#a6e22e">PARAGRAPH</span><span style="color:#f92672">,</span> <span style="color:#66d9ef">true</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">for</span> <span style="color:#f92672">(</span>Run run <span style="color:#f92672">:</span> <span style="color:#f92672">(</span>Iterable<span style="color:#f92672">&lt;</span>Run<span style="color:#f92672">&gt;)</span> para<span style="color:#f92672">.</span><span style="color:#a6e22e">getChildNodes</span><span style="color:#f92672">(</span>NodeType<span style="color:#f92672">.</span><span style="color:#a6e22e">RUN</span><span style="color:#f92672">,</span> <span style="color:#66d9ef">true</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                    String text <span style="color:#f92672">=</span> run<span style="color:#f92672">.</span><span style="color:#a6e22e">getText</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">if</span> <span style="color:#f92672">(</span>text <span style="color:#f92672">!=</span> <span style="color:#66d9ef">null</span> <span style="color:#f92672">&amp;&amp;</span> text<span style="color:#f92672">.</span><span style="color:#a6e22e">toLowerCase</span><span style="color:#f92672">().</span><span style="color:#a6e22e">contains</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;strike&#34;</span><span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                        run<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</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:#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></span><span style="display:flex;"><span>doc<span style="color:#f92672">.</span><span style="color:#a6e22e">save</span><span style="color:#f92672">(</span>outputPath<span style="color:#f92672">,</span> SaveFormat<span style="color:#f92672">.</span><span style="color:#a6e22e">DOCX</span><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>            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 style="color:#66d9ef">finally</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">if</span> <span style="color:#f92672">(</span>doc <span style="color:#f92672">!=</span> <span style="color:#66d9ef">null</span><span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                doc <span style="color:#f92672">=</span> <span style="color:#66d9ef">null</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><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 ช่วยให้คุณควบคุมแอตทริบิวต์ของฟอนต์เพิ่มเติม เช่น สี, ขนาด, และการขีดเส้นใต้ ในขณะที่ยังเปิดใช้งานฟลักการ strike‑through ตัวอย่างเช่น คุณสามารถเปลี่ยนสีของข้อความที่ถูก strike‑through ได้:</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>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setColor</span><span style="color:#f92672">(</span>java<span style="color:#f92672">.</span><span style="color:#a6e22e">awt</span><span style="color:#f92672">.</span><span style="color:#a6e22e">Color</span><span style="color:#f92672">.</span><span style="color:#a6e22e">RED</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">getFont</span><span style="color:#f92672">().</span><span style="color:#a6e22e">setStrikeThrough</span><span style="color:#f92672">(</span><span style="color:#66d9ef">true</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>builder<span style="color:#f92672">.</span><span style="color:#a6e22e">writeln</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Important deletion highlighted in red.&#34;</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><p>หากคุณต้องการใช้สไตล์เดียวกันกับหลาย <code>Run</code> ให้พิจารณาสร้างอินสแตนซ์ <code>Font</code> ที่สามารถนำกลับมาใช้ใหม่ได้และกำหนดให้กับแต่ละ <code>Run</code> เพื่อหลีกเลี่ยงการตั้งค่าคุณสมบัติซ้ำ ๆ.</p>
<h2 id="ขอควรพจารณาดานประสทธภาพสำหรบการเรนเดอรเสนขด">ข้อควรพิจารณาด้านประสิทธิภาพสำหรับการเรนเดอร์เส้นขีด</h2>
<ol>
<li><strong>Reuse the <code>Document</code> object</strong> - โหลดเอกสารเพียงครั้งเดียวและทำการแก้ไขทั้งหมดในเซสชันเดียวจะลดภาระ I/O.</li>
<li><strong>Batch style changes</strong> - ใช้แฟล็ก strike‑through กับคอลเลกชัน <code>Paragraph</code> หรือ <code>Run</code> แทนการสลับสำหรับแต่ละอักขระ.</li>
<li><strong>Avoid unnecessary traversals</strong> - ลูปเงื่อนไขที่ค้นหาคำว่า &ldquo;strike&rdquo; ควรทำงานเฉพาะเมื่อคุณต้องการสไตล์แบบไดนามิกจริงๆ.</li>
<li><strong>Stream output when possible</strong> - สำหรับเอกสารขนาดใหญ่ ใช้ <code>doc.save(OutputStream, SaveFormat.DOCX)</code> เพื่อเขียนโดยตรงไปยังสตรีมและประหยัดหน่วยความจำ.</li>
</ol>
<p>เคล็ดลับเหล่านี้ช่วยให้การใช้หน่วยความจำต่ำและเวลาในการดำเนินการเร็ว โดยเฉพาะเมื่อประมวลผลเอกสารหลายร้อยฉบับในงานแบบแบตช์.</p>
<h2 id="สรปสดทาย">สรุปสุดท้าย</h2>
<p>การเพิ่มข้อความขีดฆ่าใน Java ทำได้อย่างง่ายดายด้วย <a href="https://products.conholdate.com/total/java/">Conholdate.Total for Java</a>. API แบบ fluent ของ SDK ช่วยให้คุณผสานย่อหน้าปกติและย่อหน้าที่มีสไตล์, ใช้การจัดรูปแบบตามเงื่อนไข, และบันทึกผลลัพธ์ในรูปแบบมาตรฐานอุตสาหกรรม. อย่าลืมกำหนดการพึ่งพา Maven ของคุณ, ใช้วัตถุเอกสารซ้ำ, และใช้สไตล์อย่างมีประสิทธิภาพเพื่อให้ได้ประสิทธิภาพสูงสุด. สำหรับการใช้งานในสภาพแวดล้อมการผลิตคุณจะต้องมีใบอนุญาตที่ถูกต้อง; รายละเอียดราคาอยู่ใน <a href="https://purchase.conholdate.com/pricing/total/family/">หน้าราคา</a> และคุณสามารถรับใบอนุญาตชั่วคราวจาก <a href="https://purchase.conholdate.com/temporary-license/">หน้าลิขสิทธิ์ชั่วคราว</a>. ขอให้สนุกกับการเขียนโค้ด!</p>
<h2 id="คำถามทคณอาจม">คำถามที่คุณอาจมี</h2>
<ul>
<li>
<p><strong>ฉันจะใช้ข้อความขีดฆ่าใน Java อย่างไรโดยไม่ต้องตั้งค่าสถานะด้วยตนเองสำหรับแต่ละ run?</strong><br>
ใช้ <code>DocumentBuilder.getFont().setStrikeThrough(true)</code> ก่อนเขียนย่อหน้า สถานะจะคงอยู่จนกว่าจะรีเซ็ต ทำให้คุณสามารถเขียนหลายบรรทัดด้วยสไตล์เดียวกันได้</p>
</li>
<li>
<p><strong>ฉันสามารถทำให้ทุกการปรากฏของคีย์เวิร์ดมีการขีดฆ่าโดยอัตโนมัติได้หรือไม่?</strong><br>
ใช่. วนลูปผ่านแต่ละ <code>Run</code> ตามที่แสดงในขั้นตอนการทำงาน, ตรวจสอบ <code>run.getText()</code> สำหรับคีย์เวิร์ด, และเรียก <code>run.getFont().setStrikeThrough(true)</code> เมื่อพบการจับคู่.</p>
</li>
<li>
<p><strong>รูปแบบเอกสารใดบ้างที่คงการขีดฆ่าเมื่อบันทึก?</strong><br>
DOCX, <a href="https://docs.fileformat.com/word-processing/doc/">DOC</a>, <a href="https://docs.fileformat.com/word-processing/rtf/">RTF</a>, และรูปแบบข้อความที่มีการจัดรูปแบบอื่น ๆ จะคงคุณลักษณะการขีดฆ่าไว้. ดูเอกสารอย่างเป็นทางการที่ <a href="https://docs.conholdate.com/java/">official documentation</a> สำหรับรายการเต็มของรูปแบบที่รองรับ.</p>
</li>
<li>
<p><strong>การใช้สไตล์ขีดฆ่าจำนวนมากจะทำให้การประมวลผลไฟล์ขนาดใหญ่ช้าลงหรือไม่?</strong><br>
ผลกระทบจะน้อยถ้าคุณปฏิบัติตามเคล็ดลับด้านประสิทธิภาพ: ใช้ตัวอย่าง <code>Document</code> ซ้ำ, ทำการเปลี่ยนแปลงสไตล์เป็นชุด, และหลีกเลี่ยงการเดินผ่านข้อมูลซ้ำซ้อน. วิธีนี้ช่วยลดการใช้หน่วยความจำและเร่งการประมวลผล.</p>
</li>
</ul>
<h2 id="บทความทเกยวของ">บทความที่เกี่ยวข้อง</h2>
<ul>
<li><a href="https://blog.conholdate.com/th/total/rotate-image-in-java/">หมุนรูปภาพใน Java</a></li>
<li><a href="https://blog.conholdate.com/th/total/add-text-to-pdf-in-java/">เพิ่มข้อความลงใน PDF ด้วย Java</a></li>
<li><a href="https://blog.conholdate.com/th/total/convert-pdf-to-png-in-java/">แปลง PDF เป็น PNG ใน Java</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
