Classic ASP Requires Chilkat v11.7.0+
Classic ASP
Extract One Section of a PDF by its Heading
See more PDF Text Extraction Examples
Demonstrates "labelValue": "section", which returns everything from a heading up to the next heading of the same or higher level. With the "markdown" operation the section keeps its own sub-headings.Chilkat Classic ASP Downloads
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
' The PDF used in this example is available at sectioned_doc.pdf
set pdf = Server.CreateObject("Chilkat.Pdf")
success = pdf.LoadFile("qa_data/pdf/sectioned_doc.pdf")
If (success = 0) Then
Response.Write "<pre>" & Server.HTMLEncode( pdf.LastErrorText) & "</pre>"
Response.End
End If
set json = Server.CreateObject("Chilkat.JsonObject")
set jsonOut = Server.CreateObject("Chilkat.JsonObject")
' The document has the sections Introduction, Opening Hours, Terms and Conditions (with the
' sub-sections Admission, Safety and Liability) and Contact. Get the Terms and Conditions:
' everything after that heading up to the next heading of the same level (Contact). The heading
' itself is not part of the value; labelMatches[0].label has it.
success = json.UpdateString("label","Terms and Conditions")
success = json.UpdateString("labelValue","section")
success = pdf.ExtractText("markdown",json,jsonOut)
If (success = 0) Then
Response.Write "<pre>" & Server.HTMLEncode( pdf.LastErrorText) & "</pre>"
Response.End
End If
Response.Write "<pre>" & Server.HTMLEncode( jsonOut.StringOf("markdown")) & "</pre>"
' The same with the "text" operation gives the section as plain text.
success = pdf.ExtractText("text",json,jsonOut)
If (success = 0) Then
Response.Write "<pre>" & Server.HTMLEncode( pdf.LastErrorText) & "</pre>"
Response.End
End If
Response.Write "<pre>" & Server.HTMLEncode( "---- as text ----") & "</pre>"
Response.Write "<pre>" & Server.HTMLEncode( jsonOut.StringOf("text")) & "</pre>"
' Sample output:
' ### Admission
'
' Admission is free. Groups of more than ten should book in advance so that a volunteer can be assigned to them.
'
' ### Safety
'
' No more than eight people may be on the stair at one time. Children under twelve must be accompanied by an adult, and the lantern room is closed in high winds.
'
' ### Liability
'
' Visitors climb the tower at their own risk. The society carries public liability insurance but accepts no responsibility for personal property.
' ---- as text ----
' Admission
'
' Admission is free. Groups of more than ten should book in advance so that a volunteer can be assigned to them.
'
' Safety
'
' No more than eight people may be on the stair at one time. Children under twelve must be accompanied by an adult, and the lantern room is closed in high winds.
'
' Liability
'
' Visitors climb the tower at their own risk. The society carries public liability insurance but accepts no responsibility for personal property.
%>
</body>
</html>