• Free Trial
  • Products
    • ODA Platform

      CAD

      Drawings Map Architecture Civil

      BIM

      BimRv BimNv IFC Scan-to-BIM

      Mechanical

      Mechanical STEP MCAD NEW
      24.2 Release - Mar 16, 2023 Supported platforms

      Core Platform Technologies

      Visualize Exchange Collaborate in web Publish
  • Membership
    • About ODA Membership
      Strategic
      Interoperability
      Group
      About ODA Members
  • Pricing
    • Pricing Membership plan calculator Compare table
  • Source code
  • Support
    • Documentation Support forum .dwg specification FAQ Blog
      Consulting Services
  • Search
  • Sign In

CONSULTING SERVICES New

How to add a hyperlink to an MTEXT entity?

  1. FAQ
  2. »
  3. Examples

OdWriteEx sample contains creating a circle with hyperlink. Search DbFiller.cpp for "hyperlink".

Here is sample code for creating MTEXT with hyperlink in field. Code:

OdDbMTextPtr pMText = OdDbMText::createObject();
  pMText->setDatabaseDefaults(pRecord->database());
  pRecord->appendOdDbEntity(pMText);

  /**********************************************************************/
  /* Set some properties                                                */
  /**********************************************************************/

  pMText->setLocation(point);
  pMText->setTextHeight(0.2);
  pMText->setAttachment(OdDbMText::kTopLeft);
  pMText->setContents(OD_T("Sample Hyperlink"));
  pMText->setWidth(w * 7.0 / 8.0);
  pMText->setTextStyle(styleId);
  
  OdDbFieldPtr pTextField3 = OdDbField::createObject();
  OdDbFieldPtr pField3_1 = OdDbField::createObject();

  OdDbObjectId textFldId3 = pMText->setField(OD_T("TEXT"), pTextField3);
  OdDbObjectId fldId3_1 = pTextField3->setField(OD_T(""), pField3_1);

  pField3_1->setEvaluationOption(OdDbField::kAutomatic);
  OdString fc6(OD_T("\\AcVar \\href \"http://forum.opendesign.com/showthread.php?14172-How-do-I-add-a-hyperlink-to-an-MTEXT-entity##Open Design Alliance Forum > Teigha, C++ version#0\""));
  pField3_1->setFieldCode(fc6);

  OdDbEntityHyperlinkPEPtr    hpe = pField3_1;
  OdDbHyperlinkCollectionPtr  urls = hpe->getHyperlinkCollection(pField3_1);
  
  urls->addTail(L"http://forum.opendesign.com/showthread.php?14172-How-do-I-add-a-hyperlink-to-an-MTEXT-entity##ForumLink#0\"", 
    L"Open Design Alliance Forum > Teigha, C++ version");
  
  hpe->setHyperlinkCollection(pField3_1, urls);

  pTextField3->setEvaluationOption(OdDbField::kAutomatic);
  OdString fc7(OD_T("HyperLink sample %<\\_FldIdx 0>%"));
  pTextField3->setFieldCode(fc7, OdDbField::FieldCodeFlag(OdDbField::kTextField | OdDbField::kPreserveFields));

  pField3_1->evaluate(OdDbField::kAutomatic);
  • Products

    Free trial ODA Platform Drawings IFC BimRv BimNv Architecture Civil STEP Mechanical Map
  • Demo

    ODA Viewer DWG-DXF Converter DWG/DXF - PDF Converter Drawings Explorer Specification for .DWG files
  • Pricing

    Pricing Membership plan calculator Compare table
  • Community

    Conference Blog Education portal Webinar Series 2022 Support forum Members Strategic Interoperability Group
  • About

    About ODA Contact Trademark Disclaimer Privacy Policy
  • 24.2 Release - Mar 16, 2023 Releases Supported Platforms
  • Select language

    English 简体中文
  • Open resources Vulnerability Disclosure Policy Security Advisories
  • Sign in
© 2023 Open Design Alliance. All rights reserved.