🚀 บทนำ

เคยต้องใส่ลายน้ำให้เอกสารหลายไฟล์แล้วได้สแตมป์ “CONFIDENTIAL” ที่น่าเบื่อเหมือนกันทุกไฟล์หรือไม่? รายงานการเงินระดับสูงของคุณก็ได้รับลายน้ำทั่วไปเดียวกับร่างเมนูอาหารกลางวันของคุณ ไม่ได้ช่วยอะไรเลยใช่ไหม?

เรื่องคือ: เอกสารของคุณมีเอกลักษณ์เฉพาะของมัน ดังนั้นลายน้ำของมันก็ควรจะเป็นเช่นกัน ถ้าลายน้ำของคุณสามารถอ่านเอกสารของคุณและสร้างสิ่งที่เหมาะสมกับแต่ละไฟล์ได้ล่ะ?

การใส่ลายน้ำในเอกสาร ไม่ได้เป็นแค่การวางข้อความบนไฟล์อีกต่อไปแล้ว มันเป็นเรื่องของ ความปลอดภัยของเอกสารอัจฉริยะ , การสร้างแบรนด์ระดับมืออาชีพ และ การคุ้มครองทางกฎหมาย ที่สอดคล้องกับสิ่งที่คุณกำลังปกป้อง ไม่ว่าคุณจะกำลังปกป้องรายงานธุรกิจที่เป็นความลับ ปกป้องทรัพย์สินทางปัญญาของคุณ หรือแค่ทำให้คนรู้ว่าเวอร์ชันที่กำลังดูคืออะไร ลายน้ำที่เหมาะสมสามารถช่วยลดปัญหาได้มาก

นี่คือจุดที่ AI assistance เข้ามาช่วย แทนที่คุณต้องคิดข้อความลายน้ำสำหรับทุกประเภทเอกสาร AI สามารถอ่านเอกสารของคุณ เข้าใจเนื้อหา แล้วสร้างลายน้ำที่มีความหมายจริง ๆ คิดว่าเป็นผู้ช่วยอัจฉริยะที่ไม่เคยเหนื่อยกับการอ่านเอกสารและรู้ทันทีว่าต้องใส่ลายน้ำแบบไหนในแต่ละไฟล์

ในคู่มือนี้ เราจะสาธิตวิธี ปกป้องเอกสารของคุณด้วยลายน้ำอัจฉริยะ โดยใช้ GroupDocs.Watermark for .NET ร่วมกับ AI คุณจะได้เรียนรู้วิธี สร้างลายน้ำ ที่มีประโยชน์จริง ๆ , ปรับแต่งลายน้ำ สำหรับสถานการณ์ต่าง ๆ , และแม้กระทั่ง ลบลายน้ำ เมื่อจำเป็น – ทั้งหมดโดยไม่ต้องเสียแรงมาก


GroupDocs.Watermark คืออะไร?

GroupDocs.Watermark for .NET เป็นไลบรารี C# ครบวงจรที่ออกแบบมาสำหรับ การปกป้องเอกสารระดับองค์กร และ การทำอัตโนมัติของลายน้ำ API ที่ทรงพลังนี้ช่วยให้นักพัฒนาสามารถ เพิ่มลายน้ำ, ค้นหา, ลบลายน้ำ, และแก้ไขการใส่ลายน้ำในรูปแบบเอกสารต่าง ๆ ได้โดยไม่ต้องพึ่งพาซอฟต์แวร์ภายนอก

รูปแบบเอกสารที่รองรับ

ไลบรารีรองรับรูปแบบที่หลากหลายเพื่อให้การ ปกป้องเนื้อหาโดยใช้ลายน้ำ ครบถ้วน:

  • Microsoft Office: Word (DOC, DOCX), Excel (XLS, XLSX), PowerPoint (PPT, PPTX)
  • PDF Documents: รองรับ ลายน้ำ PDF อย่างเต็มรูปแบบ
  • Image Formats: JPEG, PNG, TIFF, BMP, GIF สำหรับ ลายน้ำรูปภาพ
  • Email Formats: MSG, EML สำหรับความปลอดภัยในการสื่อสาร
  • Specialized Formats: Visio, OneNote และอื่น ๆ อีกมากมาย

