62,242
社区成员




Document doc = new Document(new iTextSharp.text.Rectangle(564, 351));
PdfWriter writer= PdfWriter.GetInstance(doc, new FileStream(HttpContext.Current.Server.MapPath("1.pdf"), FileMode.Create));
doc.Open();
PdfContentByte cb = writer.DirectContent;
cb.BeginText();
BaseFont bfont = BaseFont.CreateFont(@"c:\windows\fonts\SIMHEI.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);//设定字体:黑体
cb.SetFontAndSize(bfont, 18);//设定字号
cb.SetCharacterSpacing(1);//设定字间距
cb.SetRGBColorFill(66, 00, 00);//设定文本颜色
cb.ShowTextAligned(PdfContentByte.ALIGN_LEFT, "在位置100,70处开始显示文本", 100, 70,0);
cb.EndText();
doc.Close();
Document doc = new Document(new iTextSharp.text.Rectangle(564, 351));
PdfWriter writer= PdfWriter.GetInstance(doc, new FileStream(HttpContext.Current.Server.MapPath("1.pdf"), FileMode.Create));
PdfContentByte cb = writer.DirectContent;
BaseFont kaiti = BaseFont.CreateFont(@"c:\windows\fonts\simkai.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
iTextSharp.text.Font font_b = new iTextSharp.text.Font(kaiti, 18, iTextSharp.text.Font.BOLD, iTextSharp.text.Color.BLUE);
Phrase ps_bold = new Phrase("中文单粗体测试", font_b);
ColumnText.ShowTextAligned(cb, Element.ALIGN_LEFT, ps_bold, 155, 40, 0);
public virtual void SetFontAndSize(BaseFont bf, float size)
{
this.CheckWriter();
this.state.size = size;
this.state.fontDetails = this.writer.AddSimple(bf);
PageResources pageResources = this.PageResources;
PdfName fontName = this.state.fontDetails.FontName;
fontName = pageResources.AddFont(fontName, this.state.fontDetails.IndirectReference);
this.content.Append(fontName.GetBytes()).Append(' ').Append(size).Append(" Tf").Append_i(this.separator);
}
public override void SetFontAndSize(BaseFont bf, float size)
{
this.CheckWriter();
base.state.size = size;
if (bf.FontType == 4)
{
base.state.fontDetails = new FontDetails(null, ((DocumentFont) bf).IndirectReference, bf);
}
else
{
base.state.fontDetails = base.writer.AddSimple(bf);
}
PdfName fontName = stdFieldFontNames.get_Item(bf.PostscriptFontName);
if (fontName == null)
{
if (bf.Subset && (bf.FontType == 3))
{
fontName = base.state.fontDetails.FontName;
}
else
{
fontName = new PdfName(bf.PostscriptFontName);
base.state.fontDetails.Subset = false;
}
}
this.PageResources.AddFont(fontName, base.state.fontDetails.IndirectReference);
base.content.Append(fontName.GetBytes()).Append(' ').Append(size).Append(" Tf").Append_i(base.separator);
}
public static Font CreateFont(string strFontName, float FontSize, Color TextColor, int FontStyle)
{
Font font = FontFactory.GetFont(strFontName, FontSize, FontStyle, TextColor);
return font;
}
/// <summary>
/// 创建中文字体(实现中文)
/// </summary>
/// <returns></returns>
public static Font CreateChineseFont()
{
BaseFont.AddToResourceSearch(@"E:\临时存储文件夹\ASP.Net操作PDF文件\实现方法包\iTextAsian-1.0.dll");
BaseFont.AddToResourceSearch(@"E:\临时存储文件夹\ASP.Net操作PDF文件\实现方法包\iTextAsianCmaps-1.0.dll");
BaseFont baseFT = BaseFont.CreateFont("STSong-Light", "UniGB-UCS2-H", BaseFont.EMBEDDED);
Font font = new Font(baseFT);
return font;
}