Header and Footers are not extracted from Notes Masters

Hi,


We are using slides 16.8.0 and trying to extract all text from the presentation. When parsing the Notes Master we don’t get the expected text:
“Notes header”
“Notes date and time”
“Notes footer"

Looking at what is returned from the following code, it looks like when the api is parsing the file and it gets the header and footer markers it is not looking up what the value is and substituting it like it does for datetime and slidenum. I don’t expect to see any place holder characters '’.

int shapeIndex = 0;
for (IShape shape : presentation.getMasterHandoutSlideManager().getMasterHandoutSlide().getShapes())
{
int paragraphIndex = 0;
for (IParagraph paragraph : textFrame.getParagraphs())
{
int portionIndex = 0;
for (IPortion portion : paragraph.getPortions())
{
IField field = portion.getField();

if (logger.isDebugEnabled())
{
logger.debug(“Portion[” + shapeIndex +
‘,’ + paragraphIndex +
‘,’ + portionIndex +
“] Field type=” + (field != null ? field.getType().getInternalString() : “null”) +
" “” + portion.getText() + ‘"’);
}
portionIndex++;
}
paragraphIndex++;
}

}

Portion[0,0,0] Field type=null "” <- This is probably the header marker. (Why was ‘header’ removed from Field in 16.x.x?)
Portion[0,0,1] Field type=null ""

Portion[1,0,0] Field type=datetime1 “"
Portion[1,0,1] Field type=null ""

Portion[2,0,0] Field type=footer "” <- This is the footer marker, and its text should be found in the document somewhere.
Portion[2,0,1] Field type=null ""

Portion[3,0,0] Field type=slidenum "*"
Portion[3,0,1] Field type=null ""

Regards
Nick

I’ve found another document which is having a similar issue parsing the FieldTypes.


The attached sample (MultipleSlidesAndDateFormats.pptx) was created to check all date formats were correctly identified. The ones that are not working are in the Master and Notes Master. They get converted to a FieldType that doesn’t exist <span style=“font-family: “Courier New”; font-size: small;”>datetimeFigureOut. In the old 8.8.0 api it was identified as the basic date time type. FieldType.getDateTime() By the way, why isn’t this an enum. It would make working with the data much easier.

Portion[2,0,0] Field type=datetimeFigureOut "01/04/2016"
Portion[2,0,1] Field type=null ""

The same document saved as the older format (MultipleSlidesAndDateFormats.ppt) is getting multiple datetime formats miss-identified.
DATETIME -> DATETIME1 (I think this is happening in all files where the default format is being reported as the first version.)
DATETIME3 -> DATETIME
DATETIME4 -> DATETIME3

I hope this will be an easy fix.

Regards
Nick

Hi Nicholas,


I have observed your comments. We are looking into this in details. We will get back to you with feedback soon.

Best Regards,