• bitcoinBitcoin(BTC)$65,393.00-0.15%
  • ethereumEthereum(ETH)$1,891.56-1.41%
  • tetherTether(USDT)$1.00-0.01%
  • binancecoinBNB(BNB)$568.18-0.29%
  • usd-coinUSDC(USDC)$1.000.00%
  • rippleXRP(XRP)$1.11-1.90%
  • solanaSolana(SOL)$75.94-1.70%
  • tronTRON(TRX)$0.3313270.87%
  • Figure HelocFigure Heloc(FIGR_HELOC)$1.043.72%
  • HyperliquidHyperliquid(HYPE)$58.860.13%
  • dogecoinDogecoin(DOGE)$0.069928-3.24%
  • USDSUSDS(USDS)$1.000.00%
  • RainRain(RAIN)$0.013932-2.35%
  • leo-tokenLEO Token(LEO)$9.59-1.14%
  • zcashZcash(ZEC)$510.81-0.96%
  • moneroMonero(XMR)$360.672.81%
  • whitebitWhiteBIT Coin(WBT)$56.96-0.47%
  • chainlinkChainlink(LINK)$8.54-0.15%
  • stellarStellar(XLM)$0.184062-0.03%
  • cardanoCardano(ADA)$0.167740-3.14%
  • CantonCanton(CC)$0.1215440.85%
  • daiDai(DAI)$1.000.00%
  • bitcoin-cashBitcoin Cash(BCH)$212.12-2.07%
  • USD1USD1(USD1)$1.000.00%
  • the-open-networkGram (prev. Toncoin)(GRAM)$1.47-3.09%
  • Ethena USDeEthena USDe(USDE)$1.000.01%
  • litecoinLitecoin(LTC)$46.76-0.54%
  • Global DollarGlobal Dollar(USDG)$1.00-0.04%
  • hedera-hashgraphHedera(HBAR)$0.070859-3.98%
  • suiSui(SUI)$0.74-3.66%
  • Circle USYCCircle USYC(USYC)$1.130.00%
  • avalanche-2Avalanche(AVAX)$6.27-4.54%
  • crypto-com-chainCronos(CRO)$0.057200-0.74%
  • paypal-usdPayPal USD(PYUSD)$1.000.00%
  • BlackRock USD Institutional Digital Liquidity FundBlackRock USD Institutional Digital Liquidity Fund(BUIDL)$1.000.00%
  • tether-goldTether Gold(XAUT)$4,042.75-1.12%
  • nearNEAR Protocol(NEAR)$1.901.66%
  • shiba-inuShiba Inu(SHIB)$0.000004-1.34%
  • uniswapUniswap(UNI)$3.850.80%
  • Ondo US Dollar YieldOndo US Dollar Yield(USDY)$1.13-0.43%
  • OndoOndo(ONDO)$0.398574-1.89%
  • BittensorBittensor(TAO)$193.81-1.31%
  • pax-goldPAX Gold(PAXG)$4,037.92-1.15%
  • World Liberty FinancialWorld Liberty Financial(WLFI)$0.056540-9.01%
  • okbOKB(OKB)$82.250.10%
  • AsterAster(ASTER)$0.630.40%
  • HTX DAOHTX DAO(HTX)$0.000002-0.11%
  • Ripple USDRipple USD(RLUSD)$1.000.01%
  • usddUSDD(USDD)$1.00-0.01%
  • MemeCoreMemeCore(M)$1.161.15%
TradePoint.io
  • Main
  • AI & Technology
  • Stock Charts
  • Market & News
  • Business
  • Finance Tips
  • Trade Tube
  • Blog
  • Shop
No Result
View All Result
TradePoint.io
No Result
View All Result

How to Build a Parsing Pipeline with Docling Parse for Layout-Aware Document Intelligence

June 16, 2026
in AI & Technology
Reading Time: 2 mins read
A A
How to Build a Parsing Pipeline with Docling Parse for Layout-Aware Document Intelligence
ShareShareShareShareShare

YOU MAY ALSO LIKE

Tesla Misses Profit Estimates, Leans Into AI

Palm Beach Rejects Data Center Near Mar-a-Lago

