content: #!/usr/bin/env python
  import logging
  import os
  import unittest
  
  import pdfplumber
  
  logging.disable(logging.ERROR)
  
  HERE = os.path.abspath(os.path.dirname(__file__))
  
  
  class Test(unittest.TestCase):
      @classmethod
      def setup_class(self):
          self.path = os.path.join(HERE, "pdfs/issue-13-151201DSP-Fond-581-90D.pdf")
  
      def test_without_laparams(self):
          with pdfplumber.open(self.path, laparams=None) as pdf:
              objs = pdf.pages[0].objects
              assert "textboxhorizontal" not in objs.keys()
              assert len(objs["char"]) == 4408
  
      def test_with_laparams(self):
          with pdfplumber.open(self.path, laparams={}) as pdf:
              page = pdf.pages[0]
              assert len(page.textboxhorizontals) == 27
              assert len(page.textlinehorizontals) == 79
              assert "text" in page.textboxhorizontals[0]
              assert "text" in page.textlinehorizontals[0]
              assert len(page.chars) == 4408
              assert "anno" not in page.objects.keys()
  
      def test_vertical_texts(self):
          path = os.path.join(HERE, "pdfs/issue-192-example.pdf")
          laparams = {"detect_vertical": True}
          with pdfplumber.open(path, laparams=laparams) as pdf:
              page = pdf.pages[0]
              assert len(page.textlinehorizontals) == 142
              assert len(page.textboxhorizontals) == 74
              assert len(page.textlineverticals) == 11
              assert len(page.textboxverticals) == 6
              assert "text" in page.textboxverticals[0]
              assert "text" in page.textlineverticals[0]
  
      def test_issue_383(self):
          with pdfplumber.open(self.path, laparams={}) as pdf:
              p0 = pdf.pages[0]
              assert "anno" not in p0.objects.keys()
              cropped = p0.crop((0, 0, 100, 100))
              assert len(cropped.objects)
  