Пример #1
0
 internal void Finish(PdfStreamElement LastElement)
 {
     if (!this.finished)
     {
         this.finished = true;
         if (LastElement != null && LastElement.IsText)
         {
             sw.WriteLine("ET");
         }
     }
     sw.Flush();
 }
        internal void Finish(PdfStreamElement LastElement)
		{
			if (!this.finished)
			{
				this.finished=true;
                if (LastElement != null && LastElement.IsText)
				{
					sw.WriteLine("ET");
					
				}
			}
			sw.Flush();
		}
Пример #3
0
        internal override int Write(Stream s)
        {
            int pos = 0;

            using (MemoryStream ms = new MemoryStream())
            {
                Stream content = ms;

                //if (deflateCompression && compressionType != null)
                //{
                //    content = (Stream)Activator.CreateInstance(compressionType, new object[] { ms });
                //}

                using (content)
                {
                    PdfStreamWriter  lw          = new PdfStreamWriter(content, this.pageHeight);
                    PdfStreamElement lastElement = null;

                    foreach (PdfStreamElement plo in this.StreamObjectElements)
                    {
                        lastElement = lw.Write(plo, lastElement);
                    }
                    lw.Finish(lastElement);
                    content.Flush();
                    //if (deflateCompression && compressionType != null)
                    //{
                    //    compressionType.InvokeMember("Finish", BindingFlags.InvokeMethod
                    //    , Type.DefaultBinder, content, new object[0]);
                    //}

                    pos += Utility.Write(s, this.HeadObj, true);
                    pos += Utility.Write(s, "<< " +
                                         //(deflateCompression ? "/Filter /FlateDecode " :
                                         " "
                                         //)
                                         + " /Length " + ms.Length + " >>", true);
                    pos += Utility.Write(s, "stream", true);

                    ms.WriteTo(s);
                    pos += (int)ms.Length;
                }
            }

            pos += Utility.Write(s, "", true);
            pos += Utility.Write(s, "endstream", true);
            pos += Utility.Write(s, "endobj", true);


            return(pos);
        }
        internal PdfStreamElement Write(PdfStreamElement StreamElement, PdfStreamElement LastElement)
		{
            List<PdfStreamElement> subElements = StreamElement.SubElements;
            if (subElements != null)
            {
                foreach (PdfStreamElement element in subElements)
                {
                    LastElement = Write(element, LastElement);
                }
                return LastElement;
            }

            //if (LastElement==null || StreamElement.IsText != LastElement.IsText)
            //{
            //    sw.WriteLine(StreamElement.IsText ? "BT" : "ET");
            //}

            //if (LastElement == null || StreamElement.Colorrg != Color.Empty && LastElement.Colorrg != StreamElement.Colorrg)
            //{
            //    sw.WriteLine(ColorrgLine(StreamElement.Colorrg));
            //}
            //if (LastElement == null || StreamElement.ColorRG != Color.Empty && LastElement.ColorRG != StreamElement.ColorRG)
            //{
            //    sw.WriteLine(ColorRGLine(StreamElement.ColorRG));
            //}
            //if (LastElement == null || StreamElement.StrokeWidth > -1 && LastElement.StrokeWidth != StreamElement.StrokeWidth)
            //{
            //    sw.WriteLine(StreamElement.StrokeWidth.ToString("0.##", CultureInfo.InvariantCulture) + " w");
            //}
			sw.Flush();

			StreamElement.StreamElementWrite(this.sw.BaseStream,this.ph);

            return LastElement;

		}
Пример #5
0
        internal PdfStreamElement Write(PdfStreamElement StreamElement, PdfStreamElement LastElement)
        {
            List <PdfStreamElement> subElements = StreamElement.SubElements;

            if (subElements != null)
            {
                foreach (PdfStreamElement element in subElements)
                {
                    LastElement = Write(element, LastElement);
                }
                return(LastElement);
            }

            //if (LastElement==null || StreamElement.IsText != LastElement.IsText)
            //{
            //    sw.WriteLine(StreamElement.IsText ? "BT" : "ET");
            //}

            //if (LastElement == null || StreamElement.Colorrg != Color.Empty && LastElement.Colorrg != StreamElement.Colorrg)
            //{
            //    sw.WriteLine(ColorrgLine(StreamElement.Colorrg));
            //}
            //if (LastElement == null || StreamElement.ColorRG != Color.Empty && LastElement.ColorRG != StreamElement.ColorRG)
            //{
            //    sw.WriteLine(ColorRGLine(StreamElement.ColorRG));
            //}
            //if (LastElement == null || StreamElement.StrokeWidth > -1 && LastElement.StrokeWidth != StreamElement.StrokeWidth)
            //{
            //    sw.WriteLine(StreamElement.StrokeWidth.ToString("0.##", CultureInfo.InvariantCulture) + " w");
            //}
            sw.Flush();

            StreamElement.StreamElementWrite(this.sw.BaseStream, this.ph);

            return(LastElement);
        }
		private void AddInternal(PdfStreamElement PdfStreamElement)
		{          
			this.PdfStream.StreamObjectElements.Add(PdfStreamElement);
		}
Пример #7
0
 private void AddInternal(PdfStreamElement PdfStreamElement)
 {
     this.PdfStream.StreamObjectElements.Add(PdfStreamElement);
 }