ความสามารถหลัก

  • เพิ่มลายน้ำ ด้วยการกำหนดตำแหน่งและความโปร่งใสที่แม่นยำ
  • สร้างลายน้ำ ด้วย ฟอนต์ที่กำหนดเอง และตัวเลือกการจัดรูปแบบ
  • ลบลายน้ำ และ ลบลายน้ำ จากเอกสารที่มีอยู่
  • ลายน้ำที่มองไม่เห็น สำหรับเอกสารที่ต้องการการปกป้องแบบละเอียดอ่อน
  • โซลูชัน ลายน้ำระดับองค์กร พร้อมการประมวลผลเป็นชุด
  • ค้นหาและระบุลายน้ำที่มีอยู่ในคอลเลกชันเอกสาร

AI Assistance คืออะไรและทำไมต้องใช้ร่วมกับการใส่ลายน้ำ?

AI assistance ในการใส่ลายน้ำ เปรียบเสมือนผู้ช่วยอัจฉริยะที่อ่านและเข้าใจเอกสารของคุณก่อนใส่ลายน้ำ แทนที่การวางสแตมป์ “CONFIDENTIAL” แบบเดียวกันทุกไฟล์ AI จะดูว่าเอกสารของคุณเกี่ยวกับอะไร, เขียนโดยใคร, สร้างเมื่อไหร่, และเป็นประเภทใด – แล้วจึงสร้างลายน้ำที่มีความหมายจริง

วิธีเดิมทำให้หงุดหงิด

เครื่องมือใส่ลายน้ำแบบดั้งเดิมบังคับให้คุณเลือกจากตัวเลือกที่แย่ ๆ:

  • ลายน้ำน่าเบื่อและทั่วไปที่ไม่มีข้อมูลสำคัญ
  • ใช้เวลาหลายชั่วโมงในการสร้างลายน้ำสำหรับแต่ละประเภทเอกสาร
  • ข้อความคงที่ที่ไม่บอกว่าข้อมูลสำคัญหรือเป็นเอกสารทั่วไป
  • ระบบทำงานได้ดีสำหรับ 10 เอกสารแต่กลายเป็นอุจจาระเมื่อมีหลายร้อยไฟล์

AI ทำให้ดีขึ้นอย่างไร

เมื่อคุณผสาน GroupDocs.Watermark กับ AI จะเกิดสิ่งต่อไปนี้:

สร้างข้อความอัจฉริยะ – AI อ่านเอกสารของคุณและเขียนลายน้ำที่เหมาะสม
ปรับตัวแบบเรียลไทม์ – ประเภทเอกสารต่าง ๆ ได้รับสไตล์ลายน้ำที่แตกต่างโดยอัตโนมัติ
ความปลอดภัยที่ดียิ่งขึ้น – ลายน้ำมีข้อมูลที่ถูกต้องสำหรับเอกสารที่ถูกต้อง
จัดการเอกสารจำนวนมาก – ทำงานได้ดีทั้ง 1 เอกสารหรือ 1,000 เอกสาร
คงความสม่ำเสมอ – กฎการใส่ลายน้ำของบริษัทคุณจะถูกปฏิบัติตามทุกครั้ง
ประหยัดเวลา – ไม่ต้องสร้างลายน้ำด้วยมือสำหรับทุกเอกสารอีกต่อไป

ตัวอย่างการใช้งานจริง

  • Legal Documents: AI อ่านไฟล์คดีและสร้างลายน้ำที่มีหมายเลขคดี, คำเตือนความลับ, และประกาศทางกฎหมาย – ไม่ต้องคัดลอก‑วางหมายเลขคดีผิดพลาดอีกต่อไป!
  • Financial Reports: เพิ่มคำเตือนการปฏิบัติตามกฎ, ข้อมูลไตรมาส, และข้อจำกัดการเข้าถึงโดยอัตโนมัติตามเนื้อหาในรายงาน
  • HR Documents: ตรวจสอบข้อมูลพนักงานและเพิ่มแท็กแผนก, คำเตือนความเป็นส่วนตัว, และระยะเวลาการเก็บเอกสารที่เหมาะสม
  • Marketing Materials: ตรวจสอบรายละเอียดแคมเปญและเพิ่มสถานะการอนุมัติ, สิทธิการใช้, และแนวทางแบรนด์ที่สอดคล้องกับแคมเปญปัจจุบัน
  • Technical Docs: อ่านเอกสารเทคนิคและเพิ่มหมายเลขเวอร์ชัน, ระดับความปลอดภัย, และรหัสโครงการที่ตรงกับสิ่งที่คุณกำลังทำอยู่

