PDFium Delphi Component Docs

Hàm SelectPdfImageCodec

Unit: PDFium
Chọn phương án mã hóa lại nhỏ nhất đủ điều kiện cho một ảnh dựa trên các kích thước codec đã đo

Syntax

function SelectPdfImageCodec(const Candidate: TPdfImageCodecCandidate;
  AllowedCodecs: TPdfImageCodecs; MinimumSavingBytes: Int64 = 1): TPdfImageCodecDecision;

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec là một hàm trợ giúp quyết định thuần túy, so sánh các ước lượng EncodedBytes ghi trên ứng viên và trả về codec nào nên lưu trữ ảnh

Mỗi codec được cho phép trước tiên được kiểm tra tính đủ điều kiện: picJpeg đòi hỏi không có alpha, ảnh không nhị phân, 8 bit mỗi thành phần, 1, 3 hoặc 4 thành phần, và số màu duy nhất không rõ hoặc lớn hơn 256; picJpx đòi hỏi ảnh không nhị phân với ít nhất 8 bit mỗi thành phần và 1 đến 4 thành phần; picCcittGroup4 đòi hỏi ảnh nhị phân không có alpha, 1 bit mỗi thành phần, và một thành phần duy nhất; picFlate chấp nhận ít nhất 1 bit mỗi thành phần và ít nhất 1 thành phần

Trong số các codec đủ điều kiện, giá trị EncodedBytes dương nhỏ nhất thắng cuộc, và quyết định báo cáo OriginalBytes, SelectedBytes và SavedBytes

ReplaceOriginal chỉ là True khi người thắng cuộc không phải là picKeepOriginal và SavedBytes đạt tới MinimumSavingBytes; trong trường hợp ngược lại, quyết định được đặt lại thành picKeepOriginal với số byte tiết kiệm bằng không

Remarks

Example

Decision := SelectPdfImageCodec(Candidate, [picJpeg, picJpx, picFlate], 1024);
if Decision.ReplaceOriginal then
  ReEncode := Decision.Codec;

See Also

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo