在iText Java上添加映射
我正在使用java和iText创建pdf。是否可以添加带有指针的地图,以便用户知道起点在哪里 OP同时删除的答案中的澄清,该答案本应是对问题的编辑 我的问题是,我可以在iText上从网上添加谷歌地图,而不是以图片的形式添加吗在iText Java上添加映射,java,google-maps,pdf,itext,Java,Google Maps,Pdf,Itext,我正在使用java和iText创建pdf。是否可以添加带有指针的地图,以便用户知道起点在哪里 OP同时删除的答案中的澄清,该答案本应是对问题的编辑 我的问题是,我可以在iText上从网上添加谷歌地图,而不是以图片的形式添加吗 既然你们并没有回答我在评论中补充的反问题,我就给你们举两个例子。如果这些不是你想要的,你真的应该澄清你的问题 示例1:在地图顶部添加自定义形状作为额外内容 这在示例中得到了演示: 如果我们知道指针的坐标,我们可以画出直线和曲线,形成一个红色的指针。如图所示,请参见剑桥创新中
既然你们并没有回答我在评论中补充的反问题,我就给你们举两个例子。如果这些不是你想要的,你真的应该澄清你的问题 示例1:在地图顶部添加自定义形状作为额外内容 这在示例中得到了演示: 如果我们知道指针的坐标,我们可以画出直线和曲线,形成一个红色的指针。如图所示,请参见剑桥创新中心附近的红色针脚: 示例2:在地图顶部添加线条注释 这在示例中得到了演示: 结果是注释不是真实内容的一部分,而是真实内容顶部交互层的一部分: 它是交互式的,用户单击注释时会显示额外的信息:
有很多其他的选择是可能的,但再一次:你的问题并不完全清楚。请澄清。你说带指针的地图让用户知道起点在哪里是什么意思?如果PDF中有地图,则可以添加类似箭头的注释。这就是你要找的吗?我可以在iText上从网上添加谷歌地图而不是图片吗?还有什么别的方法?请不要只说你不想要的,而是说你想要的。
PdfContentByte canvas = writer.getDirectContent();
canvas.setColorStroke(BaseColor.RED);
canvas.setLineWidth(3);
canvas.moveTo(220, 330);
canvas.lineTo(240, 370);
canvas.arc(200, 350, 240, 390, 0, (float) 180);
canvas.lineTo(220, 330);
canvas.closePathStroke();
canvas.setColorFill(BaseColor.RED);
canvas.circle(220, 370, 10);
canvas.fill();
Rectangle rect = new Rectangle(220, 350, 475, 595);
PdfAnnotation annotation = PdfAnnotation.createLine(writer, rect, "Cambridge Innovation Center", 225, 355, 470, 590);
PdfArray le = new PdfArray();
le.add(new PdfName("OpenArrow"));
le.add(new PdfName("None"));
annotation.setTitle("You are here:");
annotation.setColor(BaseColor.RED);
annotation.setFlags(PdfAnnotation.FLAGS_PRINT);
annotation.setBorderStyle(
new PdfBorderDictionary(5, PdfBorderDictionary.STYLE_SOLID));
annotation.put(new PdfName("LE"), le);
annotation.put(new PdfName("IT"), new PdfName("LineArrow"));
writer.addAnnotation(annotation);