🔄 เวิร์กโฟลว์การใส่ลายน้ำด้วย AI

ขั้นตอนที่เกิดขึ้นทีละขั้นตอน

  1. AI อ่านเอกสารของคุณ: AI ตรวจสอบเนื้อหา, ผู้สร้าง, วันที่สร้าง, และประเภทของเอกสาร
  2. AI คิดวิเคราะห์: จากข้อมูลที่ได้ AI ตัดสินใจว่าลายน้ำแบบใดเหมาะสม – เป็นความลับ? สาธารณะ? หรือระหว่างกลาง?
  3. AI เขียนลายน้ำ: สร้างข้อความลายน้ำที่สอดคล้องกับวัตถุประสงค์ของเอกสารและกฎความปลอดภัยของคุณ
  4. AI ใส่ลายน้ำอย่างเหมาะสม: วางลายน้ำในตำแหน่งที่ถูกต้องด้วย ฟอนต์ และสไตล์ที่เหมาะกับประเภทเอกสาร
  5. AI ตรวจสอบอีกครั้ง: ยืนยันว่าลายน้ำดูดีและอ่านได้ก่อนบันทึกขั้นสุดท้าย
  6. คุณได้รับเอกสารที่ได้รับการปกป้อง: เอกสารของคุณถูกบันทึกพร้อมลายน้ำที่มีความหมายจริง

วิธีที่ AI ตัดสินใจอย่างชาญฉลาด

AI ไม่ได้สุ่มสร้างข้อความ – มันพิจารณา:

  • เอกสารนี้เป็นประเภทอะไร? – แบ่งเอกสารอัตโนมัติเป็นประเภทเช่น ความลับ, สาธารณะ, ใช้ภายใน ฯลฯ
  • ใครควรเห็นเอกสารนี้? – กำหนดกลุ่มเป้าหมายและปรับข้อความลายน้ำให้เหมาะสม
  • กฎใดบ้างที่ใช้? – ปฏิบัติตามข้อกำหนดอุตสาหกรรม เช่น HIPAA สำหรับเอกสารทางการแพทย์ หรือกฎการปฏิบัติตามทางการเงิน
  • สอดคล้องกับแบรนด์ของเราไหม? – รักษาสไตล์ลายน้ำของบริษัทให้คงที่ในขณะที่ปรับให้เข้ากับแต่ละเอกสาร
  • ควรวางไว้ที่ไหน? – เลือกตำแหน่งที่ลายน้ำมองเห็นได้แต่ไม่รบกวนเนื้อหา

กระบวนการแบบละเอียด

  1. Document Analysis: ดึงเมตาดาต้า เช่น ชื่อเรื่อง, ผู้เขียน, วันที่สร้าง, และประเภทเอกสาร
  2. AI Prompt Generation: สร้างพรอมต์ตามข้อมูลที่ดึงมา
  3. Intelligent Content Creation: AI สร้างข้อความลายน้ำที่เป็นมืออาชีพและเกี่ยวข้อง
  4. Watermark Application: ใส่เนื้อหาที่สร้างด้วย ฟอนต์ที่กำหนดเอง และการจัดรูปแบบ
  5. Secure Output: บันทึกเอกสารที่ได้รับการปกป้องพร้อมลายน้ำที่รับรู้บริบท

นี่คือวิธีที่กระบวนการรวมทำงาน:

Step-by-step workflow diagram showing AI-enhanced watermarking process

ตัวอย่างโค้ด: AI‑Generated Watermark ใน C#

ด้านล่างเป็นตัวอย่างโค้ดที่ครบถ้วนแสดงวิธี สร้างลายน้ำ อย่างชาญฉลาดโดยผสานการวิเคราะห์เอกสาร, การสร้าง AI, และการประยุกต์ใช้ระดับมืออาชีพ:

using System;
using System.Drawing;
using System.Threading.Tasks;
using GroupDocs.Watermark;
using GroupDocs.Watermark.Options;

