首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在iTextSharp中找到当前(X,Y)位置?

在iTextSharp中,要找到当前(X,Y)位置,可以使用PdfContentByte类的GetX()和GetY()方法。这两个方法分别返回当前水平坐标和垂直坐标的值。以下是一个简单的示例:

代码语言:csharp
复制
using System;
using iTextSharp.text;
using iTextSharp.text.pdf;

namespace iTextSharpExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个新的PDF文档
            Document document = new Document();
            PdfWriter.GetInstance(document, new System.IO.FileStream("output.pdf", System.IO.FileMode.Create));
            document.Open();

            // 获取PdfContentByte实例
            PdfContentByte contentByte = writer.DirectContent;

            // 设置初始位置
            float x = 50;
            float y = 700;

            // 绘制一个矩形
            contentByte.SetColorStroke(BaseColor.BLACK);
            contentByte.Rectangle(x, y, 100, 100);
            contentByte.Stroke();

            // 获取当前位置
            float currentX = contentByte.GetX();
            float currentY = contentByte.GetY();

            // 在控制台输出当前位置
            Console.WriteLine("当前位置: ({0}, {1})", currentX, currentY);

            // 关闭文档
            document.Close();
        }
    }
}

在这个示例中,我们首先创建了一个新的PDF文档,并获取了PdfContentByte实例。然后,我们设置了初始位置(x=50, y=700),绘制了一个矩形。接着,我们使用GetX()和GetY()方法获取当前位置,并在控制台输出结果。最后,我们关闭了文档。

注意:这个示例仅用于演示如何使用iTextSharp获取当前位置,实际应用中可能需要根据具体需求进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

教你几个 Java 中的奇技淫巧

