Expose a REST API to Watermark Word Documents
1. lépés: Hivatkozás hozzáadása a System.Drawing-re
Ez az útmutató segít Önnek a hogyan tegyünk közzé egy REST API-t a Word dokumentumokhoz vízjelek hozzáadásához ASP.NET Core-ban. Tartalmaz lépésről-lépésre útmutatókat, beállítási részleteket és telepítési irányelveket a főbb platformokhoz.
Példányosítsd a DocumentBuilder osztályt a dokumentumba írás megkönnyítése érdekében.
- lépés: Kurzor áthelyezése a fejlécbe.
- Telepítés Aspose.Words for .NET a NuGet Package Manager segítségével.
- Helyezd a kurzort a Word dokumentum elsődleges fejlécébe.
- lépés: Kép beszúrása a fejlécbe.
- Szúrj be egy képet a Word dokumentum fejlécébe.
- lépés: Kép tulajdonságainak beállítása.
- Állítsa be a beillesztett kép méretét és pozícióját.
Ezek a lépések részletes megközelítést nyújtanak a létrehozáshoz és a közzétételhez vízjel API.
Mozgassa a kurzort az utolsó bekezdéshez, és adjon hozzá egy képet, mint fájlra mutató hivatkozást.
- lépés: Dokumentum mentése:
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}");
}
}
}
}Végül mentse a módosított Word-dokumentumot a lemezen.
Windows
- Példa kód képek hozzáadásához Word-dokumentumba.
- Itt egy teljes példa, amely tartalmazza az összes említett lépést:
Linux
- Ez a bemutató megmutatta, hogyan lehet képeket hozzáadni egy Word-dokumentumhoz C# használatával. A lépések követésével beágyazott és hivatkozott képeket egyaránt beilleszthet, ezáltal javítva a Word-dokumentumok esztétikai és információs minőségét. További felfedezéshez fontolja meg a Word-dokumentumok programozott létrehozását a meglévő fájlokra való támaszkodás helyett.:
- Itt egy teljes példa, amely tartalmazza az összes említett lépést:
- Ismerje meg, hogyan lehet programozottan sorokat hozzáadni egy táblához egy MS Word dokumentumban C# használatával, kódrészletekkel és lépésről-lépésre útmutatóval.
macOS
- Telepítse a .NET futtatókörnyezetet a hivatalos weboldal .
- Nyissa meg a MS Word dokumentumot C# kóddal.:
Gyakori problémák és javítások
- Érvénytelen bemeneti hibák: Győződjön meg arról, hogy a feltöltött fájl érvényes Word-dokumentum, és a vízjel szövege nem üres.
- Hozzáférés megtagadási hibák: Linux/macOS rendszeren adjon megfelelő jogosultságokat az alkalmazás mappájának.
- Teljesítményproblémák: Nagy fájlok esetén optimalizálja a memóriahasználatot úgy, hogy a fájlokat közvetlenül a lemezről dolgozza fel a stream-ek helyett.
Ez az útmutató megmutatta, hogyan hozhat létre egy REST API-t a Word dokumentumok vízjelezéséhez a használatával Aspose.Words for .NET és telepítse azt minden főbb platformon.