|
Buku Resep Preflight
Buku resep ini mengelompokkan API dan demo preflight ke dalam resep
yang berorientasi tugas. Gunakan referensi API saat Anda memerlukan
signature yang tepat; gunakan halaman ini saat Anda memerlukan jalur
kerja untuk aplikasi, build script, atau job CI
Pilih format output
var
PDF: THotPDF;
begin
PDF := THotPDF.Create(nil);
try
PDF.SavePreflightReport('Input.pdf', 'Input.preflight.txt');
PDF.SavePreflightReport('Input.pdf', 'Input.preflight.json', '', pfJSON);
PDF.SavePreflightReport('Input.pdf', 'Input.preflight.html', '', pfHTML);
PDF.SavePreflightReport('Input.pdf', 'Input.preflight.csv', '', pfCSV);
finally
PDF.Free;
end;
end;
Output teks stabil secara byte dan ramah diff. JSON cocok untuk
ingest pipeline. HTML mandiri dan dapat dibuka langsung atau disimpan
sebagai artefak CI. CSV memakai kolom stabil untuk alur kerja spreadsheet
dan laporan batch
Validasi dokumen PDF/VT
var
PDF: THotPDF;
Report: AnsiString;
begin
PDF := THotPDF.Create(nil);
try
if not PDF.ValidatePDFVT('Input.pdf', Report) then
WriteLn(string(Report));
finally
PDF.Free;
end;
end;
Laporan PDF/VT berfokus pada identifikasi ISO 16612-2 dan struktur
document-part: XMP GTS_PDFVTVersion dalam bentuk teks
elemen atau atribut RDF, pencocokan tanggal modifikasi, penanda dasar
PDF/X, output intent, DPartRoot,
DPartRootNode, NodeNameList, dan cakupan
DPart tingkat halaman
Terapkan profil
var
PDF: THotPDF;
Report: AnsiString;
begin
PDF := THotPDF.Create(nil);
try
Report := PDF.CreatePreflightReportWithProfile(
'Input.pdf', '', 'project-preflight.ini', pfJSON);
finally
PDF.Free;
end;
end;
Profil menyembunyikan pemeriksaan bernama, peringatan, atau semua
hint. Gunakan ValidatePreflightProfile sebelum menerapkan
profil buatan pengguna ketika gagal tertutup lebih penting daripada
diam-diam mengabaikan nama yang sudah usang
Buat profil yang dapat dipakai ulang dari preset
var
PDF: THotPDF;
Profile: THPDFPreflightProfile;
begin
PDF := THotPDF.Create(nil);
try
Profile := PDF.GetBuiltInPreflightProfile('compact');
Profile.DisableWarnings := 'OpenAction,JavaScript,URIAction';
PDF.SavePreflightProfile(Profile, 'compact-no-actions.ini');
finally
PDF.Free;
end;
end;
Gunakan MergePreflightProfiles untuk menggabungkan preset
dengan nama khusus proyek. Gunakan DiffPreflightProfiles
untuk meninjau drift profil sebelum memperbarui file konfigurasi bersama
Arsipkan laporan bersama PDF
PDF.EmbedPreflightReportInPDF('Input.pdf', 'Input-with-report.pdf');
PDF.EmbedPreflightReportAsXMP('Input.pdf', 'Input-with-xmp-report.pdf');
Jalur penyematan teks menambahkan blok komentar yang bisa dibaca
setelah penanda EOF terakhir. Jalur XMP menambahkan payload berbentuk
RDF untuk alur kerja arsip yang memindai paket metadata
Validasi laporan tertanam
var
OriginalReport: AnsiString;
CurrentReport: AnsiString;
begin
if not PDF.LoadAndValidatePreflightReport(
'Input-with-report.pdf', OriginalReport, CurrentReport) then
WriteLn(string(PDF.ComparePreflightReports(OriginalReport, CurrentReport)));
end;
Jalur validasi membandingkan fingerprint tertanam dengan run preflight
baru atas byte sumber. Helper diff berbasis baris dan disetel untuk
laporan preflight HotPDF
Jalankan repair pass konservatif
var
RepairsApplied: AnsiString;
begin
if PDF.RepairPDFFromPreflightReport(
'Broken.pdf', 'Broken-repaired.pdf', RepairsApplied) then
WriteLn(string(RepairsApplied));
end;
Helper repair sengaja tetap sempit. Ia menangani byte sisa setelah
penanda EOF terakhir dan penanda EOF yang hilang, tetapi tidak membangun
ulang tabel cross-reference atau menulis ulang stream
Agregasikan banyak laporan
Reports[0] := PDF.CreatePreflightReport('A.pdf');
Reports[1] := PDF.CreatePreflightReport('B.pdf');
Summary := PDF.AggregatePreflightReports(Reports);
Output agregat menampilkan satu baris status per PDF dan total untuk
laporan yang diproses, kegagalan, dan peringatan. Ini berguna ketika
pipeline memerlukan satu ringkasan meskipun laporan detail disimpan per
file input
Gunakan alat command-line
HotPDFPreflight Input.pdf -f json -o reports
HotPDFPreflight Input.pdf --pdfvt -o reports
HotPDFPreflight C:\Archive -r --preset compact -f text -o reports --aggregate reports\Aggregate.txt
HotPDFPreflight C:\Archive -r --profile project-preflight.ini -f html -o reports
CLI meniru alur kerja library: satu file atau input direktori
rekursif, output teks / JSON / HTML, password opsional, profil opsional,
preset bawaan, progress verbos, dan ringkasan agregat
Buat dashboard statis
PreflightDashboard C:\Archive C:\Archive\preflight-dashboard
Demo dashboard menulis index.html plus laporan HTML per
file. Tidak diperlukan web server, jadi output dapat dipublikasikan
sebagai artefak statis
Adaptasi ke konsumen JSON gaya veraPDF
Report := PDF.CreatePreflightReport('Input.pdf');
JSON := PDF.ConvertPreflightReportToVeraPDFStyle(Report);
Adaptor ini mempertahankan semantik HotPDF sambil membentuk ulang
kegagalan menjadi struktur hasil validasi yang familier untuk tooling
yang sudah mengonsumsi JSON mirip veraPDF
Topik terkait
|