1、找到最大值和最小值 不使用 if else switch 和三元运算符,在给定的三元组中找到最大值和最小值:比如给定 3,14,8,在不使用 if else switch 和三元运算符的情况下找到最大值和最小值...所以在这里只有当前一个表达式为 true 的时候,后面的赋值语句才会被执行到。...2、不使用临时变量交换变量 swap(x, y) 操作大家都知道,就是交互 x 和 y 的值,比如 x = 3, y = 4; 在经过 swap 操作过后,x = 4,y = 3;我们这里的问题是如何在不使用临时变量的情况下...(x + ":" + y); x = x ^ y ^ (y = x); System.out.println(x + ":" + y); } 运行过后,可以看到,x 和 y 的值已经被交换了...swapByMulAndDiv(int x, int y) { System.out.println(x + ":" + y); x = (x * y) / (y = x);

28930
  • 为什么都2022年了还有人用Java写GUI?

    这些几何图形可以在“java.awt.geom”包中找到。 在本编程教程中,开发人员将学习如何使用Graphics2D类和Shape接口在Java中渲染几何2D图形。...如何在Java中画一条线 您可以使用drawLine(int x1,int y1,int x2,int y2)方法创建一条简单的直线。这将从坐标(x1,y1)到(x2,y2)绘制一条线。...例如: g.drawLine(42, 55, 130, 25) 将绘制一条线,起点坐标X为x42,起点坐标y为55,终点坐标x为130,终点坐标y为25。...如何在Java中绘制矩形 要在Java应用程序中绘制矩形,需要使用drawRect(int x,int y,int width,int height)方法。...例如: drawArc(45, 75, 150, 150, 0, 360) 如何在Java中绘制椭圆 drawOval(int x,int y,int width,int height)方法允许您绘制绑定在给定宽度和高度的矩形中的椭圆

    2K30

    实现红警式的建筑物拖拽生成特效

    为了让游戏的视觉效果更加栩栩如生,当用户选择一个建筑物后,有一个半透明的建筑物图标会随着鼠标移动,当用户在画面上点击后,建筑物会在鼠标指定的位置进行建造,而且建造是是一个动态过程,玩过红警的同学想必对这种情形不会陌生...(x, y) 的作用是把鼠标坐标从stage容器转换为城市图层相对应的位置。...然后计算当前鼠标所落入的方块是在第几行,第几列,然后再从Tiles二维数组中找到对应的方块对象,获得它的中心为止,并计算该位置相对于城市图层坐标轴的坐标,这些工作对应的就是下面几行代码: // 根据坐标所在的位置计算鼠标所指向的方格在第几行第几列...var isoCoord = this.screenToIsoCoord(localPt.x, localPt.y) // 根据上面得到的方格,计算其中心位置所在城市图层中的具体坐标 screenToIsoCoord...当我们知道当前鼠标指向的方块的中心位置后,我们就可以把半透明的图片放置在方块上,代码如下: // 把半透明的建筑物图片显示在鼠标所在的方块内 this.ghostBuilding.x = tileScreenCoord.x

    1.4K30

    Silverlight初级教程-绘图布局

    在这里将介绍一下如何在Blend中绘图。 这里的Blend中“舞台”的默认布局和flash中有些不同,大家都知道在flash中物体的都是有坐标“x,y”来定位的。...一个是在代码视图中找到“Grid”修改为“Canvas”。 第二种方法,在设计视图中在舞台的左边。Object and Timeline面版。 找到LayoutRoot。...其前边的图标代表了当前层的物体形式。 好了,现在的布局方式和flash一样了。 我们这里在工具栏中选择矩形在舞台上画一个出来。在右边的属性面板里可调整矩形的颜色、边框等属性。...left属性和flash中的x属性一样 top属性和flash中的y属性一样 至于下边的三个属性是针对Grid布局的。在Canvas布局中不受这三个属性的影响。

    51280

    数据的秘密:如何用大数据分析挖掘商业价值

    大数据分析的关键步骤大数据分析并非一蹴而就,它需要以下几个关键步骤:数据收集:从各种来源收集数据,如社交媒体、传感器、交易记录等。数据清洗:处理缺失值、重复值和异常值,确保数据质量。...数据存储:利用数据库或分布式存储系统(如Hadoop、Spark)存储大规模数据。数据分析:通过统计学或机器学习方法提取信息。数据可视化:用图表、仪表盘等方式展示结果,便于解读。...= data[['price', 'quantity']]y = data['revenue']# 数据分割X_train, X_test, y_train, y_test = train_test_split...(X, y, test_size=0.2, random_state=42)# 模型训练model = RandomForestRegressor()model.fit(X_train, y_train...挑战与机遇尽管大数据分析带来了无限可能,但也存在不少挑战:数据隐私与安全:如何在保护用户隐私的前提下利用数据。数据质量:不准确或偏差的数据会直接影响分析结果。

    8500

    八个示例,帮你更好地提升调试技巧

    使用 Javascript 写代码,如论是在 Node 后端环境还是前端单页应用,调试是资深程序员的进身之阶! 程序员的水平提示之路只有一条,那就是乐此不疲地调试代码。某非著名非大师山月如是说道。...如何通过调试获取函数的返回值 当函数返回的是一个表达式时,如何在 debug 中,在当前函数中获取到返回值 如下例所示,如何在 sum 函数中通过调试得到 7,而非获取到 a 和 b 再两者相加 const...在单行调用多个函数表达式时,如何设置条件断点 // 如何在 map 函数中,当 x === 3 时打断点 const l = [1, 2, 3, 4, 5].map(x => sum(x, 1)) 解..., 1) } // 示例三: Step Into { const sub = (x, y) => x - y // 如何进入到 `.filter` 函数中进行调试 const l = [...sum(3, 4)), 1) } // 示例四: 条件断点 { // 如何在 map 函数中,当 x === 3 时打断点 const l = [1, 2, 3, 4, 5].map(x =>

    2.7K30

    CSS-精灵图片的使用(从一张图片中截图指定位置图标)

    ,大家可以直接下载使用 二、使用难点 精灵图片的使用难点在于如何在这一张图片中定位到我们需要的部分,首先我们需要理解三个坐标:浏览器坐标、组件坐标、图片坐标,每个组件都有自己的坐标点,左上角为原点...,往上y值为负数,越来越小;往左x为负数,越来越小 假如我们的组件的宽高分别为16px,图片宽高为200px,我们发现如果将图片作为组件的背景图片,将会从图片0,0左边点开始显示,只能显示图片的...原来图片的坐标和组件的坐标重叠都是0,0,此时图片往上移动,相当于y减小了100px(假设值),此时y坐标为-100px;往左移动24px,此时x坐标为-24px,所以如果我们需要获取vip6图标,图片相对于组件坐标往左移动...y坐标; 2.现在我们以取vip3和4以及微博认证为例 3.创建三个div,宽高分别等于vip3和4以及微博认证大小,如vip3和4宽高都为16px,微博认证x及y坐标分别为95px...35px 创建三个div 指定宽高、背景图片、图标所在位置 显示效果 四、程序源码 <!

    1.5K10

    CSharp每日代码示例:使用iTextSharp创建PDF文件

    document = new Document(pageSize); 通常,你不必创建这样的页面,而可以从下面页面尺寸中选择: A0-A10, LEGAL, LETTER, HALFLETTER, _11x17...有一些预定的分割符如“ ”空格和“-”连字符,但是你可以使用setSplitCharacter方法来覆盖这些默认值。...你能够看到iText添加文本注释在页面上当前位置下面,第一个在段后第一行下面,第二个在短句结束处的下面。...十三、文字、表格、图像混排 在进行文字、表格、图像混排中,有时比较难控制位置,最好是把文字、表格、图像分别放到不同的段落中,这样才能很好控制位置。...引用的命名空间 System.IO, iTextSharp, iTextSharp.text, iTextSharp.text.pdf, iTextSharp.text.pdf.draw 有到的控件:

    3.2K10

    如何使用 TmpwatchTmpreaper 删除旧文件

    当你不知道要检查的文件名时,很难在特定目录中找到文件。 我们可以通过结合使用 find 命令和一些组合来做到这一点,我们过去已经写过一篇文章。...使用 Bash 脚本在 Linux 中删除早于 “X” 天的文件/文件夹 今天,我们将向你展示如何在 Linux 上使用 Tmpwatch 程序来实现这一目标。...$ sudo zypper install -y tmpwatch 对于 Fedora 系统,请使用 dnf 命令 安装 tmpwatch。...$ sudo dnf install -y tmpwatch 请注意: 如果你使用的是基于 Debian 的系统,请使用 tmpreaper 而不是 tmpwatch。所有示例都可以如预期工作。...这意味着更改文件属性的时间(如所有权或组等)。 dirmtime(目录的上次修改时间):显示目录的上一次修改时间。 时间参数定义删除文件的阈值。

    3.8K10

    70个NumPy练习:在Python下一举搞定机器学习矩阵运算

    答案: 32.如何在数组中的随机位置插入一个值? 难度:2 问题:在iris_2d数据集的20个随机位插入np.nan值 答案: 33.如何找到numpy数组中缺失值的位置?...难度:2 问题:在iris_2d中为volume创建一个新列,其中volume是(pi x petallength x sepal_length ^ 2)/ 3。...答案: 45.如何在numpy数组中找到最频繁出现的值? 难度:1 问题:找到iris数据集中最常见的花瓣长度值(第3列)。 输入: 答案: 46.如何找到首次出现的值大于给定值的位置?...答案: 58.如何在numpy数组中找到重复的记录? 难度:3 问题:在给定的numpy数组中找到重复的条目(从第2个起),并将它们标记为True。第一次出现应该是False。...输入: 答案: 63.如何在一维数组中找到所有局部最大值(或峰值)? 难度:4 问题:在一维numpy数组a中查找所有峰值。峰值是两侧较小值包围的点。

    21.1K42
    领券