Teknisk artikel

Lägg till klickbara hyperlänkar i PDF-filer med HotPDF

· PDF-programvara

Det här HotPDF-exemplet visar hur klickbara hyperlänkar placeras i ett genererat PDF-dokument. Hyperlänkar är en liten funktion, men de spelar roll i fakturor, rapporter, produktblad, dokumentationsexporter och alla PDF-filer som ska koppla läsaren tillbaka till en webbplats, ordersida, supportformulär eller onlinehandbok.

Den viktiga idén är att synlig text och klickbart mål är separata saker. En PDF kan visa en användarvänlig etikett medan annoteringen pekar på en fullständig URL. I en riktig applikation bör de två delarna hållas synkroniserade så att användare ser vart länken leder.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
unit Main;
 
interface
 
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, StdCtrls, Forms, Dialogs, HPDFDoc;
 
type
  TForm1 = class(TForm)
    HotPDF: THotPDF;
    HelloWorldButton: TButton;
    edtWeb: TEdit;
    edtProduct: TEdit;
    edtOrder: TEdit;
    edtContact: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    procedure HelloWorldButtonClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.HelloWorldButtonClick(Sender: TObject);
begin
    HotPDF.BeginDoc;
    HotPDF.CurrentPage.SetFont( 'Microsoft Sans Serif', [], 13 );
 
    HotPDF.CurrentPage.TextOut(20,30,0,'Clickable links:');
    HotPDF.CurrentPage.PrintHyperlink(20, 60, 'Company site: ' + edtWeb.Text, edtWeb.Text);
    HotPDF.CurrentPage.PrintHyperlink(20, 80, 'Product page: ' + edtProduct.Text, edtProduct.Text);
    HotPDF.CurrentPage.SetRGBHyperlinkColor(clRed);
    HotPDF.CurrentPage.PrintHyperlink(20, 100, 'Purchase link: ' + edtOrder.Text, edtOrder.Text);
    HotPDF.CurrentPage.SetRGBHyperlinkColor(clBlue);
    HotPDF.CurrentPage.PrintHyperlink(20, 120, 'Contact form: ' + edtContact.Text, edtContact.Text);
 
    HotPDF.EndDoc;
end;
 
end.

Var detta mönster passar

Använd PDF-hyperlänkar för referenser som ska fortsätta vara aktiva efter att dokumentet skickats via e-post, arkiverats eller hämtats från en kundportal. Vanliga mål är produktsidor, onlinehandböcker, release notes, issue trackers, fakturor, licensuppslagssidor och slutpunkter för dokumentverifiering.

Placering och styling

PDF-länkar är annoteringar som placeras över ett sidområde. Om du ändrar font, textposition, skalning eller sidans koordinatsystem, verifiera att den klickbara rektangeln fortfarande matchar texten användaren ser. En länk som visuellt flyttas några pixlar kan kännas trasig även när URL:en är korrekt.

Färg är också en del av användarupplevelsen. Blå understruken text är fortfarande den tydligaste konventionen för en webblänk, men genererade rapporter behöver ibland en diskretare stil. Om du använder en egen färg, håll den omgivande texten tillräckligt tydlig så att läsaren förstår att den är klickbar.

Valideringschecklista

  • Använd fullständiga HTTPS-URL:er för offentliga dokument.
  • Validera URL:er från användare innan de skrivs in i en PDF.
  • Testa länkar i mer än en PDF-viewer eftersom annoteringshantering kan skilja sig mellan läsare.
  • Kontrollera det klickbara området efter ändringar i sidstorlek, marginaler, fonter eller skalning.
  • Dölj inte viktiga workflow-åtgärder enbart bakom länktext; ge omgivande kontext i PDF-body.

SEO- och dokumentdistributionsnotering

När PDF-filer publiceras online hjälper tydliga länketiketter både användare och sökmotorer att förstå relationen mellan dokumentet och den länkade resursen. Föredra beskrivande text som produktdokumentation eller kundsupportportal i stället för generiska etiketter som klicka här.