title: Using PDFbox to create PDF referencing OTF fonts
body: <p>Good morning!</p>
  
  <p>I have a newbie PDFbox question which I'm hoping for some help with ... </p>
  
  <p>I've just (last week) downloaded the latest PDFbox source from github and am trying to create a HelloWorldOTF.java, based on the HelloWorldTTF.java example, with the hope of creating a PDF file which uses an OTF font (in this case, Adobe Caslon Pro Regular) to add text to the output PDF.</p>
  
  <p>Here's what I have so far:</p>
  
  <pre><code>        doc = new PDDocument();
  
          PDPage page = new PDPage();
          doc.addPage(page);
  
          String testOtfFontFile =  "c:/windows/fonts/ACaslonPro-Regular.otf";
          String testTtfFontFile = "c:/windows/fonts/arial.ttf";
          String testPdfFile = "c:/tmp/pdfboxtest.pdf";
  
          CFFFont font = loadCFFFont(testOtfFontFile);
  
          PDFont ttfFont = PDTrueTypeFont.loadTTF(doc, new File(testTtfFontFile));
  
          PDPageContentStream contentStream = new PDPageContentStream(doc,
                  page);
          contentStream.beginText();
          // How to set the CFFFont?
          contentStream.setFont(ttfFont, 12);
          contentStream.moveTextPositionByAmount(100, 700);
          contentStream.drawString(text);
          contentStream.endText();
          contentStream.close();
          doc.save(testPdfFile);
          System.out.println(testPdfFile + " created!");
  </code></pre>
  
  <p>I can load a CFFFont using this code: (loadCFFFont()):</p>
  
  <pre><code>            CFFFont cff = null;
              input = new FileInputStream(file);
              byte[] bytes = IOUtils.toByteArray(input);
              CFFParser cffParser = new CFFParser();
              cff = cffParser.parse(bytes).get(0);
  </code></pre>
  
  <p>... but can't for the life of me figure out how to get from a CFFFont to a PDFont in order to be able to use it to set the font via setFont().</p>
  
  <p>Any help or pointers would be hugely appreciated ... </p>
  
  <p>Thanks a million for reading this far ;)</p>