iTextSharp.text.Image chi_jjqx = iTextSharp.text.Image.getInstance(Path + "chi1.jpg");
            chi_jjqx.scalePercent(66, 66);
            Chunk ch_chi_jjqx = new Chunk(chi_jjqx, 0, -3);
            Cell t5_c3 = new Cell(ch_chi_jjqx);
            t5_c3.setHorizontalAlignment("right");
            t5_c3.BorderColor = new Color(255, 255, 255);
            t5.addCell(t5_c3);//t5是一个table
            document.Add(t5);            float x_jjqx_score;
            x_jjqx_score = chi_jjqx.Image.AbsoluteX;//值为NaN
            x_jjqx_score = ch_chi_jjqx.Image.AbsoluteX;//值为0
            //这两种获取方法都没有我应该如何获取已经加载的图片的具体坐标值呢???

解决方案 »

  1.   

    有用过itextsharp的麻烦解答一下哦
      

  2.   

    我好像用过 但是只是用来输出pdf文件,。
      

  3.   

    http://www.2cto.com/kf/201111/110301.html
    看看吧 往下拉一拉好像有点靠谱
      

  4.   

    用這個控件
    http://ufo-crackerx.blog.163.com/blog/static/1130787782012326102840771/
      

  5.   

    这个我看懂了,但没有解决我的问题,我的问题是先后加载两个图片进来,第一个图片加载到某cell里,并没有用到SetAbsolutePosition()方法,第二个图片要加载在第一个图片之上某个根据第一个图片的长度计算出来的位置。
    现在就是不知道怎么获取第一个被加载到cell中的图片的确切位置!!唉
      

  6.   

    官方:
    http://www.gnostice.com/pdfone_dot_net.asp
      

  7.   


    我必须用itextsharp去解决
    继续寻求答案,一个图片已加载,怎么根据这个图片的位置加载设定第二个图片的相对位置??
      

  8.   

    這個也是不錯的選擇
    http://www.aspose.com/categories/.net-components/aspose.pdf-for-.net/default.aspx
      

  9.   

    Cell t5_c3
    根据Cell的位置来确定图片的位置
      

  10.   

    试过,这个cell的位置也获取不到,愁啊
      

  11.   


    还是上图比较直接,图中A为圆圈图,B为色块横条图
    先加载B图,代码为iTextSharp.text.Image chi_jjqx = iTextSharp.text.Image.getInstance(Path + "chi1.jpg");
    chi_jjqx.scalePercent(66, 66);
    chi_jjqx.Alignment = Image.RIGHT;
    document.Add(chi_jjqx);因为这个图紧跟在前面的内容后面,所以不能用setAbsolutePosition这个方法固定位置
    而A图要通过数值计算参照B图来得出具体的位置,先在获取不到B的X,Y坐标值怎么办呢!!!???
      

  12.   

    请问如何用itextsharp 获取PDF第一页的图片,保存
      

  13.   

    挖坟光荣
    MemoryStream outputStream = new MemoryStream();
                PdfReader pdfReader = new PdfReader(inputPath);
                int numberOfPages = pdfReader.NumberOfPages;
                PdfStamper pdfStamper = new PdfStamper(pdfReader, outputStream);
                PdfContentByte waterMarkContent;
                iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(waterImagePath);
                image.SetAbsolutePosition(x, y);
                for (int i = 1; i <= numberOfPages; i++)
                {
                    waterMarkContent = pdfStamper.GetUnderContent(i);
                    waterMarkContent.AddImage(image);
                }
                pdfStamper.Close();
                byte[] content = outputStream.ToArray();
                outputStream.Close();            string TempPath = outputPath.Replace(".pdf", "_temp.pdf");
                using (FileStream fs = File.Create(TempPath))
                {
                    fs.Write(content, 0, content.Length);
                }