[No0000157].net core项目中拼音,excel,pdf处理库

时间:2022-03-10 14:31:01

汉字转拼音

1、 HxfPinYin

public static class Pinyin
{
public static string ConvertEncoding(string text, Encoding srcEncoding, Encoding dstEncoding);
public static string GetChineseText(string pinyin);
public static string GetChineseText(string pinyin, Encoding encoding);
public static string GetInitials(string text);
public static string GetInitials(string text, Encoding encoding);
public static string GetPinyin(string text);
public static string GetPinyin(string text, Encoding encoding);
public static string GetPinyin(char ch);
public static string GetPinyin(char ch, Encoding encoding);
}
https://www.nuget.org/packages/HxfPinYin/

excel操作

1、EPPlus.Core

生成excel表格

string sFileName = $"{Guid.NewGuid()}.xlsx";
FileInfo file = new FileInfo(sFileName);
string[] title = { "货品编号",
"货品名称",
"条码",
"规格",
"基本单位",
"当前库存",
"库存下限",
"库存上限"
};
using (ExcelPackage package = new ExcelPackage(file))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("库存信息");
int index = 1;
foreach (string t in title)
{
worksheet.Cells[1, index++].Value = t;
}
index = 2;
foreach (var d in list)
{
worksheet.Cells[index,1].Value = d.ProductCode;
worksheet.Cells[index, 2].Value = d.ProductName;
worksheet.Cells[index, 3].Value = d.BarCode;
worksheet.Cells[index, 4].Value = d.SpecValues;
worksheet.Cells[index, 5].Value = d.BaseUnit;
worksheet.Cells[index, 6].Value = d.Quantity;
worksheet.Cells[index, 7].Value = d.DownLimitQuantity;
worksheet.Cells[index, 8].Value = d.UpLimitQuantity;
index++;
}
package.Save();
}
https://www.nuget.org/packages/EPPlus.Core/

pdf操作

1、iTextSharp.LGPLv2.Core

生成pdf

string tempFilePath = $"{Guid.NewGuid()}.pdf";
string[] title = { "货品编号",
"货品名称",
"条码",
"规格",
"基本单位",
"当前库存",
"库存下限",
"库存上限"
};
using (FileStream wfs = new FileStream(tempFilePath, FileMode.OpenOrCreate)) {
//PageSize.A4.Rotate();当需要把PDF纸张设置为横向时
Document docPDF = new Document(PageSize.A4,10, 10, 20,20);
PdfWriter write = PdfWriter.GetInstance(docPDF, wfs);
docPDF.Open();
//在这里需要注意的是,itextsharp不支持中文字符,想要显示中文字符的话需要自己设置字体
BaseFont bsFont = BaseFont.CreateFont(@"C:\Windows\Fonts\simsun.ttc,0", BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
Font font = new Font(bsFont); float[] clos = new float[] { 40,40,40,20,20,30,30,30};// 宽度
PdfPTable tablerow1 = new PdfPTable(clos);
foreach (string t in title)
{
PdfPCell cell = new PdfPCell(new Paragraph(t, font));
cell.MinimumHeight = 4f;
tablerow1.AddCell(cell);
}
foreach (var d in list)
{
tablerow1.AddCell(new PdfPCell(new Paragraph(d.ProductCode, font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.ProductName, font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.BarCode, font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.SpecValues, font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.BaseUnit, font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.Quantity.ToString(), font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.DownLimitQuantity.ToString(), font)));
tablerow1.AddCell(new PdfPCell(new Paragraph(d.UpLimitQuantity.ToString(), font)));
}
docPDF.Add(tablerow1);//将表格添加到pdf文档中
docPDF.Close();//关闭
write.Close();
wfs.Close();
}
https://www.nuget.org/packages/iTextSharp.LGPLv2.Core/