class Program
{
    static async Task Main()
    {
        string inputFilePath = "email.pdf";
        string outputFilePath = "result.pdf";

        // Step 1: Extract document info
        IDocumentInfo documentInfo = GetDocumentInfo(inputFilePath);

        string title = "Kai Carter 777 LUCKY AVE, LAS VEGAS, NV 16171";
        string documentType = "email";
        DateTime creationDate = DateTime.Now;

        // Step 2: Create prompt for AI
        string prompt =
            $"Generate a clean, professional text watermark for a document titled '{title}' " +
            $"of type '{documentType}', created on {creationDate:dd-MMM-yy h:mm tt}. " +
            $"The document has {documentInfo.PageCount} page" +
            $"{(documentInfo.PageCount > 1 ? "s" : "")}. " +
            $"Include useful human-readable information like classification " +
            $"(e.g., Confidential), title, date, and page count. " +
            $"Do not mention file size or technical file type. " +
            $"Return the watermark text only, in a compact format with at most 5 lines.";

        // Step 3: Generate watermark text via AI
        string watermarkText = await GenerateWatermarkTextAsync(prompt);

        // Step 4: Apply the generated watermark
        ApplyTextWatermark(inputFilePath, outputFilePath, watermarkText);

        Console.WriteLine("Watermark applied and saved to: " + outputFilePath);
    }

    static IDocumentInfo GetDocumentInfo(string filePath)
    {
        using (Watermarker watermarker = new Watermarker(filePath))
        {
            IDocumentInfo info = watermarker.GetDocumentInfo();

            Console.WriteLine($"File type: {info.FileType}");
            Console.WriteLine($"Number of pages: {info.PageCount}");
            Console.WriteLine($"Document size: {info.Size} bytes");

            return info;
        }
    }

    static async Task<string> GenerateWatermarkTextAsync(string prompt)
    {
        // This method should call your AI assistant (e.g., OpenAI, Azure OpenAI,
        // local model)
        // to generate watermark text based on the prompt.
        // Return only the watermark string without any extra explanation.

        throw new NotImplementedException("Integrate your AI assistant here.");
    }

    static void ApplyTextWatermark(string inputPath, string outputPath, 
        string watermarkText)
    {
        using (Watermarker watermarker = new Watermarker(inputPath))
        {
            Font font = new Font("Arial", 11, FontStyle.Bold | FontStyle.Italic);

            TextWatermark watermark = new TextWatermark(watermarkText, font)
            {
                ForegroundColor = Color.Red,
                Opacity = 0.2,
                TextAlignment = TextAlignment.Left,
                X = 250,
                Y = 580
            };

            watermarker.Add(watermark);
            watermarker.Save(outputPath);
        }
    }
}

ผลลัพธ์:

Example PDF document with AI-generated contextual watermark applied

เทคนิคการใส่ลายน้ำขั้นสูง

วิธีปรับแต่งลายน้ำ

นอกเหนือจากการใส่ข้อความพื้นฐาน คุณสามารถ ปรับแต่งลายน้ำ อย่างละเอียดได้:

// Example: Creating a customized watermark with advanced styling
TextWatermark advancedWatermark = new TextWatermark(aiGeneratedText, customFont)
{
    ForegroundColor = Color.FromArgb(128, 0, 0, 255), // Semi-transparent blue
    BackgroundColor = Color.FromArgb(50, 255, 255, 255), // Light background
    Opacity = 0.3,
    RotateAngle = -45, // Diagonal orientation
    TextAlignment = TextAlignment.Center,
    SizingType = SizingType.ScaleToParentDimensions,
    ScaleFactor = 0.8
};

วิธีลบลายน้ำ

บางครั้งคุณอาจต้อง ลบลายน้ำ ออกจากเอกสาร นี่คือตัวอย่างการ ลบลายน้ำ อย่างโปรแกรมเมติก:

public static void RemoveWatermarkFromDocument(string filePath)
{
    using (Watermarker watermarker = new Watermarker(filePath))
    {
        // Search for watermarks
        PossibleWatermarkCollection watermarks = watermarker.Search();
        
        // Remove all found watermarks
        for (int i = watermarks.Count - 1; i >= 0; i--)
        {
            watermarks.RemoveAt(i);
        }
        
        watermarker.Save();
    }
}

ทำไมวิธีนี้ถึงเปลี่ยนเกม

