iText使用不相等的页面大小创建文档

我想使用具有不相等页面大小的itext创建一个pdf文件。 我有这两个矩形: Rectangle one=new Rectangle(70,140); Rectangle two=new Rectangle(700,400); 我正在写这样的pdf: Document document = new Document(); PdfWriter writer= PdfWriter.getInstance(document, new FileOutputStream((“MYpdf.pdf”))); 当我创建文档时,我可以选择指定页面大小,但我想在pdf中为不同页面设置不同的页面大小。 有可能吗? 例如。 第一页将有一个矩形作为页面大小,第二页将有两个矩形作为页面大小。

让ActionListener监听JTextField中的更改而不是仅输入?

因此,您可能知道,如果您有一个文本字段并且向其添加了ActionListener,它将只收听Enter按钮的按键。 但是,我想让我的ActionListener监听文本中的更改。 所以基本上我有这个: public static JPanel mainPanel() { JPanel mainp = new JPanel(); JTextArea areap = new JTextArea(“Some text in the textarea”); JTextField fieldp = new JTextField(“Edit this”); areap.setEditable(false); fieldp.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(//change in textfield, for instance a letterpress or space bar) { //Do […]

JavaFX Maven插件:在当前项目和插件组中找不到前缀’jfx’的插件

我正在尝试在Eclipse Maven项目中为我的JavaFX应用程序创建一个可执行jar。 我正在关注这个线程: Eclipse中的Maven的JavaFx应用程序 这个turotial: https : //www.youtube.com/watch? v = wbjW8rYlook 我得到了一个 No plugin found for prefix ‘jfx’ in the current project and in the plugin groups 尝试运行目标时出错: jfx:jar 完整版错误: [INFO] Scanning for projects… [INFO] Downloading: https://repo.maven.apache.org/maven2/com/zenjava/javafx-maven-plugin/8.1.2/javafx-maven-plugin-8.1.2.pom [WARNING] Failed to retrieve plugin descriptor for com.zenjava:javafx-maven-plugin:8.1.2: Plugin com.zenjava:javafx-maven-plugin:8.1.2 or one of its dependencies could not be […]

向GridPane JavaFX添加边框

我正在使用GridPane在JavaFX中创建一个棋盘游戏。 有7种不同的动画可以放置在网格的每个网格(单元格)中。 最初网格看起来像这样 我在编程动画插入之前测试了添加一个简单的圆圈。 它看起来像这样 添加的节点是SubScenes,包括TimeLine动画。 每个单元大小为40×40,SubScene大小也为40×40。 添加后的子场景,位于网格窗格边框线的顶部,看起来不太好。 我该怎么做才能将节点添加到网格线下面? 即网格线位于节点之上。 如果使用GridPane是不可能的,还有什么我可以使用的吗? 我为游戏执行的课程 class Game { static GridPane grid; public void start(final Stage stage) throws Exception { int rows = 5; int columns = 5; stage.setTitle(“Enjoy your game”); grid = new GridPane(); for(int i = 0; i < columns; i++) { ColumnConstraints column = new ColumnConstraints(40); […]

为什么LongProperty实现Property 而不是Property ?

我在JavaFX API中遇到了似乎特殊的东西: LongProperty实现Property ,但不实现Property 。 这是什么原因? 我认为这一切都源于Java的协方差和逆变的固有问题,因为generics通过擦除实现愚蠢 ,以保持与字节码的向后兼容性; 但是,通过让LongProperty实现Property 和 Property可能会出现什么问题? 编辑:此问题源于此问题: 以编程方式将LongProperty应用于TableColumn(vs语义)

字符串子字符串索引可以是字符串的长度

这是一个Java字符串问题。 我使用substring(beginindex)来获取子字符串。 考虑到String s=”hello” ,这个字符串的长度是5.但是当我使用s.substring(5)或s.substring(5,5) ,编译器没有给我一个错误。 字符串的索引应该是从0到length-1。 为什么它不适用于我的情况? 我认为s.substring(5)应该给我一个错误,但事实并非如此。

为什么允许访问另一个对象的私有字段?

最近,我观察到在Java中访问priavte字段的意外行为。 请考虑以下示例,该示例说明了该行为: public class A { private int i; <– private field! public A(int i) { this.i = i; } public void foo(A a) { System.out.println(this.i); // 1. Accessing the own private field: good System.out.println(ai); // 2. Accessing private field of another object! } public static void main(String[] args) { (new A(5)).foo(new A(2)); } } […]

用PDFBOX写阿拉伯语并使用正确的字符表示forms而不分开

我正在尝试使用PDFBox Apache生成包含阿拉伯文本的PDF,但文本生成为单独的字符,因为Apache将给定的阿拉伯字符串解析为一系列通用的“官方”Unicode字符,这些字符相当于孤立forms的阿拉伯字符。 这是一个例子: 目标文本以PDF格式写入“应该是PDF文件中的预期输出” – >جملةبالعربي 我在PDF文件中得到了什么 – > 我尝试了一些方法,但这里有一些没用: 1.将字符串转换为比特流并尝试提取正确的值 2.使用UTF-8 && UTF-16处理String一个字节序列并从中提取值 有一些方法似乎非常有希望获得每个字符的值“Unicode”但它生成一般“官方Unicode”这是我的意思 System.out.println( Integer.toHexString( (int)(new String(“كلمة”).charAt(1))) ); 输出是644但是fee0是预期的输出,因为这个字符在中间从那时起我应该得到中间的Unicode费用0 所以我想要的是一些生成正确Unicode的方法,而不仅仅是正式的Unicode 以下链接中第一个表中的“Left”列表示常规Unicode 阿拉伯语Unicode表维基百科

在GridLayout JPanel中访问本地定义的JButton

假设您在NxN网格中有一个JButtons的GridLayout,代码如下: JPanel bPanel = new JPanel(); bPanel.setLayout(new GridLayout(N, N, 10, 10)); for (int row = 0; row < N; row++) { for (int col = 0; col < N; col++) { JButton b = new JButton("(" + row + ", " + col + ")"); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { } }); […]

Selenium测试脚本通过新的ajax登录表单登录谷歌帐户

我可以编写脚本来将我的电子邮件地址放入电子邮件元素中。 但是,一旦点击下一步脚本,谷歌就会使用ajax动态地将该电子邮件元素替换为密码元素。 这是我被困住的地方,无法在该元素中提供密码而且无法登录。 url: https : //accounts.google.com/signin/v2/identifier?flowName = GlifWebSignIn&flowEntry = ServiceLogin 请编写selenium测试脚本来实现此目的。