Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6252263
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T13:45:55+00:00 2026-05-24T13:45:55+00:00

How can I access hyperlinks in PDF documents on the iPhone and iPad? I

  • 0

How can I access hyperlinks in PDF documents on the iPhone and iPad?

I want to set links on the content of an e-book.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T13:45:56+00:00Added an answer on May 24, 2026 at 1:45 pm

    Use following function to put UIButtons on the links in PDF. This will draw Buttons on your UIView. You have to pass your page as parameter. Currently it will draw button with type UIButtonTypeRoundedRect you change afterwards it to custom so it will be hidden. Initially buttons may be drawn other place than link so you need to adjust x/y position according to you requirement.

    -(void)drawLinks:(CGPDFPageRef)thisPage
    {
        CGPDFDictionaryRef pageDictionary = CGPDFPageGetDictionary(thisPage);
    
        CGPDFArrayRef outputArray;
        if(!CGPDFDictionaryGetArray(pageDictionary,"Annots", &outputArray)) 
        {
            return;
        }
    
        int arrayCount = CGPDFArrayGetCount( outputArray );
        if(!arrayCount) 
        {
            //continue;
        }
    
        for( int j = 0; j < arrayCount; ++j ) 
        {
            CGPDFObjectRef aDictObj;
            if(!CGPDFArrayGetObject(outputArray, j, &aDictObj)) 
            {
                return;
            }
    
            CGPDFDictionaryRef annotDict;
            if(!CGPDFObjectGetValue(aDictObj, kCGPDFObjectTypeDictionary, &annotDict)) {
                return;
            }
    
            CGPDFDictionaryRef aDict;
            if(!CGPDFDictionaryGetDictionary(annotDict, "A", &aDict)) {
                return;
            }
    
            CGPDFStringRef uriStringRef;
            if(!CGPDFDictionaryGetString(aDict, "URI", &uriStringRef)) {
                return;
            }
    
            CGPDFArrayRef rectArray;
            if(!CGPDFDictionaryGetArray(annotDict, "Rect", &rectArray)) {
                return;
            }
    
            int arrayCount = CGPDFArrayGetCount( rectArray );
            CGPDFReal coords[4];
            for( int k = 0; k < arrayCount; ++k ) {
                CGPDFObjectRef rectObj;
                if(!CGPDFArrayGetObject(rectArray, k, &rectObj)) {
                    return;
                }
    
                CGPDFReal coord;
                if(!CGPDFObjectGetValue(rectObj, kCGPDFObjectTypeReal, &coord)) {
                    return;
                }
    
                coords[k] = coord;
            }               
    
            char *uriString = (char *)CGPDFStringGetBytePtr(uriStringRef);
    
            NSString *uri = [NSString stringWithCString:uriString encoding:NSUTF8StringEncoding];
            CGRect rect = CGRectMake(coords[0],coords[1],coords[2],coords[3]);
    
            CGPDFInteger pageRotate = 0;
            CGPDFDictionaryGetInteger( pageDictionary, "Rotate", &pageRotate ); 
            CGRect pageRect = CGRectIntegral( CGPDFPageGetBoxRect( thisPage, kCGPDFMediaBox ));
            if( pageRotate == 90 || pageRotate == 270 ) 
            {
                CGFloat temp = pageRect.size.width;
                pageRect.size.width = pageRect.size.height;
                pageRect.size.height = temp;
            }
    
            rect.size.width -= rect.origin.x;
            rect.size.height -= rect.origin.y;
    
            CGAffineTransform trans = CGAffineTransformIdentity;
            trans = CGAffineTransformTranslate(trans, 0, pageRect.size.height);
            trans = CGAffineTransformScale(trans, 1.0, -1.0);
    
            rect = CGRectApplyAffineTransform(rect, trans);
    
            UIButton *btnTmp = [UIButton buttonWithType:UIButtonTypeRoundedRect]; // After testing put here UIButtonTypeCustom
            [btnTmp addTarget:self action:@selector(urlOpen:) forControlEvents:UIControlEventTouchUpInside];
            rect.origin.x = rect.origin.x + 78; //I have adjusted this as per my requirement
            rect.origin.y = rect.origin.y + 108; // I have adjusted this as per my requirement
            btnTmp.frame = rect;
            btnTmp.titleLabel.text = uri;
            [self.superview addSubview:btnTmp];
        }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I can access the cache via jQuery.Cache method. But I want to access it
i can access .txt file from documents folder but how to access a folder
I can access the database either from a .NET program (using ODBC) or through
I can access Spring beans in my Servlets using WebApplicationContext springContext = WebApplicationContextUtils.getWebApplicationContext(getServletContext()); in
I can access and show self.view and see the frame in the log but
How can hibernate can access a private field/method of a java class , for
Can anyone let me know how can access an element of a list that
I know you can access the Contact Store from the SDk, but is it
In PHP you can access characters of strings in a few different ways, one
Is there a way I can access (for printout) a list of sub +

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.