การปกป้องเนื้อหาแบบไดนามิก
ไม่มีลายน้ำ “CONFIDENTIAL” ทั่วไปอีกต่อไป ลายน้ำแต่ละอันสะท้อนบริบท, จุดประสงค์, และระดับการจัดประเภทของเอกสารจริง

ความสามารถในการขยายระดับองค์กร
Watermark automation for enterprise หมายถึงการประมวลผลหลายร้อยเอกสารพร้อมการทำเครื่องหมายที่สอดคล้องและฉลาด

ความปลอดภัยที่เพิ่มขึ้น
ลายน้ำที่รับรู้บริบททำให้ผู้ไม่ประสงค์ดียากต่อการลบหรือมองข้ามเครื่องหมายความปลอดภัย เพราะลายน้ำนั้นเป็นเอกลักษณ์ของเอกสารนั้น ๆ

รูปลักษณ์มืออาชีพ
ลายน้ำที่สร้างโดย AI รักษามาตรฐานมืออาชีพพร้อมการบรรจุข้อมูลสูงสุด

พร้อมการปฏิบัติตามกฎ
รวมข้อมูลกฎหมาย, กฎระเบียบ, หรือข้อกำหนดของบริษัทโดยอัตโนมัติตามประเภทและเมตาดาต้าเอกสาร


การสร้างบริการใส่ลายน้ำของคุณ

แผนงานการดำเนินการ

  1. Document Analysis Service

    • ดึงเมตาดาต้าโดยใช้ความสามารถของ GroupDocs.Watermark ในการรับข้อมูลเอกสาร
    • จำแนกประเภทเอกสารและกำหนดความต้องการด้านความปลอดภัย
    • ตรวจหาและ ลบลายน้ำ ที่มีอยู่เมื่อจำเป็น
  2. AI Integration Layer

    • เชื่อมต่อกับผู้ให้บริการ AI ที่คุณเลือก (OpenAI, Azure OpenAI, Claude)
    • สร้างพรอมต์ตามกฎธุรกิจและบริบท
    • สร้างข้อความลายน้ำที่เป็นมืออาชีพและเกี่ยวข้อง
  3. Watermark Application Engine

    • ใส่ text watermarks ด้วย ฟอนต์ที่กำหนดเอง และการจัดรูปแบบ
    • รองรับ image watermarks สำหรับโลโก้และกราฟิกซับซ้อน
    • จัดการ invisible watermarking เพื่อปกป้องเมตาดาต้า
  4. Batch Processing System

    • ประมวลผลหลายเอกสารพร้อมกัน
    • ปรับแต่งลายน้ำ ตามโครงสร้างโฟลเดอร์หรือรูปแบบการตั้งชื่อไฟล์
    • สร้างรายงานสรุปการทำงานของลายน้ำ

พิจารณาด้านสถาปัตยกรรม

  • API Gateway: จุดเชื่อมต่อ RESTful สำหรับการ เพิ่มลายน้ำ และ ลบลายน้ำ
  • Queue Management: จัดการชุดเอกสารขนาดใหญ่อย่างมีประสิทธิภาพ
  • Storage Integration: รองรับคลาวด์สตอเรจ (AWS S3, Azure Blob, Google Cloud)
  • Audit Logging: บันทึกการทำงานทั้งหมดเพื่อการปฏิบัติตามกฎ

ประสิทธิภาพและแนวทางปฏิบัติที่ดีที่สุด

⚡ เคล็ดลับการเพิ่มประสิทธิภาพ

  • Batch Processing: จัดกลุ่มเอกสารที่คล้ายกันเพื่อสร้างพรอมต์ AI อย่างมีประสิทธิภาพ
  • Caching: เก็บลายน้ำรูปแบบที่ใช้บ่อยเพื่อลดจำนวนการเรียก API AI
  • Format‑Specific Handling: ปรับตำแหน่งลายน้ำให้เหมาะกับแต่ละประเภทไฟล์
  • Resource Management: ปิดการใช้งานออบเจ็กต์ Watermarker อย่างถูกต้องเพื่อป้องกันการรั่วของหน่วยความจำ

