Web Analytics

MiniWord

⭐ 704 stars Hindi by mini-software

NuGet GitHub stars version Ask DeepWiki


version version version version version version version version version version version version version version version version version


आपका Star और dotnate MiniWord को और बेहतर बना सकते हैं


परिचय

MiniWord एक आसान और प्रभावी .NET वर्ड टेम्प्लेट लाइब्रेरी है।

image

शुरुआत कैसे करें

इंस्टॉलेशन

त्वरित शुरुआत

टेम्प्लेट "जो आप देखते हैं वही आपको मिलता है" डिज़ाइन का पालन करता है, और टेम्प्लेट टैग की शैली पूरी तरह से संरक्षित रहती है।

var value = new Dictionary(){["title"] = "Hello MiniWord"};
MiniSoftware.MiniWord.SaveAsByTemplate(outputPath, templatePath, value);
image

इनपुट, आउटपुट

SaveAsByTemplate(string path, string templatePath, Dictionary value)
SaveAsByTemplate(string path, byte[] templateBytes, Dictionary value)
SaveAsByTemplate(this Stream stream, string templatePath, Dictionary value)
SaveAsByTemplate(this Stream stream, byte[] templateBytes, Dictionary value)

टैग्स

MiniWord टेम्पलेट फॉर्मेट स्ट्रिंग Vue, React की तरह {{tag}} है, उपयोगकर्ताओं को केवल यह सुनिश्चित करना होता है कि टैग और वैल्यू पैरामीटर की कुंजी एक जैसी हो, फिर सिस्टम उन्हें स्वतः ही बदल देगा।

टेक्स्ट

{{tag}}
##### उदाहरण

var value = new Dictionary()
{
    ["Name"] = "Jack",
    ["Department"] = "IT Department",
    ["Purpose"] = "Shanghai site needs a new system to control HR system.",
    ["StartDate"] = DateTime.Parse("2022-09-07 08:30:00"),
    ["EndDate"] = DateTime.Parse("2022-09-15 15:30:00"),
    ["Approved"] = true,
    ["Total_Amount"] = 123456,
};
MiniWord.SaveAsByTemplate(path, templatePath, value);
##### टेम्प्लेट

image

##### परिणाम

image

छवि

मूल्य प्रकार है MiniWordPicture

##### उदाहरण

var value = new Dictionary()
{
    ["Logo"] = new MiniWordPicture() { Path= PathHelper.GetFile("DemoLogo.png"), Width= 180, Height= 180 }
};
MiniWord.SaveAsByTemplate(path, templatePath, value);

##### टेम्पलेट

image

##### परिणाम

image

सूची

tag मान string[] या IList प्रकार का होता है

##### उदाहरण

var value = new Dictionary()
{
    ["managers"] = new[] { "Jack" ,"Alan"},
    ["employees"] = new[] { "Mike" ,"Henry"},
};
MiniWord.SaveAsByTemplate(path, templatePath, value);
टेम्पलेट

image

##### परिणाम

image

तालिका

टैग मान IEmerable> प्रकार का है

##### उदाहरण

var value = new Dictionary()
{
    ["TripHs"] = new List>
    {
        new Dictionary
        {
            { "sDate",DateTime.Parse("2022-09-08 08:30:00")},
            { "eDate",DateTime.Parse("2022-09-08 15:00:00")},
            { "How","Discussion requirement part1"},
            { "Photo",new MiniWordPicture() { Path = PathHelper.GetFile("DemoExpenseMeeting02.png"), Width = 160, Height = 90 }},
        },
        new Dictionary
        {
            { "sDate",DateTime.Parse("2022-09-09 08:30:00")},
            { "eDate",DateTime.Parse("2022-09-09 17:00:00")},
            { "How","Discussion requirement part2 and development"},
            { "Photo",new MiniWordPicture() { Path = PathHelper.GetFile("DemoExpenseMeeting01.png"), Width = 160, Height = 90 }},
        },
    }
};
MiniWord.SaveAsByTemplate(path, templatePath, value);
##### टेम्पलेट

image

##### परिणाम

image

सूची के भीतर सूची

टैग मान IEnumerable प्रकार का है। टेम्पलेट में {{foreach और endforeach}} टैग्स जोड़ना आवश्यक है।

##### उदाहरण

var value = new Dictionary()
{
    ["TripHs"] = new List>
    {
        new Dictionary
        {
            { "sDate", DateTime.Parse("2022-09-08 08:30:00") },
            { "eDate", DateTime.Parse("2022-09-08 15:00:00") },
            { "How", "Discussion requirement part1" },
            {
                "Details", new List()
                {
                    new MiniWordForeach()
                    {
                        Value = new Dictionary()
                        {
                            {"Text", "Air"},
                            {"Value", "Airplane"}
                        },
                        Separator = " | "
                    },
                    new MiniWordForeach()
                    {
                        Value = new Dictionary()
                        {
                            {"Text", "Parking"},
                            {"Value", "Car"}
                        },
                        Separator = " / "
                    }
                }
            }
        }
    }
};
MiniWord.SaveAsByTemplate(path, templatePath, value);
##### टेम्पलेट

before_foreach

Screenshot 2023-08-08 at 17 59 37

##### परिणाम

after_foreach

Screenshot 2023-08-08 at 18 00 15

टेम्पलेट के अंदर if स्टेटमेंट

कई पैराग्राफ के लिए, @if और @endif टैग का उपयोग करें। एकल पैराग्राफ और foreach के अंदर, {{if और endif}} टैग का उपयोग करें जब टेम्पलेट आवश्यक हो।

##### उदाहरण

