Delphi에서 PDFium Component를 사용하여 PDF 글꼴 속성 읽기
Delphi에서 PDFium Component를 사용하여 PDF 내부의 글꼴을 검사하세요. 글리프의 글꼴군 이름, 기본 이름, 두께, 기울임꼴 각도 및 글꼴의 포함 여부를 읽어옵니다. PDF의 모든 표시되는 문자는 해당 문자를 그린 글꼴에 대한 참조를 전달하며, PDFium
losLab 소프트웨어 개발 블로그
Software Development Blog
Delphi에서 PDFium Component를 사용하여 PDF 내부의 글꼴을 검사하세요. 글리프의 글꼴군 이름, 기본 이름, 두께, 기울임꼴 각도 및 글꼴의 포함 여부를 읽어옵니다. PDF의 모든 표시되는 문자는 해당 문자를 그린 글꼴에 대한 참조를 전달하며, PDFium
PDF를 신뢰하기 전에 위험 표면을 열거하십시오. Delphi에서 감사를 위해 PDFium이 문서 JavaScript, 실행 작업 및 서명 권한을 어떻게 읽는지 알아보십시오. PDF는 단순한 종이가 아닙니다. 파일을 열 때 실행되는 스크립트, 외부 프로그램을 시작하는 링크, 웹 서버에
Delphi에서 PDFium Component를 사용해 작동하는 PDF 뷰어를 조립하세요: TPdf를 TPdfView에 연결하고 문서를 불러와 렌더링한 다음 페이징, 확대/축소, 맞춤 모드 탐색 기능을 추가합니다. Delphi의 PDF 뷰어는 두 개의 컴포넌트와 이들 사이의 연결로
PDFium 컴포넌트를 사용하여 스캔한 페이지 폴더를 하나의 PDF로 병합하는 유용한 델파이 레시피입니다: 문서를 만들고, 이미지별로 페이지를 추가하고, 크기를 조정하여 저장합니다. 한 청구 처리 팀은 30년 분량의 종이 파일을 자동 급지 스캐너를 통해 처리해야 했습니다
Delphi에서 PDFium Component를 사용하여 PDF 페이지를 JPEG로 래스터화합니다: DPI를 픽셀 크기로 변환하고, 각 페이지를 비트맵으로 렌더링한 다음, 선택한 품질로 TJPEGImage를 사용해 인코딩합니다. PDF 페이지를 JPEG로 렌더링하는 것은 사람들이 종종
델파이에서 PDFium 컴포넌트로 PDF를 처음부터 빌드하세요: CreateDocument, AddPage, AddText 및 CreatePath와 더불어 주의해야 할 좌표 및 폰트 임베딩 규칙. PDFium은 Chrome의 PDF 탭 뒤에 있는 렌더러인 뷰어 엔진으로 명성을 얻고
Delphi에서 PDFium을 사용해 형광펜 및 밑줄 주석 생성하기: QuadPoints 정렬 순서, FPDFAnnot_SetAttachmentPoints가 false를 리턴하는 원인과 Append를 통한 해결책 PDFium Component는 을 통해 형광펜(highlight),
Delphi에서 pdfium.dll 로드 실패 문제를 해결합니다: 32/64비트 ERROR_BAD_EXE_FORMAT 193 아키텍처 불일치 해결, 구버전 DLL 판별 및 스레드 안정성이 확보된 PDFium 컴포넌트 로드 방식 고객의 로컬 PC 환경에서 pdfium.dll이 정상적으로
PDFium 컴포넌트를 사용하여 Delphi에서 XFA 대화형 서식을 탐지하고 template, datasets 및 config 패킷을 순수 XML 데이터로 추출합니다 — 정적 패킷 추출 시 V8 엔진이 요구되지 않습니다 예 — PDFium은 XFA 서식을 완벽히 지원하지만, 여기에는
PDFium Component를 사용하여 Delphi에서 XFDF 양식 데이터 및 주석을 내보내고 가져옵니다: ISO 19444-1 라운드 트립, 18가지 주석 하위 유형 및 로캘 안전 숫자 처리 Delphi 및 Lazarus용 PDFium Component는 ISO 19444-1
델파이에서 PDFium 컴포넌트로 PDF 내장 이미지 추출: BitmapCount 읽기, 각 Bitmap[] 가져오기, 무음 열기 실패 처리 및 출력을 JPEG 또는 BMP로 저장. PDF는 이미지를 콘텐츠 스트림 내부에 일급 객체로 저장합니다. 페이지가 사진, 스캔 또는 다이어그램을
PDFium Component를 사용하여 Delphi에서 PDF 텍스트 추출하기: Character[]를 통한 원시 글리프 접근, ReadablePageContent를 통한 단락 구조 분석 및 Active 유효성 체크 적용 방법 PDF 텍스트 추출은 간단해 보이지만, 텍스트 레이어가
C 라이브러리를 Pascal로 래핑하면 날카로운 모서리가 숨겨집니다. cdecl 콜백부터 FPC Win64 포인터 너비 잘림까지 PDFium 바인딩의 실제 결함과 그 수정 사항을 확인해 보세요. C 라이브러리 기반의 Pascal 바인딩은 일반적인 Pascal 코드처럼 읽힙니다
Delphi 및 Lazarus용 PDFium 컴포넌트를 사용하여 PDF 서식을 판독합니다: SubFilter, ByteRange, CMS 구조를 정밀 분석하고 PAdES B-B부터 B-LTA 표준 규격 레벨을 식별합니다 서명이 날인된 PDF 문서를 전달받은 상황에서, 뷰어 프로그램
Delphi용 PDFium 컴포넌트를 사용하여 장기 보존 PAdES 서명을 작성합니다: B-T, B-LT, B-LTA 레벨 준수를 위한 RFC 3161 타임스탬프, DSS 검증 저장소 및 DocTimeStamp 탑재 서명에 사용된 인증서가 만료되거나 발급 기관(CA)의 키 갱신이
델파이에서 PDFium 컴포넌트로 PDF 파일 병합하기: ImportPages, 페이지 범위 문자열, 삽입 위치, 잘못된 파일에서의 무음 실패 및 양식 필드 동작. PDFium 컴포넌트는 단일 메서드인 를 통해 PDF 병합을 노출합니다. 패턴은 항상 동일합니다
여러 PDF 페이지를 한 장에 배치하거나, 페이지 위치를 재배열하거나, 일부 페이지를 추출합니다. 델파이에서 PDFium의 임포지션 및 페이지 이동 API와 이들이 반환하는 핸들을 확인해 보세요. 병합과 분할은 모든 사람이 가장 먼저 찾는 두 가지 페이지 작업이며, 많은 부분을
Delphi에서 서브스트링 키 조회가 PDF 사전 파싱을 손상시키는 이유: ISO 32000-1에 따른 전체 이름 토큰 매칭 및 악성 PDF 방지용 리소스 제한 PDF 이름 키는 접두사(prefixes)를 공유하므로 와 같은 부분 문자열(substring) 검색 방식은 PDF 사전을
Delphi PDF 뷰어를 화면 판독기와 함께 작동하도록 만들기: 태그 지정된 읽기 순서 추출, 단어 수준 TTS 강조 표시 및 태그가 없는 PDF에 대한 정직한 대체 기능. 시각 장애인 사용자가 멋진 새 Delphi 뷰어에서 분기별 보고서를 열고, NVDA를 켠 다음 페이지 바닥글,
Delphi에서 PDF 주석 검토 패널 빌드: 페이지별로 마크업을 인덱싱하고, 모양 스트림 거부를 처리하며, 잔상 없이 주석 색상을 변경하거나 삭제합니다. PDF 주석은 페이지에 그려진 마크가 아니라 페이지에 첨부된 딕셔너리(dictionary)입니다
오래 걸리는 PDF 렌더링은 UI 스레드에서 분리해야 합니다. Delphi에서 PDFium 바인딩이 취소 가능한 Future를 사용하여 백그라운드 스레드에서 어떻게 작동하는지 알아보세요. PDFium에서 페이지를 렌더링하는 작업은 동기식입니다. 라이브러리를 호출하면 전달한 비트맵으로
느린 페이지 렌더링으로 인해 UI가 멈추거나 끝까지 실행되어서는 안 됩니다. 델파이에서 IFSDK_PAUSE를 통해 PDFium의 점진적 렌더링을 어떻게 취소 가능하게 만드는지 확인하세요. 대부분의 PDF 페이지는 몇 밀리초 내에 래스터화(rasterise)되므로 여러분은 이를
PDFium Component에서 /V를 위젯 주석에서 읽으면 체크박스가 체크 안 됨으로 플래튼되는 이유는 ISO 32000-1에 따라 /V가 부모 필드 딕셔너리에 속하기 때문
Delphi와 FPC/Lazarus 간에 동일한 PDFium 코드를 처리할 때 발생하는 4가지 숨겨진 편차 분석: 레코드 임시 변수 수명, 배열 범위 검사, E2010 TBytes 캐스팅 오류 및 AnsiString 바이트 손실 현상 동일한 오브젝트 파스칼(Object Pascal)
PDFium 컴포넌트의 Character[] 속성이 U+FFFF를 넘는 코드 포인트를 16비트 WideChar에 담으려다 어떻게 깨지는지, 그리고 Text 속성으로 이모지와 CJK 확장 B 문자를 올바르게 추출하는 방법을 다룬다
PDFiumPas의 여섯 개 적합성 마커 주입기가 기존 /Encrypt 항목을 감지하면 왜 소스를 그대로 통과시키고, PAdES 서명기는 왜 아예 예외를 일으키는지, 그리고 적합성 스탬프·서명·암호화의 올바른 순서를 다룬다
PDFiumPas가 TPdf.SaveAs의 PdfVersion 매개변수를 통해 1.3부터 1.7까지 정확한 PDF 버전으로 저장하면서, 저장 후 적합성 검사로 활성 콘텐츠가 실제로 그 버전에서 합법적인지 확인하는 방법을 다룬다
PDFium Component에서 WaitForIdle과 padSynchronize 응답이 델파이 메인 스레드를 데드락시키는 방식, 큐 용량, 종료 순서, TPdf 소유권 한계
Delphi나 FPC 함수가 레코드를 반환할 때 FillChar로 Result를 지우면 왜 참조 카운트된 문자열과 동적 배열을 두 번째 호출부터 유출시키는지, 그리고 PDFiumPas가 v1.56.4에서 이를 어떻게 고쳤는지 다룬다
Acrobat에서 채워진 PDF 양식이 비어 보이는 이유와 해결 방법: Delphi 뷰어에서의 FormFill 설정, 키보드 필드 이동 및 GenerateFormAppearances. 코드에서 작성한 PDF 양식에서 Tab을 누르면 커서가 있어야 할 곳에서 두 필드 떨어진 곳에
PDFium 컴포넌트 뷰어에서 Free Pascal의 for 루프가 루프 진입 시 상한을 한 번만 고정하는 탓에 인쇄 취소 버튼이 왜 작동하지 않았는지, 그리고 Break 체인과 PrintSucceeded 플래그로 어떻게 고쳤는지 다룬다
Delphi PDF 뷰어를 Lazarus 및 Free Pascal로 포팅하기: 문자열 인코딩 문제, 런타임 폼 생성, PDFium 바이너리 로드, Windows 외 환경에서의 TTS 지원. Delphi와 Lazarus는 동일한 Object Pascal을 컴파일하며, 바로 이러한
Delphi PDF 뷰어에 다크 모드 및 저시력자용 읽기 모드를 추가합니다: 렌더링 후 반전, 두 가지 종류의 그레이스케일, 명확하게 보이는 오버레이 색상. 저시력 독자는 기본 대비에서 흰색 배경의 검은색 텍스트를 알아볼 수 없으므로 다크 모드를 요구합니다
PDF 행 벡터 관례가 델파이에서 Multiply를 append로 PreMultiply를 prepend로 만드는 이유, PreTranslate가 선형 부분을 필요로 하는 이유, 피벗 헬퍼가 합성되는 방식
PDFiumPas가 v2.16.0에서 ISO 32000-1 Predictor 역변환을 어떻게 추가해, FlateDecode만으로는 놓치는 PNG·TIFF 방식으로 차분 처리된 객체 스트림 바이트를 올바르게 재구성하게 되었는지 다룬다
PDFium Component를 사용하여 Delphi에서 수신 PDF 분류: 정보 사전 및 XMP 메타데이터 확인, 암호화, JavaScript 및 XFA 발견, 위험한 파일을 조기에 라우팅 PDF 수집 검토 워크벤치는 하위 시스템에서 파일을 다루기 전에 모든 파일을 확인하는 단일
Delphi의 PDFium Component로 veraPDF를 통과하는 PDF/A 아카이브를 만드는 방법을 설명한다. SaveAsPdfA, XMP와 ICC OutputIntent 주입, a/b/u 적합성, 실제 함정을 다룬다. 모든 파일을 PDF/A-1b라고 표시하는 변환기를
PDFium Component로 Delphi에서 PDF/A 사전검사기를 구축합니다. 29개 검증 이슈를 토큰 스캔으로 점검하고, 파트별 게이트와 object stream 처리까지 수행하며, 전체 콘텐츠 파싱은 하지 않습니다. 아카이브 수집 게이트가 데스크 위의 어떤 뷰어에서도 멀쩡히
PDFium VCL로 live PDF tag tree를 순회해 byte-level 스캔이 놓치는 PDF/UA 콘텐츠 오류를 잡습니다. Figure Alt, Formula 텍스트, Note ID 중복을 다룹니다. 사전검사 결과는 파일이 PDF/UA clean 하다고 말합니다
PDFium VCL로 Delphi에서 PDF/VT-1 가변 데이터 인쇄 파일을 생성하고 검증합니다. DPart 트리, 필수 PDF/X-4 짝맞춤, ISO 16612-2 함정을 다룹니다. 트랜잭션 인쇄소가 8만 페이지 명세서 작업을 한 줄로 반려합니다
PDFium 컴포넌트를 사용해 Delphi에서 PDF/A 및 PDF/UA 프리플라이트 자동화: 일괄 루프, 종료 코드, JSON 및 HTML 보고서, 빈 결과 목록이 통과를 의미하지 않는 이유 일괄(batch) 프리플라이트 도구는 창이 없는 콘솔 프로그램으로, PDF가 있는 폴더를
PDFium을 사용한 Delphi PDF 뷰어에서 확대/축소 및 스크롤을 부드럽게 유지하세요: 올바른 캐시 키, 비트맵 소유권, 점진적 렌더링 및 고해상도 메모리 예산 단순한 PDF 뷰어에서 확대/축소 버튼을 길게 누른 채 CPU 그래프를 살펴보세요
PDFiumPas v2.26.0이 TPdf와 TPdfView에 걸쳐 렌더 락을 빠뜨렸던 여섯 개의 메서드를 어떻게 발견하고 고쳤는지, 그리고 이 경쟁 조건이 왜 재현하기 그토록 어려운지 다룬다
PDFium Component로 Delphi PDF 미리보기 창을 강화하세요: 로드 시 JavaScript 비활성화, 링크 클릭 가로채기, 첨부 파일 필터링 및 암호화 권한 읽기 자체 애플리케이션 내에서 신뢰할 수 없는 PDF를 미리 보는 것은 실행과 관련된 결정이며, 중요한 부분은
PDF 텍스트를 배치하려면 그리기 전에 문자열 너비가 필요합니다. 델파이에서 자동 줄 바꿈을 위해 PDFium 바인딩이 페이지를 건드리지 않고 텍스트를 어떻게 측정하는지 확인하세요. PDF 페이지에 텍스트를 배치하는 호출은 간단합니다. 에 문자열, 폰트, 크기 및 위치를 지정하면
PDFiumPas의 TPdf가 캐시된 FPDF_TEXTPAGE 구조체를 어떻게 관리하는지, 그리고 편집 직후 텍스트 조회가 왜 낡은 결과를 돌려주는지, 언제 자동으로 갱신되고 언제 그렇지 않은지를 다룬다
PDFium 컴포넌트의 FPDF_RenderPageBitmap이 페이지의 /Rotate 값에 회전을 추가로 얹는 방식 때문에, 저장된 회전값을 그대로 다시 넘기면 페이지가 두 번 회전하는 문제와 그로 인한 썸네일 fit-zoom 종횡비 오류를 다룬다
PDFium Component가 델파이에서 폼 필드 인덱스와 주석 인덱스를 분리하는 방법: 위젯 서브타입 필터링, 네이티브 경계에서의 매핑, 헤드리스 폼 포커스 수정
PDFium 단어 상자를 사용하여 Delphi에서 텍스트 음성 변환(TTS)을 페이지 내 단어 하이라이트와 동기화하는 방법: TrackReadingWordAt, 렌더링 순서, 자동 스크롤 및 유니코드 함정 소리 내어 읽기 기능은 음성 외에도 눈에 띄는 한 가지 역할을 합니다
PDFium 컴포넌트의 SetFocusedFormFieldText가 AcroForm 필드는 /V 항목에 커밋하면서 XFA 필드는 왜 datasets 패킷에 결코 도달하지 못하는지, 그리고 편집값을 저장에서 살아남게 하는 자체 XML 패치 방법을 다룬다
델파이에서 PDFium 컴포넌트를 사용하여 PDF를 인쇄하세요: RenderPage와 rePrinting으로 페이지를 렌더링하고, StretchDIBits를 통해 비트맵을 TPrinter로 전송하며, 용지에 맞추고, 회전을 처리합니다. PDF 좌표는 포인트 단위이고, 프린터 좌표는
워터마크나 로고를 한 번 그리고 모든 페이지에 배치하세요. 델파이에서 PDFium의 Form XObject가 어떻게 재사용 가능한 페이지 스탬프를 만드는지와 핸들 수명 규칙을 알아보세요. 문서의 모든 페이지에 워터마크나 로고를 스탬핑하는 것은 결과물을 파일 크기 검사기에서 열어보기
PDFium Component를 사용하여 Delphi에서 AcroForm JavaScript 실행하기: 필드 계산 오작동 원인, V8 DLL 요구 사양 및 위험한 PDF 작업을 감시하는 호스트 이벤트 Acrobat에서는 합계 금액이 자동으로 재계산되는데 자체 개발한 Delphi
Add a PAdES B-B digital signature to a PDF in Delphi with the PDFium Component: self-built SHA-256, CMS, and a Windows CNG backend for byte-level signing
델파이에서 PDFium 컴포넌트를 사용하여 페이지, 범위 또는 책갈피별로 PDF를 분할하는 방법: TPdf.ImportPages, CreateDocument, SaveAs 결과 확인 및 Active 플래그 재설정. PDFium Component는 PDF 분할을 위한 단일 메서드인 를
수 기가바이트의 PDF를 통째로 로드할 필요가 없습니다. TStream 어댑터가 PDFium의 온디맨드 FPDF_FILEACCESS 콜백에 어떻게 데이터를 제공하는지, 그리고 왜 델파이에서 4 GiB 제한에 대한 방어가 필요한지 알아보세요. 스캔된 아카이브는 단일 PDF에서 수
델파이에서 PDFium 컴포넌트를 사용하여 두 개 또는 세 개의 독립 패널, TPdfView.Zoom을 통한 개별 확대/축소, 동기화된 페이지 탐색 기능을 갖춘 병렬 PDF 뷰어를 구축하세요. 한 번에 두 개의 문서를 엽니다. 동일한 페이지 번호를 가리키며 각각 스크롤 가능한 고유
최신 PDF는 압축된 객체와 xref 스트림 안에 구조를 숨깁니다. 델파이 유효성 검사기가 어떻게 ObjStm을 확장하고 PDFium으로 xref-stream 트레일러를 읽는지 알아보세요. 작은 유효성 검사기를 작성합니다. PDF를 열고, 끝으로 이동하여 를 찾고, 오프셋을 읽은 다음
Delphi에서 인쇄용 PDF/X 파일 검증하기: PDFium Component의 ValidatePdfX를 통해 TrimBox, Trapped, OPI, LZW 및 폰트 임베딩에 대한 ISO 15930 표준 검사 수행하기 Delphi용 PDFium Component는 함수를 통해 즉시
PDF 검증기가 PAdES 서명을 거부하는 원인 분석: ByteRange 필드가 0인 경우, D: 날짜 접두사 누락 및 증분 업데이트 후 /Encrypt 손실 분석(PDFium Component 기준) Delphi용 PDFium Component에서 분석한 결과, 검증기가 PAdES
Delphi에서 PDFium Component로 PDF 첨부 파일을 다루는 방법: AttachmentCount, Attachment, CreateAttachment, DeleteAttachment 및 경로 정규화와 인플레이스 저장 기법 PDF 첨부 파일은 문서의 내장 파일 트리 구조에