def create_demo_image(path):
   img = Image.new("RGB", (320, 180), "white")
   draw = ImageDraw.Draw(img)
   draw.rectangle([20, 20, 300, 160], outline="black", width=3)
   draw.ellipse([55, 45, 145, 135], outline="black", width=4)
   draw.line([180, 140, 285, 45], fill="black", width=4)
   draw.text((45, 145), "Embedded bitmap image", fill="black")
   img.save(path)
create_demo_image(DEMO_IMAGE_PATH)
def build_pdf(pdf_path):
   c = canvas.Canvas(str(pdf_path), pagesize=A4)
   width, height = A4
   c.setFont("Helvetica-Bold", 20)
   c.drawString(60, height - 70, "Docling Parse Advanced PDF Parsing Tutorial")
   c.setFont("Helvetica", 11)
   intro = (
       "This generated document is designed for testing text extraction, coordinate parsing, "
       "line grouping, vector path detection, bitmap resources, and layout-aware reconstruction."
   )
   text_obj = c.beginText(60, height - 105)
   text_obj.setLeading(15)
   for line in textwrap.wrap(intro, width=90):
       text_obj.textLine(line)
   c.drawText(text_obj)
   c.setFont("Helvetica-Bold", 14)
   c.drawString(60, height - 170, "1. Two-column text region")
   left_para = (
       "The left column contains compact explanatory text. A parser should expose words, "
       "characters, and line-level cells along with coordinates. These coordinates allow us "
       "to reconstruct reading order and inspect the spatial structure of a page."
   )
   right_para = (
       "The right column contains a separate paragraph. In document AI pipelines, layout "
       "features are useful for retrieval, table extraction, chunking, and downstream RAG "
       "applications where page position can matter."
   )
   y_start = height - 200
   left_text = c.beginText(60, y_start)
   left_text.setFont("Helvetica", 10)
   left_text.setLeading(13)
   for line in textwrap.wrap(left_para, width=42):
       left_text.textLine(line)
   c.drawText(left_text)
   right_text = c.beginText(325, y_start)
   right_text.setFont("Helvetica", 10)
   right_text.setLeading(13)
   for line in textwrap.wrap(right_para, width=42):
       right_text.textLine(line)
   c.drawText(right_text)
   c.setStrokeColor(colors.darkblue)
   c.setLineWidth(2)
   c.rect(55, height - 315, 225, 130, stroke=1, fill=0)
   c.rect(320, height - 315, 225, 130, stroke=1, fill=0)
   c.setStrokeColor(colors.darkgreen)
   c.setLineWidth(3)
   c.circle(140, height - 390, 40, stroke=1, fill=0)
   c.line(220, height - 430, 310, height - 355)
   c.setFont("Helvetica-Bold", 14)
   c.setFillColor(colors.black)
   c.drawString(60, height - 470, "2. Simple table-like structure")
   data = [
       ["Section", "Signal", "Expected parser behavior"],
       ["Text", "Words and lines", "Return text cells with coordinates"],
       ["Vector", "Boxes and lines", "Expose page path/vector resources"],
       ["Bitmap", "Embedded image", "Expose or render image resources"],
   ]
   table = Table(data, colWidths=[100, 130, 260])
   table.setStyle(TableStyle([
       ("BACKGROUND", (0, 0), (-1, 0), colors.lightgrey),
       ("GRID", (0, 0), (-1, -1), 0.7, colors.black),
       ("FONTNAME", (0, 0), (-1, 0), "Helvetica-Bold"),
       ("FONTSIZE", (0, 0), (-1, -1), 9),
       ("VALIGN", (0, 0), (-1, -1), "MIDDLE"),
   ]))
   table.wrapOn(c, width, height)
   table.drawOn(c, 60, height - 590)
   c.setFont("Helvetica", 9)
   c.drawString(60, 55, "Page 1: generated programmatic PDF with text, table-like layout, and vector paths.")
   c.showPage()
   c.setFont("Helvetica-Bold", 18)
   c.drawString(60, height - 70, "Page 2: Bitmap, Dense Text, and Reading Order")
   c.setFont("Helvetica", 10)
   dense = (
       "This page includes an embedded bitmap image and several short blocks of text. "
       "We use it to test whether rendering works, whether the parser preserves page-level "
       "coordinates, and whether our own reconstruction logic can group words into lines."
   )
   y = height - 105
   for para_idx in range(4):
       tx = c.beginText(60, y)
       tx.setFont("Helvetica", 10)
       tx.setLeading(13)
       for line in textwrap.wrap(f"Block {para_idx + 1}: {dense}", width=92):
           tx.textLine(line)
       c.drawText(tx)
       y -= 70
   c.drawImage(str(DEMO_IMAGE_PATH), 110, height - 510, width=320, height=180, preserveAspectRatio=True)
   c.setStrokeColor(colors.red)
   c.setLineWidth(2)
   c.roundRect(95, height - 525, 350, 210, 10, stroke=1, fill=0)
   c.setFillColor(colors.black)
   c.setFont("Helvetica-Bold", 12)
   c.drawString(60, height - 570, "Coordinate-aware extraction lets us keep page, text, and position together.")
   c.setFont("Helvetica", 9)
   c.drawString(60, 55, "Page 2: embedded bitmap image and multiple text blocks.")
   c.save()