🔒 พิจารณาด้านความปลอดภัย

  • API Key Management: เก็บข้อมูลรับรองของบริการ AI อย่างปลอดภัย
  • Document Handling: ทำความสะอาดไฟล์ชั่วคราวอย่างครบถ้วน
  • Access Control: ใช้การตรวจสอบสิทธิ์ที่เหมาะสมสำหรับบริการใส่ลายน้ำ
  • Audit Trail: บันทึกการทำงานทั้งหมดเพื่อการตรวจสอบความปลอดภัย

กรณีการใช้งานขั้นสูง

📄 การปกป้องเอกสารทางกฎหมาย

// Example prompt for legal documents
string legalPrompt = $"Create a watermark for legal document '{title}' " +
    $"with case number, confidentiality level 'Attorney-Client Privileged', " +
    $"date {DateTime.Now:MMM dd yyyy}, and page count {pageCount}. " +
    $"Include 'NOT FOR DISTRIBUTION' warning.";

💼 การทำเครื่องหมายรายงานการเงิน

// Example for quarterly financial reports
string financialPrompt = $"Generate watermark for Q{quarter} {year} financial report " +
    $"titled '{title}'. Include 'CONFIDENTIAL - INTERNAL USE ONLY', " +
    $"report date, and compliance notice. Format professionally.";

👥 การจัดประเภทเอกสาร HR

// Employee document watermarking
string hrPrompt = $"Create watermark for HR document '{title}' " +
    $"for employee {employeeName}, department {department}. " +
    $"Include confidentiality level, retention period, and HR compliance notice.";

เริ่มต้นวันนี้

พร้อมที่จะปฏิวัติ การปกป้องเอกสาร ด้วยลายน้ำที่ขับเคลื่อนด้วย AI หรือยัง? นี่คือแผนปฏิบัติของคุณ:

รับทดลองใช้ฟรี

คุณสามารถทดลองใช้ GroupDocs.Watermark API ได้ฟรีโดยดาวน์โหลดและติดตั้งเวอร์ชันล่าสุดจาก เว็บไซต์ดาวน์โหลดรุ่นปล่อย

สำหรับการทดสอบไม่จำกัดฟังก์ชันทั้งหมดของไลบรารี ให้รับใบอนุญาตชั่วคราวจาก หน้าการรับใบอนุญาตชั่วคราว

ขยายโซลูชันของคุณ

  1. เริ่มต้นเล็ก: เริ่มจากประเภทเอกสารเดียวและค่อยขยายทีละขั้น
  2. ติดตามประสิทธิภาพ: ตรวจสอบการใช้ API AI และความเร็วในการใส่ลายน้ำ
  3. รวบรวม Feedback: ทำงานร่วมกับทีมเพื่อปรับแต่งเทมเพลตลายน้ำ
  4. ขยายการเชื่อมต่อ: ผสานกับระบบจัดการเอกสารที่มีอยู่ของคุณ

แหล่งข้อมูลเพิ่มเติม

สำหรับเอกสารและตัวอย่างที่ครบถ้วน:


สรุป

การผสาน GroupDocs.Watermark กับ AI Assistance คืออนาคตของ การปกป้องเอกสารอัจฉริยะ โดยการใช้ AI เพื่อ สร้างลายน้ำ ที่เข้าใจบริบท คุณจะสามารถ:

  • ปกป้องเอกสาร อย่างมีประสิทธิภาพด้วยเครื่องหมายที่เกี่ยวข้องและเป็นมืออาชีพ
  • อัตโนมัติการใส่ลายน้ำ ในกระบวนการทำงานขององค์กร
  • ปรับแต่งลายน้ำ แบบไดนามิกโดยไม่ต้องทำด้วยมือ
  • ขยายการปกป้องเนื้อหา พร้อมคงความสม่ำเสมอและคุณภาพ

ไม่ว่าคุณจะต้อง เพิ่มลายน้ำ ให้กับเอกสารใหม่, ลบลายน้ำ จากไฟล์ที่มีอยู่, หรือทำ invisible watermarking สำหรับเอกสาร, วิธีนี้ให้ความยืดหยุ่นและปัญญาประดิษฐ์ที่องค์กรของคุณต้องการ

เริ่มสร้างโซลูชันลายน้ำที่ขับเคลื่อนด้วย AI วันนี้และเปลี่ยนวิธีที่คุณ ปกป้องเอกสารด้วยลายน้ำ อนาคตของ ความปลอดภัยของเอกสาร คืออัจฉริยะ, รับรู้บริบท, และอัตโนมัติ