Beispiel #1
0
        virtual public void FieldCheckTest2()
        {
            String[] LANGUAGES = { "Russian", "English", "Dutch", "French" };

            string filename = OUT + "FieldCheckTest2.pdf";
            FileStream fos = new FileStream(filename, FileMode.Create);

            Document document = new Document();

            PdfAWriter writer = PdfAWriter.GetInstance(document, fos, PdfAConformanceLevel.PDF_A_1B);
            writer.CreateXmpMetadata();

            document.Open();

            Font font = FontFactory.GetFont(RESOURCES + "FreeMonoBold.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 12);

            FileStream iccProfileFileStream = File.Open(RESOURCES + "sRGB Color Space Profile.icm", FileMode.Open, FileAccess.Read, FileShare.Read);
            ICC_Profile icc = ICC_Profile.GetInstance(iccProfileFileStream);
            iccProfileFileStream.Close();

            writer.SetOutputIntents("Custom", "", "http://www.color.org", "sRGB IEC61966-2.1", icc);


            PdfFormField radiogroup
                    = PdfFormField.CreateRadioButton(writer, true);
            radiogroup.FieldName = "language";
            Rectangle rect = new Rectangle(40, 806, 60, 788);
            RadioCheckField radio;
            PdfFormField radiofield;
            for (int page = 0; page < LANGUAGES.Length; )
            {
                radio = new PdfARadioCheckField(writer, rect, null, LANGUAGES[page]);
                radio.BackgroundColor = new GrayColor(0.8f);
                radiofield = radio.RadioField;
                radiofield.PlaceInPage = ++page;
                radiogroup.AddKid(radiofield);
            }
            writer.AddAnnotation(radiogroup);
            PdfContentByte cb = writer.DirectContent;
            for (int i = 0; i < LANGUAGES.Length; i++)
            {
                cb.BeginText();
                cb.SetFontAndSize(font.BaseFont, 18);
                cb.ShowTextAligned(Element.ALIGN_LEFT, LANGUAGES[i], 70, 790, 0);
                cb.EndText();
                document.NewPage();
            }
            document.Close();
        }
Beispiel #2
0
        virtual public void FieldCheckTest1()
        {
            String[] LANGUAGES = { "Russian", "English", "Dutch", "French", "Spanish", "German" };

            string filename = OUT + "fieldCheckTest1.pdf";
            FileStream fos = new FileStream(filename, FileMode.Create);

            Document document = new Document();

            PdfAWriter writer = PdfAWriter.GetInstance(document, fos, PdfAConformanceLevel.PDF_A_1B);
            writer.CreateXmpMetadata();

            document.Open();

            Font font = FontFactory.GetFont(RESOURCES + "FreeMonoBold.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED, 12);

            FileStream iccProfileFileStream = File.Open(RESOURCES + "sRGB Color Space Profile.icm", FileMode.Open, FileAccess.Read, FileShare.Read);
            ICC_Profile icc = ICC_Profile.GetInstance(iccProfileFileStream);
            iccProfileFileStream.Close();

            writer.SetOutputIntents("Custom", "", "http://www.color.org", "sRGB IEC61966-2.1", icc);


            PdfContentByte canvas = writer.DirectContent;
            Rectangle rect;
            PdfFormField field;
            PdfFormField radiogroup
                    = PdfFormField.CreateRadioButton(writer, true);
            radiogroup.FieldName = "language";
            RadioCheckField radio;
            for (int i = 0; i < LANGUAGES.Length; i++)
            {
                rect = new Rectangle(
                        40, 806 - i * 40, 60, 788 - i * 40);
                radio = new PdfARadioCheckField(
                        writer, rect, null, LANGUAGES[i]);
                radio.BorderColor = GrayColor.GRAYBLACK;
                radio.BackgroundColor = GrayColor.GRAYWHITE;
                radio.CheckType = i + 1;
                radio.Checked = true;
                field = radio.RadioField;
                radiogroup.AddKid(field);
                ColumnText.ShowTextAligned(canvas, Element.ALIGN_LEFT,
                        new Phrase(LANGUAGES[i], font), 70, 790 - i * 40, 0);
            }
            writer.AddAnnotation(radiogroup);


            document.Close();
        }