Expose a REST API to Watermark Word Documents

Gerekli using yönergelerini dosyanızın en üstüne ekleyin.

Bu öğretici size rehberlik eder. ASP.NET Core’da Word belgelerine filigran eklemek için bir REST API’si nasıl yayınlanır. Adım adım talimatlar, kurulum detayları ve büyük platformlar için dağıtım yönergeleri içerir.

Adım 8: Görsel Özelliklerini Ayarlayın

  1. Eklenen görselin boyutunu ve konumunu ayarlayın.
  2. Yükle Aspose.Words for .NET NuGet Package Manager aracılığıyla.
  3. Adım 9: Görseli Bağlantılı Dosya Olarak Ekleyin.
  4. İmleci son paragrafın sonuna taşıyın ve görseli bir dosyaya bağlantı olarak ekleyin.
  5. Adım 10: Belgeyi Kaydet.
  6. Son olarak, değiştirilmiş Word belgesini diske kaydedin.
  7. .

Bu adımlar, oluşturmak ve yayınlamak için ayrıntılı bir yaklaşım sunar filigran API’si.

İşte bahsedilen tüm adımları içeren tam bir örnek:

Sonuç:

using System.IO;
using System.Threading.Tasks;
using Aspose.Words;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace WatermarkAPI.Controllers
{
    [ApiController]
    [Route("api/[controller]")]
    public class WatermarkController : ControllerBase
    {
        [HttpPost("add-watermark")]
        public async Task<IActionResult> AddWatermark(IFormFile file, [FromQuery] string watermarkText)
        {
            if (file == null || file.Length == 0 || string.IsNullOrWhiteSpace(watermarkText))
                return BadRequest("Please upload a valid Word document and provide a watermark text.");

            try
            {
                var tempFilePath = Path.GetTempFileName();
                using (var stream = new FileStream(tempFilePath, FileMode.Create))
                {
                    await file.CopyToAsync(stream);
                }

                Document doc = new Document(tempFilePath);

                TextWatermarkOptions options = new TextWatermarkOptions
                {
                    FontFamily = "Arial",
                    FontSize = 40,
                    Color = System.Drawing.Color.LightGray,
                    Layout = WatermarkLayout.Diagonal,
                    IsSemitrasparent = true
                };
                doc.Watermark.SetText(watermarkText, options);

                var outputStream = new MemoryStream();
                doc.Save(outputStream, SaveFormat.Docx);

                outputStream.Position = 0;
                return File(outputStream, "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "watermarked.docx");
            }
            catch (System.Exception ex)
            {
                return StatusCode(500, $"Internal server error: {ex.Message}");
            }
        }
    }
}

Bu öğreticide, C# kullanarak bir Word belgesine nasıl resim ekleyeceğinizi gösterdik. Bu adımları izleyerek, gömülü ve bağlantılı resimleri ekleyebilir, Word belgelerinizin estetik ve bilgilendirici kalitesini artırabilirsiniz. Daha ileri keşifler için, mevcut dosyalara güvenmek yerine Word belgelerini programlı olarak oluşturmayı düşünün.

Windows

  1. C# kullanarak bir MS Word belgesindeki tabloya programlı bir şekilde satır eklemeyi, kod parçacıkları ve adım adım talimatlar dahil olmak üzere öğrenin.
  2. İçe aktar Aspose.Words ve Aspose.Words.Tables ad alanlarını.:

Linux

  1. Satır eklemek istediğiniz tabloyu indeksine göre alın..:
  2. İçe aktar Aspose.Words ve Aspose.Words.Tablolar ad alanlarını.:
  3. Satır’a metin Paragraflar içeren birkaç Hücre ekleyin.

macOS

  1. Yükle .NET çalışma zamanını şuradan resmi site .
  2. Eklenen Table Rows ile MS Word belgesini yeniden kaydedin.:

Yaygın Sorunlar ve Çözümler

  1. Geçersiz Girdi Hataları: Yüklenen dosyanın geçerli bir Word belgesi olduğundan ve filigran metninin boş olmadığından emin olun.
  2. Erişim Reddedildi Hataları: Linux/macOS’ta, uygulama klasörüne uygun izinleri verin.
  3. Performans Sorunları: Büyük dosyalar için, akışlar yerine dosyaları doğrudan diskten işleyerek bellek kullanımını optimize edin.

Bu kılavuz, Word belgelerine filigran eklemek için bir REST API’si oluşturmayı kullanarak Aspose.Words for .NET ve tüm büyük platformlarda dağıtın.

 Türkçe