您好,登錄后才能下訂單哦!
string filename = DateTime.Now.ToString("yyyyMMddHHmmss").ToString() + ".pdf";
float w = PageSize.A4.Width;
float h = PageSize.A4.Height;
Rectangle rect = new Rectangle(0, 0, w, h);
Document document = new Document(rect);
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(Server.MapPath(filename), FileMode.Create));
document.Open();
PdfContentByte content = writer.DirectContent;
PdfTemplate template = content.CreateTemplate(rect.Width, rect.Height);
PdfGState state = null;
template.SaveState();
template.SetColorFill(Color.RED);
template.SetColorStroke(Color.GREEN);
template.SetLineWidth(3);
state = new PdfGState();
state.FillOpacity = 0.5f;
state.AlphaIsShape = false;
template.SetGState(state);
template.Rectangle(100, 100, 100, 100);
template.FillStroke();
template.RestoreState();
template.SaveState();
template.SetColorFill(Color.RED);
template.SetColorStroke(Color.BLUE);
template.SetLineWidth(3);
state = new PdfGState();
state.FillOpacity = 0.5f;
state.AlphaIsShape = false;
template.SetGState(state);
template.Rectangle(150, 150, 100, 100);
template.FillStroke();
template.RestoreState();
template.SaveState();
//處理同一組內的元素,設置組的透明度為0.5,這樣組內元素重疊的時候是后畫的圖形覆蓋先畫的圖形,不會應為設置了透明度,讓元素重疊的部分顏色加深或者相互影響
state = new PdfGState();
state.FillOpacity = 0.5f;//設置透明度為0.5
template.SetGState(state);
PdfTemplate _template = template.CreateTemplate(rect.Width, rect.Height);
//設置透明為為一個組
PdfTransparencyGroup group = new PdfTransparencyGroup();
group.Isolated = false;//標示是否獨立
_template.Group = group;
_template.SaveState();
_template.SetColorFill(Color.RED);
_template.SetColorStroke(Color.GREEN);
_template.SetLineWidth(3);
_template.Rectangle(300, 100, 100, 100);
_template.FillStroke();
_template.RestoreState();
_template.SaveState();
_template.SetColorFill(Color.RED);
_template.SetColorStroke(Color.BLUE);
_template.SetLineWidth(3);
_template.Rectangle(350, 150, 100, 100);
_template.FillStroke();
_template.RestoreState();
template.AddTemplate(_template, 0, 0);
template.RestoreState();
content.AddTemplate(template, 1, 0, 0, -1, 0, rect.Height);
document.Close();
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。