var value = new Dictionary()
{
    ["Name"] = new List(){
        new MiniWordHyperLink(){
            Url = "https://google.com",
            Text = "測試連結22!!"
        },
        new MiniWordHyperLink(){
            Url = "https://google1.com",
            Text = "測試連結11!!"
        }
    },
    ["Company_Name"] = "MiniSofteware",
    ["CreateDate"] = new DateTime(2021, 01, 01),
    ["VIP"] = true,
    ["Points"] = 123,
    ["APP"] = "Demo APP",
};
MiniWord.SaveAsByTemplate(path, templatePath, value);
##### मल्टी पैराग्राफ के लिए टेम्पलेट

before_if

##### मल्टी पैराग्राफ का परिणाम

after_if

##### सिंगल पैराग्राफ के लिए टेम्पलेट

Screenshot 2023-08-08 at 17 55 46

##### सिंगल पैराग्राफ का परिणाम

Screenshot 2023-08-08 at 17 56 47

ColorText

##### उदाहरण

var value = new
{
    Company_Name = new MiniWordColorText { Text = "MiniSofteware", FontColor = "#eb70AB", },
    Name = new[] {
        new MiniWordColorText { Text = "Ja", HighlightColor = "#eb70AB" },
        new MiniWordColorText { Text = "ck", HighlightColor = "#a56abe" }
    },
    CreateDate = new MiniWordColorText
    {
        Text = new DateTime(2021, 01, 01).ToString(),
        HighlightColor = "#eb70AB",
        FontColor = "#ffffff",
    },
    VIP = true,
    Points = 123,
    APP = "Demo APP",
};
MiniWord.SaveAsByTemplate(path, templatePath, value);

अन्य

POCO या डायनामिक पैरामीटर

v0.5.0 में POCO या डायनामिक पैरामीटर का समर्थन है

var value = new { title = "Hello MiniWord" };
MiniWord.SaveAsByTemplate(outputPath, templatePath, value);

फ़ॉन्ट रंग और हाइलाइट रंग

var value = new
{
    Company_Name = new MiniWordColorText { Text = "MiniSofteware", FontColor = "#eb70AB" },
    Name = new MiniWordColorText { Text = "Jack", HighlightColor = "#eb70AB" },
    CreateDate = new MiniWordColorText { Text = new DateTime(2021, 01, 01).ToString(), HighlightColor = "#eb70AB", FontColor = "#ffffff" },
    VIP = true,
    Points = 123,
    APP = "Demo APP",
};

हाइपरलिंक

यदि मान प्रकार MiniWordHyperLink है तो सिस्टम टेम्पलेट स्ट्रिंग को हाइपरलिंक से बदल देगा।

var value = new
{
    ["Name"] = new MiniWordHyperLink(){
        Url = "https://google.com",
        Text = "Test Link!!"
    },
    ["Company_Name"] = "MiniSofteware",
    ["CreateDate"] = new DateTime(2021, 01, 01),
    ["VIP"] = true,
    ["Points"] = 123,
    ["APP"] = "Demo APP",
};
MiniWord.SaveAsByTemplate(path, templatePath, value);

उदाहरण

#### ASP.NET Core 3.1 API निर्यात

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using MiniSoftware;

public class Program { public static void Main(string[] args) => CreateHostBuilder(args).Build().Run();

public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder => webBuilder.UseStartup()); }

public class Startup { public void ConfigureServices(IServiceCollection services) => services.AddMvc(); public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseStaticFiles(); app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{controller=api}/{action=Index}/{id?}"); }); } }

public class ApiController : Controller { public IActionResult Index() { return new ContentResult { ContentType = "text/html", StatusCode = (int)HttpStatusCode.OK, Content = @" DownloadWordFromTemplatePath
DownloadWordFromTemplateBytes
" }; }

static Dictionary defaultValue = new Dictionary() { ["title"] = "FooCompany", ["managers"] = new List> { new Dictionary{{"name","Jack"},{ "department", "HR" } }, new Dictionary {{ "name", "Loan"},{ "department", "IT" } } }, ["employees"] = new List> { new Dictionary{{ "name", "Wade" },{ "department", "HR" } }, new Dictionary {{ "name", "Felix" },{ "department", "HR" } }, new Dictionary{{ "name", "Eric" },{ "department", "IT" } }, new Dictionary {{ "name", "Keaton" },{ "department", "IT" } } } };

public IActionResult DownloadWordFromTemplatePath() { string templatePath = "TestTemplateComplex.docx";

Dictionary value = defaultValue;

MemoryStream memoryStream = new MemoryStream(); MiniWord.SaveAsByTemplate(memoryStream, templatePath, value); memoryStream.Seek(0, SeekOrigin.Begin); return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.wordprocessingml.document") { FileDownloadName = "demo.docx" }; }

private static Dictionary TemplateBytesCache = new Dictionary();

static ApiController() { string templatePath = "TestTemplateComplex.docx"; byte[] bytes = System.IO.File.ReadAllBytes(templatePath); TemplateBytesCache.Add(templatePath, bytes); }

public IActionResult DownloadWordFromTemplateBytes() { byte[] bytes = TemplateBytesCache["TestTemplateComplex.docx"];

Dictionary value = defaultValue;

MemoryStream memoryStream = new MemoryStream(); MiniWord.SaveAsByTemplate(memoryStream, bytes, value); memoryStream.Seek(0, SeekOrigin.Begin); return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.wordprocessingml.document") { FileDownloadName = "demo.docx" }; } }

समर्थन : दान लिंक

--- Tranlated By Open Ai Tx | Last indexed: 2025-07-17 ---