기존 PDF 파일에 주석 추가
기존 PDF 파일에 자유 텍스트 주석 추가 (facades)
PdfContentEditor 를 사용하면 기존 PDF 파일에 다양한 유형의 주석을 추가할 수 있습니다. 특정 주석을 추가하기 위해 해당 메서드를 사용할 수 있습니다. 예를 들어, 다음 코드 스니펫에서는 CreateFreeText 메서드를 사용하여 FreeText 유형의 주석을 추가했습니다.
모든 유형의 주석은 동일한 방식으로 PDF 파일에 추가할 수 있습니다. 먼저, PdfContentEditor 유형의 객체를 생성하고 BindPdf 메서드를 사용하여 입력 PDF 파일을 바인딩해야 합니다. 둘째, 주석 영역을 지정하기 위해 Rectangle 객체를 생성해야 합니다.
그 후, CreateFreeText 메서드를 호출하여 FreeText 주석을 추가하고, Save 메서드를 사용하여 업데이트된 PDF 파일을 저장할 수 있습니다.
다음 코드 스니펫은 PDF 파일에 자유 텍스트 주석을 추가하는 방법을 보여줍니다.
.NET Core 3.1
Copy
private static void AddFreeTextAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using ( var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" ))
{
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
var tfa = new Aspose . Pdf . Text . TextFragmentAbsorber ( "PDF" );
tfa . Visit ( document . Pages [ 1 ]);
var rect = new System . Drawing . Rectangle
{
X = ( int ) tfa . TextFragments [ 1 ]. Rectangle . LLX ,
Y = ( int ) tfa . TextFragments [ 1 ]. Rectangle . URY + 5 ,
Height = 18 ,
Width = 100
};
editor . CreateFreeText ( rect , "Free Text Demo" , 1 );
editor . Save ( dataDir + "AddFreeTextAnnotation_out.pdf" );
}
}
.NET 8
Copy
private static void AddFreeTextAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" );
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
var tfa = new Aspose . Pdf . Text . TextFragmentAbsorber ( "PDF" );
tfa . Visit ( document . Pages [ 1 ]);
var rect = new System . Drawing . Rectangle
{
X = ( int ) tfa . TextFragments [ 1 ]. Rectangle . LLX ,
Y = ( int ) tfa . TextFragments [ 1 ]. Rectangle . URY + 5 ,
Height = 18 ,
Width = 100
};
editor . CreateFreeText ( rect , "Free Text Demo" , 1 );
editor . Save ( dataDir + "AddFreeTextAnnotation_out.pdf" );
}
기존 PDF 파일에 텍스트 주석 추가 (facades)
이 예제에서도 PdfContentEditor 유형의 객체를 생성하고 BindPdf 메서드를 사용하여 입력 PDF 파일을 바인딩해야 합니다. 둘째, 주석 영역을 지정하기 위해 Rectangle 객체를 생성해야 합니다. 그 후, CreateFreeText 메서드를 호출하여 FreeText 주석을 추가하고, 주석의 제목과 주석이 위치한 페이지 번호를 생성할 수 있습니다.
.NET Core 3.1
Copy
private static void AddTextAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using ( var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" ))
{
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
var tfa = new Aspose . Pdf . Text . TextFragmentAbsorber ( "PDF" );
tfa . Visit ( document . Pages [ 1 ]);
var rect = new System . Drawing . Rectangle
{
X = ( int ) tfa . TextFragments [ 1 ]. Rectangle . LLX ,
Y = ( int ) tfa . TextFragments [ 1 ]. Rectangle . URY + 5 ,
Height = 18 ,
Width = 100
};
editor . CreateText ( rect , "Aspose User" , "PDF is a better format for modern documents" , false , "Key" , 1 );
editor . Save ( dataDir + "AddTextAnnotation_out.pdf" );
}
}
.NET 8
Copy
private static void AddTextAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" );
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
var tfa = new Aspose . Pdf . Text . TextFragmentAbsorber ( "PDF" );
tfa . Visit ( document . Pages [ 1 ]);
var rect = new System . Drawing . Rectangle
{
X = ( int ) tfa . TextFragments [ 1 ]. Rectangle . LLX ,
Y = ( int ) tfa . TextFragments [ 1 ]. Rectangle . URY + 5 ,
Height = 18 ,
Width = 100
};
editor . CreateText ( rect , "Aspose User" , "PDF is a better format for modern documents" , false , "Key" , 1 );
editor . Save ( dataDir + "AddTextAnnotation_out.pdf" );
}
기존 PDF 파일에 선 주석 추가 (facades)
우리는 또한 Rectangle, 선의 시작 및 끝 좌표, 페이지 번호, 두께, 스타일 및 주석 프레임의 색상, 선 대시 유형, 선의 시작 및 끝 유형을 지정합니다.
.NET Core 3.1
Copy
private static void AddLineAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using ( var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" ))
{
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
editor . CreateLine (
new System . Drawing . Rectangle ( 550 , 93 , 562 , 439 ),
"Test" ,
556 , 99 , 556 , 443 , 1 , 2 ,
System . Drawing . Color . Red ,
"dash" ,
new int [] { 1 , 0 , 3 },
new [] { "Open" , "Open" });
editor . Save ( dataDir + "AddLineAnnotation_out.pdf" );
}
}
.NET 8
Copy
private static void AddLineAnnotation ( )
{
var dataDir = RunExamples . GetDataDir_AsposePdf_WorkingDocuments ();
using var document = new Aspose . Pdf . Document ( dataDir + "input.pdf" );
var editor = new Aspose . Pdf . Facades . PdfContentEditor ( document );
editor . CreateLine (
new System . Drawing . Rectangle ( 550 , 93 , 562 , 439 ),
"Test" ,
556 , 99 , 556 , 443 , 1 , 2 ,
System . Drawing . Color . Red ,
"dash" ,
new int [] { 1 , 0 , 3 },
new [] { "Open" , "Open" });
editor . Save ( dataDir + "AddLineAnnotation_out.pdf" );
}