如何在pdfjoin中保留URL?

时间:2016-11-21 07:15:37

标签: macos pdf

我正在使用pdfjoin合并两个pdf。第一个pdf有一个“点击这里”链接进入一个网页。当我打开第一个pdf时,我可以点击自动打开我的默认浏览器并显示网页的链接。

但是,当我使用pdfjoin合并两个pdf时,“Click here”链接没有任何效果,它只是在最终的pdf中表现为纯文本。

如何使用 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { NSUInteger rowsCount = [self tableView:tableView numberOfRowsInSection:indexPath.section]; if (1 == rowsCount) { cell.contentView.layer.cornerRadius = 8.f; cell.contentView.layer.masksToBounds = YES; } else { if (0 == indexPath.row) { CGRect cellRect = cell.contentView.bounds; CGMutablePathRef firstRowPath = CGPathCreateMutable(); CGPathMoveToPoint(firstRowPath, NULL, CGRectGetMinX(cellRect), CGRectGetMaxY(cellRect)); CGPathAddLineToPoint(firstRowPath, NULL, CGRectGetMinX(cellRect), 8.f); CGPathAddArcToPoint(firstRowPath, NULL, CGRectGetMinX(cellRect), CGRectGetMinY(cellRect), 8.f, CGRectGetMinY(cellRect), 8.f); CGPathAddLineToPoint(firstRowPath, NULL, CGRectGetMaxX(cellRect) - 8.f, 0.f); CGPathAddArcToPoint(firstRowPath, NULL, CGRectGetMaxX(cellRect), CGRectGetMinY(cellRect), CGRectGetMaxX(cellRect), 8.f, 8.f); CGPathAddLineToPoint(firstRowPath, NULL, CGRectGetMaxX(cellRect), CGRectGetMaxY(cellRect)); CGPathCloseSubpath(firstRowPath); CAShapeLayer *newSharpLayer = [[CAShapeLayer alloc] init]; newSharpLayer.path = firstRowPath; newSharpLayer.fillColor = [[UIColor whiteColor] colorWithAlphaComponent:1.f].CGColor; CFRelease(firstRowPath); cell.contentView.layer.mask = newSharpLayer; } else if (indexPath.row == (rowsCount - 1)) { CGRect cellRect = cell.contentView.bounds; CGMutablePathRef lastRowPath = CGPathCreateMutable(); CGPathMoveToPoint(lastRowPath, NULL, CGRectGetMinX(cellRect), CGRectGetMinY(cellRect)); CGPathAddLineToPoint(lastRowPath, NULL, CGRectGetMaxX(cellRect), CGRectGetMinY(cellRect)); CGPathAddLineToPoint(lastRowPath, NULL, CGRectGetMaxX(cellRect), CGRectGetMaxY(cellRect) - 8.f); CGPathAddArcToPoint(lastRowPath, NULL, CGRectGetMaxX(cellRect), CGRectGetMaxY(cellRect), CGRectGetMaxX(cellRect)- 8.f, CGRectGetMaxY(cellRect), 8.f); CGPathAddLineToPoint(lastRowPath, NULL, 8.f, CGRectGetMaxY(cellRect)); CGPathAddArcToPoint(lastRowPath, NULL, CGRectGetMinX(cellRect), CGRectGetMaxY(cellRect), CGRectGetMinX(cellRect), CGRectGetMaxY(cellRect) - 8.f, 8.f); CGPathCloseSubpath(lastRowPath); CAShapeLayer *newSharpLayer = [[CAShapeLayer alloc] init]; newSharpLayer.path = lastRowPath; newSharpLayer.fillColor = [[UIColor whiteColor] colorWithAlphaComponent:1.f].CGColor; CFRelease(lastRowPath); cell.contentView.layer.mask = newSharpLayer; } } } 保持网址的效果?

我正在使用OS X Yosemite和pdfjoin版本2.08。

1 个答案:

答案 0 :(得分:0)

查看适用于GNU + Linux,macOS和Windows的PDFtk。根据{{​​3}},只有PDFtk维护超链接,我可以在尝试使用pdfjam / pdfjoin时确认调查结果。