내부에 투명한 이미지가있는 XFDF Stamp Annotation을 Java로 생성하고 싶습니다. 이미지 저장 형식을 인식하는 데 심각한 문제가 있으며 입력 이미지를 해당 형식으로 변환하는 방법에 대해 알아야합니다.이미지로 XFDF 주석을 만드는 방법
은 지금까지 나는
- 이 우표 요소는 annots 요소의 자식이며, 고무 스탬프 주석에 해당 알고있다. 고무 도장 주석은 고무 도장이있는 페이지에 스탬프 처리 된 것처럼 보이는 텍스트 또는 그래픽을 표시합니다. 존재하는 경우 모양 하위 요소 (주석 사전의 AP 키)가 아이콘 속성 (고무 스탬프 주석 사전의 이름 키)보다 우선합니다. 내용 모델 (컨텐츠 서식있는 텍스트? & 내용은? & 모습? & 팝업?)
- 외관 요소 스탬프 요소의 자식이며, 주석 사전에 AP 키에 해당합니다. 값은 기본 64 인코딩 된 문자열입니다. 콘텐츠 모델 Base 64로 인코딩 된 문자열입니다. 특성 없음.
저는 이미지를 디코딩 할 때이 같은 신택스를 보게 있지만, 안타깝게도 I는 < 데이터 MODE = "에 존재하는 원시 데이터의 종류를 모를, 이미지를 포함하는 예를 XFDF 가지고 RAW " 인코딩 = " HEX " > 태그.
<DICT KEY="AP">
<STREAM KEY="N">
<ARRAY KEY="BBox">
<FIXED VAL="250"/>
<FIXED VAL="550"/>
<FIXED VAL="400"/>
<FIXED VAL="575"/>
</ARRAY>
<INT KEY="FormType" VAL="1"/>
<INT KEY="Length" VAL="35"/>
<DICT KEY="Resources">
<DICT KEY="XObject">
<STREAM KEY="Im1">
<INT KEY="BitsPerComponent" VAL="8"/>
<NAME KEY="ColorSpace" VAL="DeviceRGB"/>
<NAME KEY="Filter" VAL="FlateDecode"/>
<INT KEY="Height" VAL="150"/>
<INT KEY="Length" VAL="1907"/>
<STREAM KEY="SMask">
<INT KEY="BitsPerComponent" VAL="8"/>
<NAME KEY="ColorSpace" VAL="DeviceGray"/>
<NAME KEY="Filter" VAL="FlateDecode"/>
<INT KEY="Height" VAL="150"/>
<INT KEY="Length" VAL="5690"/>
<NAME KEY="Subtype" VAL="Image"/>
<NAME KEY="Type" VAL="XObject"/>
<INT KEY="Width" VAL="300"/>
<DATA MODE="RAW" ENCODING="HEX">
나는 PDFBox의 도움으로 PDF에서 사용자 정의 이미지와 고무 스탬프 주석을 만들고 관리해야하지만, 슬프게도 PDFBox는 그들이 단지 형태의 수출 지원, XFDF에 주석의 이런 종류의 수출을 지원하지 않는 것 (AcroForm). 유료 소프트웨어를 제외하고는 Java에서 다른 도구를 내보낼 수 있다는 것을 알지 못합니다.
예제 콘텐츠에서만 지원되는 형식입니까? 이것에 대한 문서를 가르쳐 주시겠습니까? – Javo
Acrobat DC를 사용하여 PNG 파일에서 사용자 정의 스탬프를 작성하여 만든 샘플을 기반으로 가정했습니다. XFDF 설명서는 https://partners.adobe.com/public/developer/en/xml/XFDF_Spec_3.0.pdf 아래 링크에 있습니다. – joelgeraci
Base64를 텍스트로 변환하고 16 진수를 텍스트로 변환하여 저장하려고했습니다. 그것은 jpg로 그것은 작동하지 않았다. 그러나 나는 잘못된 회심을 할 수 있음을 인정한다. 당신이 지적한 스펙은 형식에 대해별로 말하지 않습니다. – Javo