THotPDF.SetLoadedFreeTextText Method

로드된 FreeText annotation의 normal appearance를 내장 Unicode 폰트, 선택적 리치 텍스트, 원자적 graph 트랜잭션으로 교체합니다

선언

procedure SetLoadedFreeTextText(PageIndex, AnnotationIndex: Integer;
  const AText: UnicodeString; const Options: THPDFLoadedTextAppearanceOptions;
  const RichContent: AnsiString = ''; const DefaultStyle: AnsiString = '');

옵션

개별 필드를 바꾸기 전에 THPDFLoadedTextAppearanceOptions.Default로 레코드를 초기화하세요

필드동작
FontName, FontStyle, FontSize기본 폰트, 스타일, 포인트 크기이며 기본값은 Arial, regular, 12 포인트입니다
TextColor, Alignment, Paddingplain-text 색, left/center/right 정렬, 포인트 패딩이며 기본값은 black, left, 2 포인트입니다
Opacity, Rotation불투명도는 [0,1], 회전은 90도 배수입니다
OverflowPolicyTHPDFLoadedTextOverflowPolicy 값으로 ltopReject는 넘침을 거부하고, ltopClip은 잘라내며, ltopShrinkToFit은 더 작은 폰트로 재시도합니다
MinFontSize축소 하한이며 기본값은 4 포인트입니다
MaxTextUnits입력과 plain-text 한도이며 기본값은 1,048,576 UTF-16 유닛입니다. 리치 입력은 이 한도의 4배까지 허용됩니다

동작

AText는 plain Unicode 텍스트를 받고, 비어 있지 않은 UTF-8 RichContent가 주어지면 대신 HTML importer와 선택적 CSS DefaultStyle을 쓴 뒤 생성된 텍스트에서 /Contents를 도출합니다

생성된 appearance는 내장 폰트와 ToUnicode 매핑을 로드된 문서로 복사하므로 저장, 평탄화, 텍스트 추출에서도 Unicode 텍스트가 유지됩니다

이 메서드는 설정된 font fallback 체인, ShapingFeatures, Arabic·Syriac·N'Ko·Adlam·Hanifi Rohingya auto-shaping 스위치, GSUB script·언어 선택을 물려받습니다. shrink-to-fit 재시도는 호출자 설정을 바꾸지 않고 같은 설정으로 이뤄집니다

지원되는 background, solid/dashed border, 사각형 inset, 2·3점 callout 지오메트리는 유지하고, /AP, /Contents, /RC, /DS, /CA, /Q와 회전 메타데이터를 동기화합니다

잘못된 지오메트리, 미해결 plain-text glyph, cloudy border, 리소스 한도, 거부된 넘침은 예외를 던지고 갱신 전체를 롤백합니다. 이미 열려 있는 바깥 graph 트랜잭션은 그대로 유지됩니다

리치 텍스트는 지원되는 HTML/CSS subset을 따릅니다. 외부 리소스는 비활성화되고, 고정 CSS 폰트 크기 때문에 shrink-to-fit이 개별 run을 줄이지 못할 수 있습니다

appearance writer마다 서로 다른 shaping 폰트 선택을 최대 256개, 누적 raw 폰트 데이터를 최대 64 MiB까지 받습니다. 둘 중 하나라도 넘으면 갱신을 거부하고 원본 annotation을 보존합니다

관련 API