using GeneratePDFDemo.Model;
using Oyw.PDF;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace GeneratePDFDemo
{
class Program
{
static void Main(string[] args)
{
PDFDocument<NewInfo> _PDFDocument = new PDFDocument<NewInfo>();
string dir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Template");
string wordPath = Path.Combine(dir, "月新闻稿.docx");
string path = _PDFDocument.Create(new NewInfo
{
ActiveDate = DateTime.Now,
ActiveImg = Path.Combine(dir, "TempImg.jpg"),
ActiveName = "噢耶网",
ImportantInfo = "http://ohyewang.com",
NewsContent = "编程使我快乐!",
NewsName = "Let Me Go!",
NewsImg = Path.Combine(dir, "TempImg2.jpg"),
Members = new List<Member>
{
new Member
{
Name="李春天",
Sex="女",
Tel="18986532478"
},
new Member
{
Name="肖爱国",
Sex="男",
Tel="12115687954"
}
}.ToTable()
}, wordPath, dir);
System.Diagnostics.Process.Start(path);
}
}
}
using Oyw.PDF;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
namespace GeneratePDFDemo.Model
{
public class NewInfo:PDFModel
{
[Label(Name = "ActiveImg", FieldType = FieldType.Image)]
public string ActiveImg { get; set; }
[Label(Name = "ActiveDate", FieldType = FieldType.Date, Formatter = "yyyy-MM-dd")]
public DateTime ActiveDate { get; set; }
[Label(Name = "ActiveName", FieldType = FieldType.String)]
public string ActiveName { get; set; }
[Label(Name = "ImportantInfo", FieldType = FieldType.String)]
public string ImportantInfo { get; set; }
[Label(Name = "NewsImg", FieldType = FieldType.Image)]
public string NewsImg { get; set; }
[Label(Name = "NewsName", FieldType = FieldType.String)]
public string NewsName { get; set; }
[Label(Name = "NewsContent", FieldType = FieldType.String)]
public string NewsContent { get; set; }
[Label(Name = "Members", FieldType = FieldType.Table)]
public DataTable Members { get; set; }
}
}
using Oyw.PDF;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GeneratePDFDemo.Model
{
public class Member: PDFModel
{
[ColumnAttribute(Name = "姓名")]
public string Name { get; set; }
[ColumnAttribute(Name = "性别")]
public string Sex { get; set; }
[ColumnAttribute(Name = "电话")]
public string Tel { get; set; }
}
}
Word模板:
生成结果:
资源下载地址:点击打开链接