itextsharp的顏色空間

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));
   //Sets the transparency blending colorspace to RGB. The default blending colorspace is CMYK and will result in faded colors in the screen and in printing. Calling this method will return the RGB colors to what is expected. The RGB blending will be applied to all subsequent pages until other value is set. Note that this is a generic solution that may not work in all cases. app

   //Parameters:
   //rgbTransparencyBlending - true to set the transparency blending colorspace to RGB, false to use the default blending colorspaceide

//設置顏色空間,默認是CMKY顏色空間,若是設置爲true則爲RGB顏色空間
   writer.RgbTransparencyBlending = true;
   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();this

   content.AddTemplate(template, 1, 0, 0, -1, 0, rect.Height);
   document.Close();spa

相關文章
相關標籤/搜索