in pdfbox/src/main/java/org/apache/pdfbox/pdmodel/fdf/FDFAnnotationLine.java [68:155]
public FDFAnnotationLine(Element element) throws IOException
{
super(element);
annot.setName(COSName.SUBTYPE, SUBTYPE);
String startCoords = element.getAttribute("start");
if (startCoords == null || startCoords.isEmpty())
{
throw new IOException("Error: missing attribute 'start'");
}
String endCoords = element.getAttribute("end");
if (endCoords == null || endCoords.isEmpty())
{
throw new IOException("Error: missing attribute 'end'");
}
String line = startCoords + "," + endCoords;
String[] lineValues = line.split(",");
if (lineValues.length != 4)
{
throw new IOException("Error: wrong amount of line coordinates");
}
float[] values = new float[4];
for (int i = 0; i < 4; i++)
{
values[i] = Float.parseFloat(lineValues[i]);
}
setLine(values);
String leaderLine = element.getAttribute("leaderLength");
if (leaderLine != null && !leaderLine.isEmpty())
{
setLeaderLength(Float.parseFloat(leaderLine));
}
String leaderLineExtension = element.getAttribute("leaderExtend");
if (leaderLineExtension != null && !leaderLineExtension.isEmpty())
{
setLeaderExtend(Float.parseFloat(leaderLineExtension));
}
String leaderLineOffset = element.getAttribute("leaderOffset");
if (leaderLineOffset != null && !leaderLineOffset.isEmpty())
{
setLeaderOffset(Float.parseFloat(leaderLineOffset));
}
String startStyle = element.getAttribute("head");
if (startStyle != null && !startStyle.isEmpty())
{
setStartPointEndingStyle(startStyle);
}
String endStyle = element.getAttribute("tail");
if (endStyle != null && !endStyle.isEmpty())
{
setEndPointEndingStyle(endStyle);
}
String color = element.getAttribute("interior-color");
if (color != null && color.length() == 7 && color.charAt(0) == '#')
{
int colorValue = Integer.parseInt(color.substring(1, 7), 16);
setInteriorColor(new Color(colorValue));
}
String caption = element.getAttribute("caption");
if ("yes".equals(caption))
{
setCaption(true);
String captionH = element.getAttribute("caption-offset-h");
if (captionH != null && !captionH.isEmpty())
{
setCaptionHorizontalOffset(Float.parseFloat(captionH));
}
String captionV = element.getAttribute("caption-offset-v");
if (captionV != null && !captionV.isEmpty())
{
setCaptionVerticalOffset(Float.parseFloat(captionV));
}
String captionStyle = element.getAttribute("caption-style");
if (captionStyle != null && !captionStyle.isEmpty())
{
setCaptionStyle(captionStyle);
}
}
}