build_pdf(PDF_PATH)
print("Created PDF:", PDF_PATH)

Credit: Source link

ShareTweetSendSharePin

Related Posts

Tesla Misses Profit Estimates, Leans Into AI
AI & Technology

Tesla Misses Profit Estimates, Leans Into AI

July 24, 2026
Palm Beach Rejects Data Center Near Mar-a-Lago
AI & Technology

Palm Beach Rejects Data Center Near Mar-a-Lago

July 24, 2026
Apple Prepping iMac, MacBooks Overhaul to Meet AI Demand
AI & Technology

Apple Prepping iMac, MacBooks Overhaul to Meet AI Demand

July 24, 2026
How to Build an End-to-End OCR Pipeline with Baidu’s Unlimited-OCR for High-Resolution Images and Multi-Page PDF Parsing
AI & Technology

How to Build an End-to-End OCR Pipeline with Baidu’s Unlimited-OCR for High-Resolution Images and Multi-Page PDF Parsing

July 24, 2026
Next Post
Zimmer Biomet: Does Slow And Steady Still Win The Race?

Zimmer Biomet: Does Slow And Steady Still Win The Race?

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Search

No Result
View All Result
Trump is invoking foreign election interference to justify his own | Jamil Smith – The Guardian

Trump is invoking foreign election interference to justify his own | Jamil Smith – The Guardian

July 19, 2026
Alibaba’s Tongyi Lab Releases Qwen-Audio-3.0-TTS, a Hosted Text-to-Speech Model in Flash and Plus Tiers Across 16 Languages

Alibaba’s Tongyi Lab Releases Qwen-Audio-3.0-TTS, a Hosted Text-to-Speech Model in Flash and Plus Tiers Across 16 Languages

July 20, 2026
LIVE: NBC News NOW – July 21

LIVE: NBC News NOW – July 21

July 21, 2026

About

Learn more

Our Services

Legal

Privacy Policy

Terms of Use

Bloggers

Learn more

Article Links

Contact

Advertise

Ask us anything

©2020- TradePoint.io - All rights reserved!

Tradepoint.io, being just a publishing and technology platform, is not a registered broker-dealer or investment adviser. So we do not provide investment advice. Rather, brokerage services are provided to clients of Tradepoint.io by independent SEC-registered broker-dealers and members of FINRA/SIPC. Every form of investing carries some risk and past performance is not a guarantee of future results. “Tradepoint.io“, “Instant Investing” and “My Trading Tools” are registered trademarks of Apperbuild, LLC.

This website is operated by Apperbuild, LLC. We have no link to any brokerage firm and we do not provide investment advice. Every information and resource we provide is solely for the education of our readers. © 2020 Apperbuild, LLC. All rights reserved.

No Result
View All Result
  • Main
  • AI & Technology
  • Stock Charts
  • Market & News
  • Business
  • Finance Tips
  • Trade Tube
  • Blog
  • Shop

© 2023 - TradePoint.io - All Rights Reserved!